1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2025-01-05 13:01:12 +00:00
trezor-firmware/ci/test.yml

157 lines
2.8 KiB
YAML

image: registry.gitlab.com/satoshilabs/trezor/trezor-firmware/environment
.only_changes_core: &only_changes_core
only:
changes:
- ci/**/*
- common/**/*
- core/**/*
- crypto/**/*
- python/**/*
- storage/**/*
- tests/**/*
- tools/**/*
- vendor/**/*
.only_changes_legacy: &only_changes_legacy
only:
changes:
- ci/**/*
- common/**/*
- crypto/**/*
- legacy/**/*
- python/**/*
- storage/**/*
- tests/**/*
- tools/**/*
- vendor/**/*
# Core
test core unix unit:
stage: test
<<: *only_changes_core
dependencies:
- build core unix frozen regular
script:
- cd core
- pipenv run make test
test core unix device:
stage: test
<<: *only_changes_core
dependencies:
- build core unix frozen regular
script:
- cd core
- pipenv run make test_emu
test core unix device bitcoinonly:
stage: test
<<: *only_changes_core
dependencies:
- build core unix frozen bitcoinonly
variables:
MICROPYTHON: "../build/unix/micropython-bitcoinonly"
TREZOR_PYTEST_SKIP_ALTCOINS: 1
script:
- cd core
- pipenv run make test_emu
test core unix monero:
stage: test
<<: *only_changes_core
dependencies:
- build core unix frozen regular
script:
- cd core
- pipenv run make test_emu_monero
# Crypto
test crypto:
stage: test
only:
changes:
- ci/**/*
- crypto/**/*
dependencies:
- build crypto
script:
- cd crypto
- ./tests/aestst
- ./tests/test_check
- ./tests/test_openssl 1000
- ITERS=10 pipenv run pytest tests
- CK_TIMEOUT_MULTIPLIER=20 valgrind -q --error-exitcode=1 ./tests/test_check
# Legacy
test legacy emu:
stage: test
<<: *only_changes_legacy
dependencies:
- build legacy emu regular
variables:
EMULATOR: "1"
script:
- cd legacy
- pipenv run script/test
test legacy emu bitcoinonly:
stage: test
<<: *only_changes_legacy
dependencies:
- build legacy emu bitcoinonly
variables:
EMULATOR: "1"
EMULATOR_BINARY: "firmware/trezor-bitcoinonly.elf"
TREZOR_PYTEST_SKIP_ALTCOINS: 1
script:
- cd legacy
- pipenv run script/test
# Python
test python:
stage: test
only:
changes:
- ci/**/*
- python/**/*
script:
- cd python
- pipenv run tox
# Storage
test storage:
stage: test
only:
changes:
- ci/**/*
- storage/**/*
dependencies: []
script:
- cd storage/tests
- pipenv run make build
- pipenv run make tests_all
# Other
test upgrade:
stage: test
<<: *only_changes_core
<<: *only_changes_legacy
dependencies:
- build core unix frozen debug
- build legacy emu regular
script:
- tests/upgrade_tests/download_emulators.sh
- pipenv run pytest tests/upgrade_tests