Skip to content

Commit

Permalink
Land #1127 - link MLKEM tests to build
Browse files Browse the repository at this point in the history
  • Loading branch information
botovq committed Dec 17, 2024
2 parents e8658eb + a6cc8cc commit 7af8536
Show file tree
Hide file tree
Showing 15 changed files with 283 additions and 0 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,9 @@ tests/freenull*
tests/gost2814789t*
tests/key_schedule*
tests/lhash_test*
tests/mlkem*.c
tests/mlkem*.h
tests/mlkem*.txt
tests/mont*
tests/policy*
tests/rfc3779*
Expand Down
68 changes: 68 additions & 0 deletions tests/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@ include_directories(
../crypto/bn
../crypto/curve25519
../crypto/evp
../crypto/mlkem
../crypto/modes
../crypto/sha
../crypto/x509
../ssl
../apps/openssl
Expand Down Expand Up @@ -534,6 +536,72 @@ add_executable(md_test md_test.c)
target_link_libraries(md_test ${OPENSSL_TEST_LIBS})
add_platform_test(md_test md_test)

# mlkem1024_decap_tests
add_executable(mlkem1024_decap_tests mlkem1024_decap_tests.c mlkem_tests_util.c)
target_link_libraries(mlkem1024_decap_tests ${OPENSSL_TEST_LIBS})
prepare_emscripten_test_target(mlkem1024_decap_tests)
add_platform_test(mlkem1024_decap_tests mlkem1024_decap_tests ${CMAKE_CURRENT_SOURCE_DIR}/mlkem1024_decap_tests.txt)

# mlkem1024_encap_tests
add_executable(mlkem1024_encap_tests mlkem1024_encap_tests.c mlkem_tests_util.c)
target_link_libraries(mlkem1024_encap_tests ${OPENSSL_TEST_LIBS})
prepare_emscripten_test_target(mlkem1024_encap_tests)
add_platform_test(mlkem1024_encap_tests mlkem1024_encap_tests ${CMAKE_CURRENT_SOURCE_DIR}/mlkem1024_encap_tests.txt)

# mlkem1024_keygen_tests
add_executable(mlkem1024_keygen_tests mlkem1024_keygen_tests.c mlkem_tests_util.c)
target_link_libraries(mlkem1024_keygen_tests ${OPENSSL_TEST_LIBS})
prepare_emscripten_test_target(mlkem1024_keygen_tests)
add_platform_test(mlkem1024_keygen_tests mlkem1024_keygen_tests ${CMAKE_CURRENT_SOURCE_DIR}/mlkem1024_keygen_tests.txt)

# mlkem1024_nist_decap_tests
add_executable(mlkem1024_nist_decap_tests mlkem1024_nist_decap_tests.c mlkem_tests_util.c)
target_link_libraries(mlkem1024_nist_decap_tests ${OPENSSL_TEST_LIBS})
prepare_emscripten_test_target(mlkem1024_nist_decap_tests)
add_platform_test(mlkem1024_nist_decap_tests mlkem1024_nist_decap_tests ${CMAKE_CURRENT_SOURCE_DIR}/mlkem1024_nist_decap_tests.txt)

# mlkem1024_nist_keygen_tests
add_executable(mlkem1024_nist_keygen_tests mlkem1024_nist_keygen_tests.c mlkem_tests_util.c)
target_link_libraries(mlkem1024_nist_keygen_tests ${OPENSSL_TEST_LIBS})
prepare_emscripten_test_target(mlkem1024_nist_keygen_tests)
add_platform_test(mlkem1024_nist_keygen_tests mlkem1024_nist_keygen_tests ${CMAKE_CURRENT_SOURCE_DIR}/mlkem1024_nist_keygen_tests.txt)

# mlkem768_decap_tests
add_executable(mlkem768_decap_tests mlkem768_decap_tests.c mlkem_tests_util.c)
target_link_libraries(mlkem768_decap_tests ${OPENSSL_TEST_LIBS})
prepare_emscripten_test_target(mlkem768_decap_tests)
add_platform_test(mlkem768_decap_tests mlkem768_decap_tests ${CMAKE_CURRENT_SOURCE_DIR}/mlkem768_decap_tests.txt)

# mlkem768_encap_tests
add_executable(mlkem768_encap_tests mlkem768_encap_tests.c mlkem_tests_util.c)
target_link_libraries(mlkem768_encap_tests ${OPENSSL_TEST_LIBS})
prepare_emscripten_test_target(mlkem768_encap_tests)
add_platform_test(mlkem768_encap_tests mlkem768_encap_tests ${CMAKE_CURRENT_SOURCE_DIR}/mlkem768_encap_tests.txt)

# mlkem768_iteration_test
add_executable(mlkem768_iteration_test mlkem768_iteration_test.c mlkem_tests_util.c)
target_link_libraries(mlkem768_iteration_test ${OPENSSL_TEST_LIBS})
prepare_emscripten_test_target(mlkem768_iteration_test)
add_platform_test(mlkem768_iteration_test mlkem768_iteration_test)

# mlkem768_keygen_tests
add_executable(mlkem768_keygen_tests mlkem768_keygen_tests.c mlkem_tests_util.c)
target_link_libraries(mlkem768_keygen_tests ${OPENSSL_TEST_LIBS})
prepare_emscripten_test_target(mlkem768_keygen_tests)
add_platform_test(mlkem768_keygen_tests mlkem768_keygen_tests ${CMAKE_CURRENT_SOURCE_DIR}/mlkem768_keygen_tests.txt)

# mlkem768_nist_decap_tests
add_executable(mlkem768_nist_decap_tests mlkem768_nist_decap_tests.c mlkem_tests_util.c)
target_link_libraries(mlkem768_nist_decap_tests ${OPENSSL_TEST_LIBS})
prepare_emscripten_test_target(mlkem768_nist_decap_tests)
add_platform_test(mlkem768_nist_decap_tests mlkem768_nist_decap_tests ${CMAKE_CURRENT_SOURCE_DIR}/mlkem768_nist_decap_tests.txt)

# mlkem768_nist_keygen_tests
add_executable(mlkem768_nist_keygen_tests mlkem768_nist_keygen_tests.c mlkem_tests_util.c)
target_link_libraries(mlkem768_nist_keygen_tests ${OPENSSL_TEST_LIBS})
prepare_emscripten_test_target(mlkem768_nist_keygen_tests)
add_platform_test(mlkem768_nist_keygen_tests mlkem768_nist_keygen_tests ${CMAKE_CURRENT_SOURCE_DIR}/mlkem768_nist_keygen_tests.txt)

# objectstest
add_executable(objectstest objectstest.c)
target_link_libraries(objectstest ${OPENSSL_TEST_LIBS})
Expand Down
79 changes: 79 additions & 0 deletions tests/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,9 @@ AM_CPPFLAGS += -I $(top_srcdir)/crypto/bio
AM_CPPFLAGS += -I $(top_srcdir)/crypto/bn
AM_CPPFLAGS += -I $(top_srcdir)/crypto/curve25519
AM_CPPFLAGS += -I $(top_srcdir)/crypto/evp
AM_CPPFLAGS += -I $(top_srcdir)/crypto/mlkem
AM_CPPFLAGS += -I $(top_srcdir)/crypto/modes
AM_CPPFLAGS += -I $(top_srcdir)/crypto/sha
AM_CPPFLAGS += -I $(top_srcdir)/crypto/x509
AM_CPPFLAGS += -I $(top_srcdir)/ssl
AM_CPPFLAGS += -I $(top_srcdir)/apps/openssl
Expand Down Expand Up @@ -542,6 +544,83 @@ TESTS += md_test
check_PROGRAMS += md_test
md_test_SOURCES = md_test.c

noinst_HEADERS += mlkem_tests_util.h

# mlkem1024_decap_tests
TESTS += mlkem1024_decap_tests.sh
check_PROGRAMS += mlkem1024_decap_tests
mlkem1024_decap_tests_SOURCES = mlkem1024_decap_tests.c mlkem_tests_util.c
EXTRA_DIST += mlkem1024_decap_tests.sh
EXTRA_DIST += mlkem1024_decap_tests.txt

# mlkem1024_encap_tests
TESTS += mlkem1024_encap_tests.sh
check_PROGRAMS += mlkem1024_encap_tests
mlkem1024_encap_tests_SOURCES = mlkem1024_encap_tests.c mlkem_tests_util.c
EXTRA_DIST += mlkem1024_encap_tests.sh
EXTRA_DIST += mlkem1024_encap_tests.txt

# mlkem1024_keygen_tests
TESTS += mlkem1024_keygen_tests.sh
check_PROGRAMS += mlkem1024_keygen_tests
mlkem1024_keygen_tests_SOURCES = mlkem1024_keygen_tests.c mlkem_tests_util.c
EXTRA_DIST += mlkem1024_keygen_tests.sh
EXTRA_DIST += mlkem1024_keygen_tests.txt

# mlkem1024_nist_decap_tests
TESTS += mlkem1024_nist_decap_tests.sh
check_PROGRAMS += mlkem1024_nist_decap_tests
mlkem1024_nist_decap_tests_SOURCES = mlkem1024_nist_decap_tests.c mlkem_tests_util.c
EXTRA_DIST += mlkem1024_nist_decap_tests.sh
EXTRA_DIST += mlkem1024_nist_decap_tests.txt

# mlkem1024_nist_keygen_tests
TESTS += mlkem1024_nist_keygen_tests.sh
check_PROGRAMS += mlkem1024_nist_keygen_tests
mlkem1024_nist_keygen_tests_SOURCES = mlkem1024_nist_keygen_tests.c mlkem_tests_util.c
EXTRA_DIST += mlkem1024_nist_keygen_tests.sh
EXTRA_DIST += mlkem1024_nist_keygen_tests.txt

# mlkem768_decap_tests
TESTS += mlkem768_decap_tests.sh
check_PROGRAMS += mlkem768_decap_tests
mlkem768_decap_tests_SOURCES = mlkem768_decap_tests.c mlkem_tests_util.c
EXTRA_DIST += mlkem768_decap_tests.sh
EXTRA_DIST += mlkem768_decap_tests.txt

# mlkem768_encap_tests
TESTS += mlkem768_encap_tests.sh
check_PROGRAMS += mlkem768_encap_tests
mlkem768_encap_tests_SOURCES = mlkem768_encap_tests.c mlkem_tests_util.c
EXTRA_DIST += mlkem768_encap_tests.sh
EXTRA_DIST += mlkem768_encap_tests.txt

# mlkem768_iteration_test
TESTS += mlkem768_iteration_test
check_PROGRAMS += mlkem768_iteration_test
mlkem768_iteration_test_SOURCES = mlkem768_iteration_test.c mlkem_tests_util.c

# mlkem768_keygen_tests
TESTS += mlkem768_keygen_tests.sh
check_PROGRAMS += mlkem768_keygen_tests
mlkem768_keygen_tests_SOURCES = mlkem768_keygen_tests.c mlkem_tests_util.c
EXTRA_DIST += mlkem768_keygen_tests.sh
EXTRA_DIST += mlkem768_keygen_tests.txt

# mlkem768_nist_decap_tests
TESTS += mlkem768_nist_decap_tests.sh
check_PROGRAMS += mlkem768_nist_decap_tests
mlkem768_nist_decap_tests_SOURCES = mlkem768_nist_decap_tests.c mlkem_tests_util.c
EXTRA_DIST += mlkem768_nist_decap_tests.sh
EXTRA_DIST += mlkem768_nist_decap_tests.txt

# mlkem768_nist_keygen_tests
TESTS += mlkem768_nist_keygen_tests.sh
check_PROGRAMS += mlkem768_nist_keygen_tests
mlkem768_nist_keygen_tests_SOURCES = mlkem768_nist_keygen_tests.c mlkem_tests_util.c
EXTRA_DIST += mlkem768_nist_keygen_tests.sh
EXTRA_DIST += mlkem768_nist_keygen_tests.txt

# objectstest
TESTS += objectstest
check_PROGRAMS += objectstest
Expand Down
12 changes: 12 additions & 0 deletions tests/mlkem1024_decap_tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/sh
set -e
TEST=./mlkem1024_decap_tests
if [ -e ./mlkem1024_decap_tests.exe ]; then
TEST=./mlkem1024_decap_tests.exe
fi

if [ -z $srcdir ]; then
srcdir=.
fi

$TEST $srcdir/mlkem1024_decap_tests.txt
12 changes: 12 additions & 0 deletions tests/mlkem1024_encap_tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/sh
set -e
TEST=./mlkem1024_encap_tests
if [ -e ./mlkem1024_encap_tests.exe ]; then
TEST=./mlkem1024_encap_tests.exe
fi

if [ -z $srcdir ]; then
srcdir=.
fi

$TEST $srcdir/mlkem1024_encap_tests.txt
12 changes: 12 additions & 0 deletions tests/mlkem1024_iteration_test.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/sh
set -e
TEST=./mlkem1024_decap_tests
if [ -e ./mlkem1024_decap_tests.exe ]; then
TEST=./mlkem1024_decap_tests.exe
fi

if [ -z $srcdir ]; then
srcdir=.
fi

$TEST $srcdir/mlkem1024_decap_tests.txt
12 changes: 12 additions & 0 deletions tests/mlkem1024_keygen_tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/sh
set -e
TEST=./mlkem1024_keygen_tests
if [ -e ./mlkem1024_keygen_tests.exe ]; then
TEST=./mlkem1024_keygen_tests.exe
fi

if [ -z $srcdir ]; then
srcdir=.
fi

$TEST $srcdir/mlkem1024_keygen_tests.txt
12 changes: 12 additions & 0 deletions tests/mlkem1024_nist_decap_tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/sh
set -e
TEST=./mlkem1024_nist_decap_tests
if [ -e ./mlkem1024_nist_decap_tests.exe ]; then
TEST=./mlkem1024_nist_decap_tests.exe
fi

if [ -z $srcdir ]; then
srcdir=.
fi

$TEST $srcdir/mlkem1024_nist_decap_tests.txt
12 changes: 12 additions & 0 deletions tests/mlkem1024_nist_keygen_tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/sh
set -e
TEST=./mlkem1024_nist_keygen_tests
if [ -e ./mlkem1024_nist_keygen_tests.exe ]; then
TEST=./mlkem1024_nist_keygen_tests.exe
fi

if [ -z $srcdir ]; then
srcdir=.
fi

$TEST $srcdir/mlkem1024_nist_keygen_tests.txt
12 changes: 12 additions & 0 deletions tests/mlkem768_decap_tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/sh
set -e
TEST=./mlkem768_decap_tests
if [ -e ./mlkem768_decap_tests.exe ]; then
TEST=./mlkem768_decap_tests.exe
fi

if [ -z $srcdir ]; then
srcdir=.
fi

$TEST $srcdir/mlkem768_decap_tests.txt
12 changes: 12 additions & 0 deletions tests/mlkem768_encap_tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/sh
set -e
TEST=./mlkem768_encap_tests
if [ -e ./mlkem768_encap_tests.exe ]; then
TEST=./mlkem768_encap_tests.exe
fi

if [ -z $srcdir ]; then
srcdir=.
fi

$TEST $srcdir/mlkem768_encap_tests.txt
12 changes: 12 additions & 0 deletions tests/mlkem768_keygen_tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/sh
set -e
TEST=./mlkem768_keygen_tests
if [ -e ./mlkem768_keygen_tests.exe ]; then
TEST=./mlkem768_keygen_tests.exe
fi

if [ -z $srcdir ]; then
srcdir=.
fi

$TEST $srcdir/mlkem768_keygen_tests.txt
12 changes: 12 additions & 0 deletions tests/mlkem768_nist_decap_tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/sh
set -e
TEST=./mlkem768_nist_decap_tests
if [ -e ./mlkem768_nist_decap_tests.exe ]; then
TEST=./mlkem768_nist_decap_tests.exe
fi

if [ -z $srcdir ]; then
srcdir=.
fi

$TEST $srcdir/mlkem768_nist_decap_tests.txt
12 changes: 12 additions & 0 deletions tests/mlkem768_nist_keygen_tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/sh
set -e
TEST=./mlkem768_keygen_tests
if [ -e ./mlkem768_keygen_tests.exe ]; then
TEST=./mlkem768_keygen_tests.exe
fi

if [ -z $srcdir ]; then
srcdir=.
fi

$TEST $srcdir/mlkem768_keygen_tests.txt
1 change: 1 addition & 0 deletions update.sh
Original file line number Diff line number Diff line change
Expand Up @@ -355,6 +355,7 @@ $CP $libcrypto_regress/aead/*.txt tests
$CP $libcrypto_regress/ct/ctlog.conf tests
$CP $libcrypto_regress/ct/*.crt tests
$CP $libcrypto_regress/x509/policy/*.pem tests
$CP $libcrypto_regress/mlkem/*.txt tests

# generate libcrypto freenull.c
awk -f $libcrypto_regress/free/freenull.awk \
Expand Down

0 comments on commit 7af8536

Please sign in to comment.