swtpm/tests
Stefan Berger bd494cd7dc tests: Use ${WORKDIR} in config files to test env. var replacement
To test the replacement of environment variables with their values
use ${WORKDIR} in the test case config files.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2022-03-07 09:16:51 -05:00
..
data tests: Add test for libtpms issue number 195 (needs latest libtpms now) 2021-02-26 16:22:02 -05:00
patches tests: Store and also restore the volatile state at every step 2021-03-17 19:19:10 -04:00
_test_encrypted_state tests: Use bash's built-in echo rather than /bin/echo 2018-11-19 18:50:42 -05:00
_test_getcap tests: Increase timeout for shutdown for running with valgrind 2018-10-01 12:52:20 -04:00
_test_hashing tests: Increase timeout for shutdown for running with valgrind 2018-10-01 12:52:20 -04:00
_test_hashing2 tests: Check expected error output against expected error message 2018-10-08 06:43:30 -04:00
_test_init tests: Allow seccomp override w/ SWTPM_TEST_SECCOMP_OPT env var 2020-01-15 15:49:51 -05:00
_test_locality tests: Increase timeout for shutdown for running with valgrind 2018-10-01 12:52:20 -04:00
_test_migration_key tests: Check expected error output against expected error message 2018-10-08 06:43:30 -04:00
_test_migration_key_2 tests: Run tests also on socket interfaces 2017-07-11 14:04:40 -04:00
_test_print_capabilities swtpm_setup: Get rid of 'c' code and support changing user in python 2020-09-09 09:53:05 -04:00
_test_resume_volatile tests: Call function rather than running 'ps aux' to display proceses 2018-09-27 10:19:09 -04:00
_test_save_load_encrypted_state tests: Convert existing test case to use file descriptor for reading password 2019-06-24 07:27:39 -04:00
_test_save_load_state tests: Increase timeout for shutdown for running with valgrind 2018-10-01 12:52:20 -04:00
_test_setbuffersize tests: Fix spelling error swptm->swtpm 2021-02-05 16:48:55 -05:00
_test_swtpm_bios tests: Replace ${SWTPM}.pid with swtpm.pid in PID filename in 2 test cases 2021-07-28 14:21:42 -04:00
_test_tpm2_derived_keys tests: Skip derived key test 1st part on big endian machines 2020-05-27 13:18:54 -04:00
_test_tpm2_encrypted_state tests: Fix spelling error swptm->swtpm 2021-02-05 16:48:55 -05:00
_test_tpm2_getcap tests: Check expected error output against expected error message 2018-10-08 06:43:30 -04:00
_test_tpm2_hashing tests: Increase timeout for shutdown for running with valgrind 2018-10-01 12:52:20 -04:00
_test_tpm2_hashing2 tests: Check expected error output against expected error message 2018-10-08 06:43:30 -04:00
_test_tpm2_hashing3 tests: Adapt test cases' expected PCR result due to libtpms TPM 2 fix 2020-06-29 08:18:23 -04:00
_test_tpm2_init tests: Allow seccomp override w/ SWTPM_TEST_SECCOMP_OPT env var 2020-01-15 15:49:51 -05:00
_test_tpm2_locality tests: Increase timeout for shutdown for running with valgrind 2018-10-01 12:52:20 -04:00
_test_tpm2_migration_key tests: Allow volatile state file >= 9000 bytes in test_tpm2_migration_key 2021-05-12 16:03:19 -04:00
_test_tpm2_print_capabilities swtpm_setup: Get rid of 'c' code and support changing user in python 2020-09-09 09:53:05 -04:00
_test_tpm2_probe tests: Extend tests cases with test for active seccomp profiles 2019-03-18 15:43:44 -04:00
_test_tpm2_resume_volatile tests: Call function rather than running 'ps aux' to display proceses 2018-09-27 10:19:09 -04:00
_test_tpm2_save_load_encrypted_state tests: Adapt test cases' expected PCR result due to libtpms TPM 2 fix 2020-06-29 08:18:23 -04:00
_test_tpm2_save_load_state tests: Increase timeout for shutdown for running with valgrind 2018-10-01 12:52:20 -04:00
_test_tpm2_save_load_state_da_timeout tests: Fix tests for slow/busy system by taking time again (DA timeout test) 2020-08-26 21:34:16 -04:00
_test_tpm2_savestate tests: Adapt test cases' expected PCR result due to libtpms TPM 2 fix 2020-06-29 08:18:23 -04:00
_test_tpm2_setbuffersize tests: Fix spelling error swptm->swtpm 2021-02-05 16:48:55 -05:00
_test_tpm2_swtpm_bios tests: Replace ${SWTPM}.pid with swtpm.pid in PID filename in 2 test cases 2021-07-28 14:21:42 -04:00
_test_tpm2_volatilestate tests: Adapt test cases' expected PCR result due to libtpms TPM 2 fix 2020-06-29 08:18:23 -04:00
_test_tpm2_wrongorder tests: Check expected error output against expected error message 2018-10-08 06:43:30 -04:00
_test_tpm_probe tests: Extend tests cases with test for active seccomp profiles 2019-03-18 15:43:44 -04:00
_test_volatilestate tests: Increase timeout for shutdown for running with valgrind 2018-10-01 12:52:20 -04:00
_test_wrongorder tests: Increase timeout for shutdown for running with valgrind 2018-10-01 12:52:20 -04:00
common tests: Move setting CERRTOOL variable to tests-common 2021-03-01 07:54:27 -05:00
create_certs.sh scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
load_vtpm_proxy tests: Skip CUSE TPM related tests if cuse module is not available 2017-02-02 09:01:55 -05:00
Makefile.am tests: Store and also restore the volatile state at every step 2021-03-17 19:19:10 -04:00
Readme.md tests: Add a Readme describing how to run the swtpm tests 2021-03-17 19:19:10 -04:00
softhsm_setup tests: Enable softhsm_setup to work with a temporary directory 2020-08-27 20:26:27 -04:00
swtpm_setup.conf treewide: remove executable bit from config files and c-code 2018-01-17 10:45:25 -05:00
test_clientfds.py tests: Allow seccomp override w/ SWTPM_TEST_SECCOMP_OPT env var 2020-01-15 15:49:51 -05:00
test_commandline swtpm_setup: Switch over to new python tool and get rid of the bash script 2020-08-28 16:27:15 -04:00
test_common test: Add --log parameter to test logging 2017-02-03 15:15:31 -05:00
test_config.in build: remove hardcoded tss user and group 2015-11-02 20:47:37 -05:00
test_ctrlchannel tests: Adjust tests to use new startup options 2020-02-08 18:19:08 -05:00
test_ctrlchannel2 tests: Allow seccomp override w/ SWTPM_TEST_SECCOMP_OPT env var 2020-01-15 15:49:51 -05:00
test_ctrlchannel3 tests: Allow seccomp override w/ SWTPM_TEST_SECCOMP_OPT env var 2020-01-15 15:49:51 -05:00
test_ctrlchannel4 tests: Allow seccomp override w/ SWTPM_TEST_SECCOMP_OPT env var 2020-01-15 15:49:51 -05:00
test_cuse tests: Skip CUSE tests if not compiled with CUSE interface 2018-06-11 10:35:14 -04:00
test_encrypted_state scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_getcap scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_hashing scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_hashing2 scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_init scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_locality scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_migration_key scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_parameters swtpm_setup: Get rid of 'c' code and support changing user in python 2020-09-09 09:53:05 -04:00
test_print_capabilities tests: Add test case for --print-capabilities test 2019-07-12 14:18:20 -04:00
test_resume_volatile scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_samples_create_tpmca tests: Move setting CERRTOOL variable to tests-common 2021-03-01 07:54:27 -05:00
test_save_load_encrypted_state scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_save_load_state scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_setbuffersize scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_setdatafd.py tests: Make python test code independent of python 2 or 3 2018-08-07 12:19:47 -04:00
test_swtpm_bios scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_swtpm_cert swtpm_cert: Allow passing signing key and parent key via new option 2020-01-30 08:52:58 -05:00
test_swtpm_setup_create_cert tests: Use ${WORKDIR} in config files to test env. var replacement 2022-03-07 09:16:51 -05:00
test_tpm2_ctrlchannel2 swtpm: Fix --print-capabilities for 'swtpm chardev' 2021-01-13 11:32:16 -05:00
test_tpm2_derived_keys tests: Ensure that derived keys are always the same for the same state 2019-06-14 22:18:48 -04:00
test_tpm2_encrypted_state scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_tpm2_getcap scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_tpm2_hashing scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_tpm2_hashing2 scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_tpm2_hashing3 scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_tpm2_ibmtss2 tests: Store and also restore the volatile state at every step 2021-03-17 19:19:10 -04:00
test_tpm2_init scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_tpm2_locality scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_tpm2_migration_key scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_tpm2_parameters swtpm_setup: Get rid of 'c' code and support changing user in python 2020-09-09 09:53:05 -04:00
test_tpm2_partial_reads swtpm_cuse: Support parial reads (issue #376) 2021-01-04 07:51:50 -05:00
test_tpm2_print_capabilities tests: Add test case for 'swtpm <iface> --tpm2 --print-capabilities' 2020-04-23 16:02:47 -04:00
test_tpm2_probe scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_tpm2_resume_volatile scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_tpm2_samples_create_tpmca tests: Kill tpm2-abrmd with SIGKILL rather SIGTERM 2021-06-22 12:22:50 -04:00
test_tpm2_samples_swtpm_localca tests: Move setting CERRTOOL variable to tests-common 2021-03-01 07:54:27 -05:00
test_tpm2_samples_swtpm_localca_pkcs11 tests: Move setting CERRTOOL variable to tests-common 2021-03-01 07:54:27 -05:00
test_tpm2_save_load_encrypted_state scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_tpm2_save_load_state tests: Assign unique ports 65452/65453 to test_tpm2_save_load_state 2020-08-06 15:37:10 -04:00
test_tpm2_save_load_state_2 tests: Wait a bit for pid file content; dump log on failure 2021-02-21 11:52:05 -05:00
test_tpm2_save_load_state_3 tests: Move setting CERRTOOL variable to tests-common 2021-03-01 07:54:27 -05:00
test_tpm2_save_load_state_da_timeout scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_tpm2_savestate scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_tpm2_setbuffersize tests: Assign unique ports 65448/65449 to test_tpm2_setbuffersize 2020-08-06 15:37:10 -04:00
test_tpm2_swtpm_bios scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_tpm2_swtpm_cert tests: Allow passing SWTPM_CERT from command line 2018-11-17 16:37:03 -05:00
test_tpm2_swtpm_cert_ecc tests: Allow passing SWTPM_CERT from command line 2018-11-17 16:37:03 -05:00
test_tpm2_swtpm_setup_create_cert tests: Test resolving env. variabels in swtpm_setup config file 2021-06-01 09:31:43 -04:00
test_tpm2_volatilestate scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_tpm2_vtpm_proxy tests: Adapt test cases' expected PCR result due to libtpms TPM 2 fix 2020-06-29 08:18:23 -04:00
test_tpm2_wrongorder scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_tpm12 tests: Repeat download of TPM 1.2 test suite with random wait intervals 2020-04-24 12:56:08 -04:00
test_tpm_probe scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_volatilestate scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00
test_vtpm_proxy swtpm: Fix vtpm proxy case without startup flags 2020-03-07 09:09:14 -05:00
test_wrongorder scripting: Use #!/usr/bin/env bash rather than /bin/bash 2018-09-10 16:49:12 +00:00

This directory contains the swtpm tests.

To run the tests you need to build swtpm first and then you can run the tests using the following command line:

SWTPM_TEST_EXPENSIVE=1 SWTPM_TEST_STORE_VOLATILE=1 SWTPM_TEST_IBMTSS2=1 make check

You may omit the environment variables if you don't want to run the more time-consuming tests.

SWTPM_TEST_EXPENSIVE=1 enables the following tests:

  • test_tpm12
  • test_tpm2_ibmtss2

SWTPM_TEST_STORE_VOLATILE=1 enables storing and restoring of the volatile state at every step of the test_tpm2_ibmtss2 test. This environment variable only has an effect if SWTPM_TEST_EXPENSIVE=1 is set.

SWTPM_TEST_IBMTSS2=1 enables the following tests

  • test_tpm2_save_load_state_2
  • test_tpm2_save_load_state_3

Some tests require root rights, especially those involving the CUSE TPM and the vTPM proxy device. To run these and all the other ones you can use the following command line:

sudo bash -c "SWTPM_TEST_EXPENSIVE=1 SWTPM_TEST_STORE_VOLATILE=1 SWTPM_TEST_IBMTSS2=1 make check"