rusefi-1/unit_tests
GitHub build-unit-tests Action 55671165a4 Trigger wheel definitions 2021-09-13 15:23:48 +00:00
..
chibios-mock trigger signal debug pins - logic level output #2959 2021-07-15 00:50:29 -04:00
googletest@dcc92d0ab6 Closed loop controller base & ETB testing (#1322) 2020-04-19 17:18:47 -04:00
test_basic_math even more pch (#3112) 2021-08-04 19:30:52 -04:00
tests enable address sanitizer (#3217) 2021-09-05 05:56:59 -04:00
.cproject
.gitignore NB2 hellen-72-rev-d something is off #2958 2021-07-13 11:57:18 -04:00
.project
Makefile set up precompiled header (#2971) 2021-07-25 21:23:23 -04:00
adc_inputs.h baro in sensor model (#2306) 2021-02-07 17:54:41 -06:00
boards.cpp yet more pch (#3068) 2021-08-03 22:05:01 -04:00
boards.h
ci_gcov.sh No latest gcov #1973 2020-11-19 21:57:18 -05:00
compile.bat unit tests pass on Linux fail on Windows #2902 2021-07-04 11:15:05 -04:00
compile.sh update all compile scripts to use available cores rather than a hardcoded value (#2425) 2021-03-06 12:55:46 -05:00
efifeatures.h unit test vss segfault fix (#3090) 2021-08-01 15:05:52 -04:00
engine_test_helper.cpp zero dwell warning at zero RPM #3153 2021-08-16 09:11:30 -04:00
engine_test_helper.h docs 2021-08-31 04:38:35 -04:00
global.h More low-level firmware coverage for the simulator/unit-tests #2656 2021-05-15 05:27:33 -04:00
global_execution_queue.cpp add cancel to scheduler (#3201) 2021-08-27 11:30:06 +03:00
global_execution_queue.h add cancel to scheduler (#3201) 2021-08-27 11:30:06 +03:00
global_mocks.cpp yet more pch (#3068) 2021-08-03 22:05:01 -04:00
globalaccess.h cleanup for pch (#3062) 2021-07-25 20:43:02 -04:00
gmock-all.cpp
gtest-all.cpp
jenkins.sh
logicdata.cpp docs 2021-07-02 22:06:08 -04:00
logicdata.h unit test framework improvements for smoother event execution 2020-07-20 12:45:26 -04:00
logicdata_csv_reader.cpp yet more pch (#3068) 2021-08-03 22:05:01 -04:00
logicdata_csv_reader.h NB2 hellen-72-rev-d something is off #2958 2021-07-13 15:49:36 -04:00
logicdata_sandbox.cpp unit test framework improvements for smoother event execution 2020-07-20 12:45:26 -04:00
main.cpp docs 2021-08-31 05:37:14 -04:00
map_resize.cpp yet more pch (#3068) 2021-08-03 22:05:01 -04:00
map_resize.h
mocks.h add cancel to scheduler (#3201) 2021-08-27 11:30:06 +03:00
os_access.h
readme.md docs 2021-08-31 04:22:26 -04:00
rules.mk set up precompiled header (#2971) 2021-07-25 21:23:23 -04:00
run_clean_gcov.sh update all compile scripts to use available cores rather than a hardcoded value (#2425) 2021-03-06 12:55:46 -05:00
run_gcov.bat docs 2020-06-16 18:25:41 -04:00
run_logicdata_sandbox.bat let's add .logicdata for unit tests 2020-07-19 16:13:55 -04:00
run_sharded_tests.sh shard unit tests (#2906) 2021-07-04 22:28:31 -04:00
svnversion.h occasional tunerstudio CRC errors #1943 2020-11-15 11:53:09 -05:00
test.mk progress 2021-06-26 00:16:41 -04:00
triggers.txt Trigger wheel definitions 2021-09-13 15:23:48 +00:00
unit_test_framework.cpp yet more pch (#3068) 2021-08-03 22:05:01 -04:00
unit_test_framework.h yet more pch (#3068) 2021-08-03 22:05:01 -04:00
unit_test_rules.mk no asan on windows (#3230) 2021-09-07 17:39:04 -04: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.