fome-fw/unit_tests
Andrey 1eb1f1a101 tear down Engine god object #4511
just trying different things
2022-09-05 04:00:24 -04:00
..
chibios-mock Simpler thread controller (#4327) 2022-08-02 01:16:13 +03:00
googletest@dcc92d0ab6
native
test_basic_math reducing confusion between library header and rusefi main repo header 2022-09-01 11:35:35 -04:00
tests tear down Engine god object #4511 2022-09-05 02:44:06 -04:00
.cproject
.gitignore
.project
Makefile Lua CAN bus index: let's fail if invalid value specified 2022-08-21 22:31:52 -04:00
adc_inputs.h
boards.cpp
boards.h
ci_gcov.sh
clean_compile.bat
clean_compile.sh
efifeatures.h
engine_test_helper.cpp
engine_test_helper.h
global.h
global_execution_queue.cpp
global_execution_queue.h
global_mocks.cpp
gmock-all.cpp
gtest-all.cpp
jenkins.sh
logicdata.cpp
logicdata.h
logicdata_csv_reader.cpp random progress 2022-08-13 23:33:30 -04:00
logicdata_csv_reader.h
logicdata_sandbox.cpp
main.cpp
map_resize.cpp
map_resize.h
mocks.cpp
mocks.h tear down Engine god object #4511 2022-09-05 04:00:24 -04:00
os_access.h
readme.md
rules.mk Reenable sanitize (#4384) 2022-07-27 09:22:22 +03:00
run_clean_gcov.sh
run_gcov.bat
run_logicdata_sandbox.bat
run_sharded_tests.sh
svnversion.h
test.mk move math (#4353) 2022-07-17 00:16:22 -04:00
triggers.txt Trigger wheel definitions 2022-09-01 02:22:06 +00:00
unit_test_framework.cpp
unit_test_framework.h
unit_test_rules.mk Reenable sanitize (#4384) 2022-07-27 09:22:22 +03:00

readme.md

TL, DR: just follow tests folder as examples

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.

  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.

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.