mirror of
https://github.com/trezor/trezor-firmware.git
synced 2024-11-22 15:38:11 +00:00
ci: add fido2 tests to ci
This commit is contained in:
parent
e485ac50db
commit
b530e7c105
10
ci/test.yml
10
ci/test.yml
@ -80,6 +80,15 @@ core unix u2f test:
|
|||||||
- cd core
|
- cd core
|
||||||
- pipenv run make test_emu_u2f
|
- pipenv run make test_emu_u2f
|
||||||
|
|
||||||
|
core unix fido2 test:
|
||||||
|
stage: test
|
||||||
|
<<: *only_changes_core
|
||||||
|
dependencies:
|
||||||
|
- core unix frozen regular build
|
||||||
|
script:
|
||||||
|
- cd core
|
||||||
|
- pipenv run make test_emu_fido2
|
||||||
|
|
||||||
core unix upgrade test:
|
core unix upgrade test:
|
||||||
stage: test
|
stage: test
|
||||||
<<: *only_changes_core
|
<<: *only_changes_core
|
||||||
@ -94,6 +103,7 @@ core unix upgrade test:
|
|||||||
core mypy test:
|
core mypy test:
|
||||||
stage: test
|
stage: test
|
||||||
<<: *only_changes_core
|
<<: *only_changes_core
|
||||||
|
dependencies: [] # no artifacts needed
|
||||||
script:
|
script:
|
||||||
- cd core
|
- cd core
|
||||||
- (pipenv run make mypy | tee /tmp/mypy-result) || true
|
- (pipenv run make mypy | tee /tmp/mypy-result) || true
|
||||||
|
@ -73,6 +73,9 @@ test_emu_monero: ## run selected monero device tests from monero-agent
|
|||||||
test_emu_u2f: ## run selected u2f device tests from u2f-tests-hid
|
test_emu_u2f: ## run selected u2f device tests from u2f-tests-hid
|
||||||
cd tests ; ./run_tests_device_emu_u2f.sh $(TESTOPTS)
|
cd tests ; ./run_tests_device_emu_u2f.sh $(TESTOPTS)
|
||||||
|
|
||||||
|
test_emu_fido2: ## run fido2 device tests
|
||||||
|
cd tests ; ./run_tests_device_emu_fido2.sh $(TESTOPTS)
|
||||||
|
|
||||||
pylint: ## run pylint on application sources and tests
|
pylint: ## run pylint on application sources and tests
|
||||||
pylint -E $(shell find src tests -name *.py)
|
pylint -E $(shell find src tests -name *.py)
|
||||||
|
|
||||||
|
39
core/tests/run_tests_device_emu_fido2.sh
Executable file
39
core/tests/run_tests_device_emu_fido2.sh
Executable file
@ -0,0 +1,39 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
: "${RUN_TEST_EMU:=1}"
|
||||||
|
|
||||||
|
CORE_DIR="$(SHELL_SESSION_FILE='' && cd "$( dirname "${BASH_SOURCE[0]}" )/.." >/dev/null 2>&1 && pwd )"
|
||||||
|
MICROPYTHON="${MICROPYTHON:-$CORE_DIR/build/unix/micropython}"
|
||||||
|
TREZOR_SRC="${CORE_DIR}/src"
|
||||||
|
|
||||||
|
DISABLE_FADE=1
|
||||||
|
PYOPT="${PYOPT:-0}"
|
||||||
|
upy_pid=""
|
||||||
|
|
||||||
|
# run emulator if RUN_TEST_EMU
|
||||||
|
if [[ $RUN_TEST_EMU > 0 ]]; then
|
||||||
|
source ../trezor_cmd.sh
|
||||||
|
|
||||||
|
# remove flash and sdcard files before run to prevent inconsistent states
|
||||||
|
mv "${TREZOR_PROFILE_DIR}/trezor.flash" "${TREZOR_PROFILE_DIR}/trezor.flash.bkp" 2>/dev/null
|
||||||
|
mv "${TREZOR_PROFILE_DIR}/trezor.sdcard" "${TREZOR_PROFILE_DIR}/trezor.sdcard.bkp" 2>/dev/null
|
||||||
|
|
||||||
|
cd "${TREZOR_SRC}"
|
||||||
|
echo "Starting emulator: $MICROPYTHON $ARGS ${MAIN}"
|
||||||
|
|
||||||
|
TREZOR_TEST=1 \
|
||||||
|
TREZOR_DISABLE_FADE=$DISABLE_FADE \
|
||||||
|
$MICROPYTHON $ARGS "${MAIN}" &> "${TREZOR_LOGFILE}" &
|
||||||
|
upy_pid=$!
|
||||||
|
cd -
|
||||||
|
sleep 30
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd ../../tests/fido_tests/fido2
|
||||||
|
# run tests
|
||||||
|
error=0
|
||||||
|
if ! pytest --random-order-seed=414020 --sim tests/standard/ --vendor trezor "$@"; then # hardcoded order seed, which succeeds
|
||||||
|
error=1
|
||||||
|
fi
|
||||||
|
kill $upy_pid
|
||||||
|
exit $error
|
1
tests/fido_tests/fido2
Symbolic link
1
tests/fido_tests/fido2
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
../../vendor/fido2-tests/
|
Loading…
Reference in New Issue
Block a user