rusefi/unit_tests
rusefillc 4e539dfa3e ETB: we require redundancy at runtime, not at initialization time. that would allow for Lua pedal to appear later on.
only:alphax-4k-gdi
2024-11-13 11:27:58 -05:00
..
chibios-mock
googletest@c231e6f5b1
test-framework [was: 3/0 trigger syncs faster with Single Tooth than 6G72 Cam] 6G72 Cam is not well #6798 2024-09-11 20:33:45 -04:00
test_basic_math
tests ETB: we require redundancy at runtime, not at initialization time. that would allow for Lua pedal to appear later on. 2024-11-13 11:27:58 -05:00
.cproject
.gitignore
.project
Makefile
adc_inputs.h
boards.cpp
boards.h
ci_gcov.sh
clean_compile.bat
clean_compile.sh
efifeatures.h pretty dead 2024-09-04 23:49:35 -04:00
global.h
global_mocks.cpp https://sourceware.org/bugzilla/show_bug.cgi?id=9687 Weak symbols not working on mingw32 2024-08-03 12:24:06 -04:00
gmock-all.cpp
gtest-all.cpp
logicdata.cpp
logicdata.h
main.cpp
mocks.cpp only:testability 2024-09-18 00:33:15 -04:00
mocks.h lua pedal is a thing 2024-11-11 20:57:12 -05:00
readme.md
rules.mk
run_clean_gcov.sh
run_gcov.bat
run_logicdata_sandbox.bat
run_sharded_tests.sh
test.mk
triggers.txt Trigger wheel definitions 2024-11-04 15:37:57 +00:00
unit_test_rules.mk https://sourceware.org/bugzilla/show_bug.cgi?id=9687 Weak symbols not working on mingw32 2024-08-03 12:24:06 -04:00

readme.md

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

TL, DR: just follow tests folder as examples. gcc/makefile/gtest

  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 use command line like build/rusefi_test --gtest_filter=*TEST_NAME* 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.