Skip to content

T00 — testy hosta, spójność repozytorium i kompilacja

Cel

Wykryć błędy możliwe do znalezienia bez urządzenia oraz potwierdzić, że obrazy powstają z zatwierdzonych wersji narzędzi.

Wymagania

  • Python z pakietami z cloud/requirements.txt oraz cryptography;
  • Pico SDK 2.3.0;
  • FreeRTOS Kernel V11.1.0;
  • ARM GNU Toolchain 15.2.Rel1;
  • CMake i Ninja;
  • Unity 2.5.2 dla natywnych testów C.

T00.1 — walidator repozytorium

Terminal window
python tools/validate_repository.py

Zaliczenie: kod wyjścia 0, brak konfliktów, brak nieprzypisanych źródeł, zgodna mapa Flash/OTP i ciągła numeracja migracji.

T00.2 — testy Python

Terminal window
python -m unittest discover -s cloud/tests -p "test_*.py" -v
python -m unittest discover -s tests -p "test_*.py" -v

Zaliczenie: wszystkie testy przechodzą. Brak zależności nie jest zaliczeniem; należy utworzyć izolowane środowisko i doinstalować wymagania.

T00.3 — natywne testy C

Terminal window
cmake -S tests -B tests/build-host -DASLANDI_FETCH_TEST_DEPS=ON
cmake --build tests/build-host
ctest --test-dir tests/build-host --output-on-failure

Zaliczenie: CRC, konwersje Float32, matematyka energii i parser JSON przechodzą bez błędów.

T00.4 — obrazy urządzenia

Terminal window
cmake --build build --target aslandi_development_payloads
cmake --build build --target aslandi_hardware_diag
cmake --build build --target aslandi_lem60_probe
cmake --build build --target aslandi_rtc_sd_probe
cmake --build build --target aslandi_lem60_rtc_sd_logger
cmake --build build --target aslandi_lem60_rtc_sd_soak
cmake --build build --target aslandi_installer_wifi_lab

Zaliczenie:

  • brak błędów i ostrzeżeń we własnych źródłach;
  • picotool info -a wskazuje RP2350, pico2_w i właściwy adres startowy;
  • rozmiary bootloadera, slotów i NVS nie zachodzą na siebie;
  • zapisane są SHA-256 wszystkich używanych później obrazów.

T00.5 — test podpisywania

Używamy wyłącznie laboratoryjnego klucza testowego. Sprawdzamy poprawny obraz, zmieniony bajt, złą wersję, zły slot, błędny wektor stosu i zły podpis.

Zaliczenie: poprawny obraz jest akceptowany, a każdy zmodyfikowany odrzucany. Prawdziwy klucz wydania nie trafia na komputer deweloperski ani do protokołu.