Ideally, educational examples should include some simple unit tests to demonstrate the requisite patterns for testing in a new environment.
This is particularly important for embedded systems since cross-compilation introduces significant testing challenges. There are several scenarios that should be demonstrated:
- Testing Swift 'business logic' on the host machine - compiling for the host and executing tests locally as part of the build.
- Testing on target hardware - cross-compiling and then launching a test suite on target hardware and collecting results.
- Testing on emulated hardware - cross-compiling and then launching a test suite on a simulator / emulator running on the host.
Consideration should be given to managing external dependencies like FreeRTOS libraries and physical hardware that may have limited emulation support.
Ideally, educational examples should include some simple unit tests to demonstrate the requisite patterns for testing in a new environment.
This is particularly important for embedded systems since cross-compilation introduces significant testing challenges. There are several scenarios that should be demonstrated:
Consideration should be given to managing external dependencies like FreeRTOS libraries and physical hardware that may have limited emulation support.