[FL-3928] CLI rewrite #7226
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: 'Unit tests' | |
on: | |
pull_request: | |
env: | |
TARGETS: f7 | |
DEFAULT_TARGET: f7 | |
FBT_TOOLCHAIN_PATH: /opt/ | |
FBT_GIT_SUBMODULE_SHALLOW: 1 | |
jobs: | |
run_units_on_bench: | |
runs-on: [ self-hosted, FlipperZeroTest ] | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 1 | |
ref: ${{ github.event.pull_request.head.sha }} | |
- name: 'Flash unit tests firmware' | |
id: flashing | |
if: success() | |
timeout-minutes: 20 | |
run: | | |
source scripts/toolchain/fbtenv.sh | |
./fbt resources firmware_latest flash LIB_DEBUG=1 FIRMWARE_APP_SET=unit_tests FORCE=1 | |
- name: 'Copy assets and unit data, reboot and wait for flipper' | |
id: copy | |
if: steps.flashing.outcome == 'success' | |
timeout-minutes: 7 | |
run: | | |
source scripts/toolchain/fbtenv.sh | |
python3 scripts/testops.py -t=15 await_flipper | |
python3 scripts/storage.py -f send build/latest/resources /ext | |
python3 scripts/storage.py -f send /region_data /ext/.int/.region_data | |
python3 scripts/power.py reboot | |
python3 scripts/testops.py -t=30 await_flipper | |
- name: 'Run units and validate results' | |
id: run_units | |
if: steps.copy.outcome == 'success' | |
timeout-minutes: 7 | |
run: | | |
source scripts/toolchain/fbtenv.sh | |
python3 scripts/testops.py run_units | |
- name: 'Upload test results' | |
if: failure() && steps.flashing.outcome == 'success' && steps.run_units.outcome != 'skipped' | |
uses: actions/upload-artifact@v4 | |
with: | |
name: unit-tests_output | |
path: unit_tests*.txt | |
- name: 'Check GDB output' | |
if: failure() && steps.flashing.outcome == 'success' | |
run: | | |
./fbt gdb_trace_all LIB_DEBUG=1 FIRMWARE_APP_SET=unit_tests FORCE=1 |