rusefi/unit_tests
rusefillc 9c54180bf6
T2 (#5647)
* fix unit-tests

* add cam/vvt support to trigger_emulator

---------

Co-authored-by: andreika-git <andrei.home@gmail.com>
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2023-10-26 14:10:51 -04:00
..
chibios-mock
googletest@797b0ad2a3
native
test-framework Auto-generated configs and docs 2023-09-16 04:06:22 +00:00
test_basic_math only:Non-square dimension maps #5641 2023-10-25 17:02:06 -04:00
tests T2 (#5647) 2023-10-26 14:10:51 -04:00
.cproject dead warningEnabled global variable (#5636) 2023-10-24 18:55:29 -04:00
.gitignore
.project
Makefile only:timer.h goes to libfirmware! 2023-08-30 23:11:24 -04:00
adc_inputs.h
boards.cpp
boards.h
ci_gcov.sh
clean_compile.bat
clean_compile.sh
efifeatures.h
global.h
global_mocks.cpp only:timer.h goes to libfirmware! 2023-08-30 23:11:24 -04:00
gmock-all.cpp
gtest-all.cpp
jenkins.sh
logicdata.cpp
logicdata.h
main.cpp
mocks.cpp
mocks.h only:making boost constraints more obvious, also running boost in simulator 2023-10-19 21:06:09 -04:00
readme.md
rules.mk
run_clean_gcov.sh
run_gcov.bat
run_logicdata_sandbox.bat
run_sharded_tests.sh
svnversion.h
test.mk
triggers.txt Trigger wheel definitions 2023-10-08 15:10:00 +00:00
unit_test_rules.mk export board-specific macro for stm32 pins based on board yaml #3298 2023-09-02 22:09:38 -04:00

readme.md

See https://github.com/rusefi/rusefi/wiki/Dev-Quality-Control

TL, DR: just follow tests folder as examples.

  1. Run 'make' to build desktop binary.
  2. Execute rusefi_test binary on your PC/Mac, it's expected to say SUCCESS and not fail :) Googletest will also print results summary.
  3. To run only one test uncomment and modify main.cpp line ::testing::GTEST_FLAG(filter)

In this folder we have rusEFI unit tests using https://github.com/google/googletest

Unit tests are not aware of ChibiOS or ARM or else, they are just plain C/C++ which you build for your desktop, not your MCU.

Code Coverage Report

See also https://github.com/rusefi/rusefi/wiki/Build-Server-and-Automation

Triggers Images

Trigger images generation is still a two-step manual process:

Step 1: Invoke unit_tests. One of the unit_tests artifacts is triggers.txt

Step 2: Once we have triggers.txt updated by unit_tests we can invoke firmware/gen_trigger_images.bat in order to generate actual trigger images.