Skip to content

Commit 7c6f642

Browse files
committed
WIP: run mlkem_tests on Windows
1 parent d811b09 commit 7c6f642

File tree

4 files changed

+68
-5
lines changed

4 files changed

+68
-5
lines changed

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ tests/freenull*
117117
tests/gost2814789t*
118118
tests/key_schedule*
119119
tests/lhash_test*
120-
tests/mlkem*
120+
#tests/mlkem*
121121
tests/mont*
122122
tests/parse*
123123
tests/policy*

tests/CMakeLists.txt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -566,11 +566,12 @@ endif()
566566
add_executable(mlkem_tests mlkem_tests.c parse_test_file.c)
567567
target_link_libraries(mlkem_tests ${OPENSSL_TEST_LIBS})
568568
prepare_emscripten_test_target(mlkem_tests)
569-
if(NOT WIN32)
569+
if(NOT MSVC)
570570
add_test(NAME mlkem_tests COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/mlkem_tests.sh)
571571
set_tests_properties(mlkem_tests PROPERTIES ENVIRONMENT "srcdir=${TEST_SOURCE_DIR}")
572+
else()
573+
add_test(NAME mlkem_tests COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/mlkem_tests.bat $<TARGET_FILE:mlkem_tests>)
572574
endif()
573-
# XXX - add tests for Windows
574575

575576
# mlkem_iteration_tests
576577
add_executable(mlkem_iteration_tests mlkem_iteration_tests.c mlkem_tests_util.c)

tests/Makefile.am

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -578,7 +578,7 @@ noinst_HEADERS += parse_test_file.h
578578
TESTS += mlkem_tests.sh
579579
check_PROGRAMS += mlkem_tests
580580
mlkem_tests_SOURCES = mlkem_tests.c parse_test_file.c
581-
EXTRA_DIST += mlkem_tests.sh
581+
EXTRA_DIST += mlkem_tests.sh mlkem_tests.bat
582582
EXTRA_DIST += mlkem768_decap_tests.txt
583583
EXTRA_DIST += mlkem768_encap_tests.txt
584584
EXTRA_DIST += mlkem768_keygen_tests.txt
@@ -589,7 +589,6 @@ EXTRA_DIST += mlkem1024_encap_tests.txt
589589
EXTRA_DIST += mlkem1024_keygen_tests.txt
590590
EXTRA_DIST += mlkem1024_nist_decap_tests.txt
591591
EXTRA_DIST += mlkem1024_nist_keygen_tests.txt
592-
# XXX - add tests for Windows
593592

594593
# mlkem_iteration_tests
595594
TESTS += mlkem_iteration_tests

tests/mlkem_tests.bat

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
@echo off
2+
setlocal enabledelayedexpansion
3+
4+
:: Copyright (c) 2025 Theo Beuhler
5+
::
6+
:: Permission to use, copy, modify, and distribute this software for any
7+
:: purpose with or without fee is hereby granted, provided that the above
8+
:: copyright notice and this permission notice appear in all copies.
9+
::
10+
:: THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11+
:: WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12+
:: MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13+
:: ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14+
:: WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15+
:: ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16+
:: OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17+
18+
set mlkem_tests_bin=%1
19+
set mlkem_tests_bin=%mlkem_tests_bin:/=\%
20+
if not exist %mlkem_tests_bin% exit /b 1
21+
22+
%mlkem_tests_bin% mlkem768_decap_tests %srcdir%\mlkem768_decap_tests.txt
23+
if !errorlevel! neq 0 (
24+
exit /b 1
25+
)
26+
%mlkem_tests_bin% mlkem768_encap_tests %srcdir%\mlkem768_encap_tests.txt
27+
if !errorlevel! neq 0 (
28+
exit /b 1
29+
)
30+
%mlkem_tests_bin% mlkem768_keygen_tests %srcdir%\mlkem768_keygen_tests.txt
31+
if !errorlevel! neq 0 (
32+
exit /b 1
33+
)
34+
%mlkem_tests_bin% mlkem768_nist_decap_tests %srcdir%\mlkem768_nist_decap_tests.txt
35+
if !errorlevel! neq 0 (
36+
exit /b 1
37+
)
38+
%mlkem_tests_bin% mlkem768_nist_keygen_tests %srcdir%\mlkem768_nist_keygen_tests.txt
39+
if !errorlevel! neq 0 (
40+
exit /b 1
41+
)
42+
%mlkem_tests_bin% mlkem1024_decap_tests %srcdir%\mlkem1024_decap_tests.txt
43+
if !errorlevel! neq 0 (
44+
exit /b 1
45+
)
46+
%mlkem_tests_bin% mlkem1024_encap_tests %srcdir%\mlkem1024_encap_tests.txt
47+
if !errorlevel! neq 0 (
48+
exit /b 1
49+
)
50+
%mlkem_tests_bin% mlkem1024_keygen_tests %srcdir%\mlkem1024_keygen_tests.txt
51+
if !errorlevel! neq 0 (
52+
exit /b 1
53+
)
54+
%mlkem_tests_bin% mlkem1024_nist_decap_tests %srcdir%\mlkem1024_nist_decap_tests.txt
55+
if !errorlevel! neq 0 (
56+
exit /b 1
57+
)
58+
%mlkem_tests_bin% mlkem1024_nist_keygen_tests %srcdir%\mlkem1024_nist_keygen_tests.txt
59+
if !errorlevel! neq 0 (
60+
exit /b 1
61+
)
62+
63+
endlocal

0 commit comments

Comments
 (0)