Make target for on mbed testing
New target gen-mbed-test generates mebdtls tests in mbed-os test format. i.e. a dir tree like TESTS/<testgroup>/[<sub testgroup>/]<test case>. The TESTS dir can then be imported into mbed-os to compile tests with mbed-os.
This commit is contained in:
parent
94aefaf314
commit
1f29be7241
1 changed files with 96 additions and 73 deletions
169
tests/Makefile
169
tests/Makefile
|
@ -102,76 +102,75 @@ APPS = test_suite_aes.ecb test_suite_aes.cbc \
|
|||
BINARIES := $(addsuffix $(EXEXT),$(APPS))
|
||||
|
||||
# Look up for associated function files
|
||||
func.test_suite_aes.ecb.c := test_suite_aes
|
||||
func.test_suite_aes.cbc.c := test_suite_aes
|
||||
func.test_suite_aes.cfb.c := test_suite_aes
|
||||
func.test_suite_aes.ofb.c := test_suite_aes
|
||||
func.test_suite_aes.xts.c := test_suite_aes
|
||||
func.test_suite_aes.rest.c := test_suite_aes
|
||||
func.test_suite_arc4.c := test_suite_arc4
|
||||
func.test_suite_aria.c := test_suite_aria
|
||||
func.test_suite_asn1write.c := test_suite_asn1write
|
||||
func.test_suite_base64.c := test_suite_base64
|
||||
func.test_suite_blowfish.c := test_suite_blowfish
|
||||
func.test_suite_camellia.c := test_suite_camellia
|
||||
func.test_suite_ccm.c := test_suite_ccm
|
||||
func.test_suite_chacha20.c := test_suite_chacha20
|
||||
func.test_suite_chachapoly.c := test_suite_chachapoly
|
||||
func.test_suite_cmac.c := test_suite_cmac
|
||||
func.test_suite_cipher.chachapoly.c := test_suite_cipher
|
||||
func.test_suite_cipher.aes.c := test_suite_cipher
|
||||
func.test_suite_cipher.arc4.c := test_suite_cipher
|
||||
func.test_suite_cipher.ccm.c := test_suite_cipher
|
||||
func.test_suite_cipher.chacha20.c := test_suite_cipher
|
||||
func.test_suite_cipher.gcm.c := test_suite_cipher
|
||||
func.test_suite_cipher.blowfish.c := test_suite_cipher
|
||||
func.test_suite_cipher.camellia.c := test_suite_cipher
|
||||
func.test_suite_cipher.des.c := test_suite_cipher
|
||||
func.test_suite_cipher.null.c := test_suite_cipher
|
||||
func.test_suite_cipher.padding.c := test_suite_cipher
|
||||
func.test_suite_ctr_drbg.c := test_suite_ctr_drbg
|
||||
func.test_suite_debug.c := test_suite_debug
|
||||
func.test_suite_des.c := test_suite_des
|
||||
func.test_suite_dhm.c := test_suite_dhm
|
||||
func.test_suite_ecdh.c := test_suite_ecdh
|
||||
func.test_suite_ecdsa.c := test_suite_ecdsa
|
||||
func.test_suite_ecjpake.c := test_suite_ecjpake
|
||||
func.test_suite_ecp.c := test_suite_ecp
|
||||
func.test_suite_error.c := test_suite_error
|
||||
func.test_suite_entropy.c := test_suite_entropy
|
||||
func.test_suite_gcm.aes128_de.c := test_suite_gcm
|
||||
func.test_suite_gcm.aes192_de.c := test_suite_gcm
|
||||
func.test_suite_gcm.aes256_de.c := test_suite_gcm
|
||||
func.test_suite_gcm.aes128_en.c := test_suite_gcm
|
||||
func.test_suite_gcm.aes192_en.c := test_suite_gcm
|
||||
func.test_suite_gcm.aes256_en.c := test_suite_gcm
|
||||
func.test_suite_gcm.camellia.c := test_suite_gcm
|
||||
func.test_suite_hkdf.c := test_suite_hkdf
|
||||
func.test_suite_hmac_drbg.misc.c := test_suite_hmac_drbg
|
||||
func.test_suite_hmac_drbg.no_reseed.c := test_suite_hmac_drbg
|
||||
func.test_suite_hmac_drbg.nopr.c := test_suite_hmac_drbg
|
||||
func.test_suite_hmac_drbg.pr.c := test_suite_hmac_drbg
|
||||
func.test_suite_md.c := test_suite_md
|
||||
func.test_suite_mdx.c := test_suite_mdx
|
||||
func.test_suite_memory_buffer_alloc.c := test_suite_memory_buffer_alloc
|
||||
func.test_suite_mpi.c := test_suite_mpi
|
||||
func.test_suite_nist_kw.c := test_suite_nist_kw
|
||||
func.test_suite_pem.c := test_suite_pem
|
||||
func.test_suite_pkcs1_v15.c := test_suite_pkcs1_v15
|
||||
func.test_suite_pkcs1_v21.c := test_suite_pkcs1_v21
|
||||
func.test_suite_pkcs5.c := test_suite_pkcs5
|
||||
func.test_suite_pkparse.c := test_suite_pkparse
|
||||
func.test_suite_pkwrite.c := test_suite_pkwrite
|
||||
func.test_suite_pk.c := test_suite_pk
|
||||
func.test_suite_poly1305.c := test_suite_poly1305
|
||||
func.test_suite_rsa.c := test_suite_rsa
|
||||
func.test_suite_shax.c := test_suite_shax
|
||||
func.test_suite_ssl.c := test_suite_ssl
|
||||
func.test_suite_timing.c := test_suite_timing
|
||||
func.test_suite_x509parse.c := test_suite_x509parse
|
||||
func.test_suite_x509write.c := test_suite_x509write
|
||||
func.test_suite_xtea.c := test_suite_xtea
|
||||
func.test_suite_version.c := test_suite_version
|
||||
func.test_suite_aes.ecb := test_suite_aes
|
||||
func.test_suite_aes.cbc := test_suite_aes
|
||||
func.test_suite_aes.cfb := test_suite_aes
|
||||
func.test_suite_aes.ofb := test_suite_aes
|
||||
func.test_suite_aes.xts := test_suite_aes
|
||||
func.test_suite_aes.rest := test_suite_aes
|
||||
func.test_suite_arc4 := test_suite_arc4
|
||||
func.test_suite_aria := test_suite_aria
|
||||
func.test_suite_asn1write := test_suite_asn1write
|
||||
func.test_suite_base64 := test_suite_base64
|
||||
func.test_suite_blowfish := test_suite_blowfish
|
||||
func.test_suite_camellia := test_suite_camellia
|
||||
func.test_suite_ccm := test_suite_ccm
|
||||
func.test_suite_chacha20 := test_suite_chacha20
|
||||
func.test_suite_chachapoly := test_suite_chachapoly
|
||||
func.test_suite_cmac := test_suite_cmac
|
||||
func.test_suite_cipher.chachapoly := test_suite_cipher
|
||||
func.test_suite_cipher.aes := test_suite_cipher
|
||||
func.test_suite_cipher.arc4 := test_suite_cipher
|
||||
func.test_suite_cipher.ccm := test_suite_cipher
|
||||
func.test_suite_cipher.chacha20 := test_suite_cipher
|
||||
func.test_suite_cipher.gcm := test_suite_cipher
|
||||
func.test_suite_cipher.blowfish := test_suite_cipher
|
||||
func.test_suite_cipher.camellia := test_suite_cipher
|
||||
func.test_suite_cipher.des := test_suite_cipher
|
||||
func.test_suite_cipher.null := test_suite_cipher
|
||||
func.test_suite_cipher.padding := test_suite_cipher
|
||||
func.test_suite_ctr_drbg := test_suite_ctr_drbg
|
||||
func.test_suite_debug := test_suite_debug
|
||||
func.test_suite_des := test_suite_des
|
||||
func.test_suite_dhm := test_suite_dhm
|
||||
func.test_suite_ecdh := test_suite_ecdh
|
||||
func.test_suite_ecdsa := test_suite_ecdsa
|
||||
func.test_suite_ecjpake := test_suite_ecjpake
|
||||
func.test_suite_ecp := test_suite_ecp
|
||||
func.test_suite_error := test_suite_error
|
||||
func.test_suite_entropy := test_suite_entropy
|
||||
func.test_suite_gcm.aes128_de := test_suite_gcm
|
||||
func.test_suite_gcm.aes192_de := test_suite_gcm
|
||||
func.test_suite_gcm.aes256_de := test_suite_gcm
|
||||
func.test_suite_gcm.aes128_en := test_suite_gcm
|
||||
func.test_suite_gcm.aes192_en := test_suite_gcm
|
||||
func.test_suite_gcm.aes256_en := test_suite_gcm
|
||||
func.test_suite_gcm.camellia := test_suite_gcm
|
||||
func.test_suite_hkdf := test_suite_hkdf
|
||||
func.test_suite_hmac_drbg.misc := test_suite_hmac_drbg
|
||||
func.test_suite_hmac_drbg.no_reseed := test_suite_hmac_drbg
|
||||
func.test_suite_hmac_drbg.nopr := test_suite_hmac_drbg
|
||||
func.test_suite_hmac_drbg.pr := test_suite_hmac_drbg
|
||||
func.test_suite_md := test_suite_md
|
||||
func.test_suite_mdx := test_suite_mdx
|
||||
func.test_suite_memory_buffer_alloc := test_suite_memory_buffer_alloc
|
||||
func.test_suite_mpi := test_suite_mpi
|
||||
func.test_suite_nist_kw := test_suite_nist_kw
|
||||
func.test_suite_pem := test_suite_pem
|
||||
func.test_suite_pkcs1_v15 := test_suite_pkcs1_v15
|
||||
func.test_suite_pkcs1_v21 := test_suite_pkcs1_v21
|
||||
func.test_suite_pkcs5 := test_suite_pkcs5
|
||||
func.test_suite_pkparse := test_suite_pkparse
|
||||
func.test_suite_pkwrite := test_suite_pkwrite
|
||||
func.test_suite_pk := test_suite_pk
|
||||
func.test_suite_rsa := test_suite_rsa
|
||||
func.test_suite_shax := test_suite_shax
|
||||
func.test_suite_ssl := test_suite_ssl
|
||||
func.test_suite_timing := test_suite_timing
|
||||
func.test_suite_x509parse := test_suite_x509parse
|
||||
func.test_suite_x509write := test_suite_x509write
|
||||
func.test_suite_xtea := test_suite_xtea
|
||||
func.test_suite_version := test_suite_version
|
||||
|
||||
.SILENT:
|
||||
|
||||
|
@ -185,9 +184,9 @@ $(DEP):
|
|||
C_FILES := $(addsuffix .c,$(APPS))
|
||||
|
||||
.SECONDEXPANSION:
|
||||
$(C_FILES): %.c: suites/$$(func.$$*.c).function suites/%.data scripts/generate_code.pl suites/helpers.function suites/main_test.function
|
||||
$(C_FILES): %.c: suites/$$(func.$$*).function suites/%.data scripts/generate_code.pl suites/helpers.function suites/main_test.function
|
||||
echo " Gen $@"
|
||||
perl scripts/generate_code.pl suites $(func.$@) $*
|
||||
perl scripts/generate_code.pl suites $(func.$*) $*
|
||||
|
||||
|
||||
$(BINARIES): %$(EXEXT): %.c $(DEP)
|
||||
|
@ -200,12 +199,36 @@ all: $(BINARIES)
|
|||
|
||||
clean:
|
||||
ifndef WINDOWS
|
||||
rm -f $(APPS) *.c
|
||||
rm -rf $(APPS) *.c TESTS
|
||||
else
|
||||
del /Q /F *.c *.exe
|
||||
rmdir /Q /S TESTS
|
||||
endif
|
||||
|
||||
check: $(BINARIES)
|
||||
perl scripts/run-test-suites.pl
|
||||
|
||||
test: check
|
||||
|
||||
# Create separate targets for generating mbed-os tests.
|
||||
MBED_APPS := $(addprefix mbed_,$(APPS))
|
||||
|
||||
# FIXME: description needs change
|
||||
# Each test suite name is stripped off of prefix test_suite_. mbed-os test dir
|
||||
# structure requires format TESTS/<testgroup>[/<sub testgroups..>]/<test case>
|
||||
# Test app names are split on "." and end part is used as the test dir name.
|
||||
# Prevous parts are used as the test group dirs. For tests without "." same
|
||||
# name is used as the test group dir.
|
||||
|
||||
.SECONDEXPANSION:
|
||||
$(MBED_APPS): mbed_%: suites/$$(func.$$*).function suites/%.data scripts/gen_mbed_code.py suites/helpers.function suites/main_test.function
|
||||
echo " Gen ./TESTS/mbedtls/$*/main.c"
|
||||
python scripts/gen_mbed_code.py -f suites/$(func.$*).function \
|
||||
-d suites/$*.data \
|
||||
-t suites/mbed_test.function \
|
||||
-s suites \
|
||||
--help-file suites/helpers.function \
|
||||
-o ./TESTS
|
||||
|
||||
gen-mbed-test: $(MBED_APPS)
|
||||
|
||||
|
|
Loading…
Reference in a new issue