GCC Code Coverage Report


Directory: ./
File: unit_tests/tests/actuators/test_fuel_pump.cpp
Date: 2025-10-03 00:57:22
Coverage Exec Excl Total
Lines: 100.0% 25 0 25
Functions: 100.0% 3 0 3
Branches: 55.6% 25 0 45
Decisions: -% 0 - 0

Line Branch Decision Exec Source
1 /**
2 * @file test_logic_expression.cpp
3 *
4 * https://sourceforge.net/p/rusefi/tickets/102/
5 *
6 * @date Oct 3, 2014
7 * @author Andrey Belomutskiy, (c) 2012-2020
8 */
9
10 #include "pch.h"
11
12 4 TEST(Actuators, FuelPump) {
13
1/1
✓ Branch 2 taken 1 time.
1 EngineTestHelper eth(engine_type_e::TEST_ENGINE);
14
15 1 FuelPumpController dut;
16
17 // Mock a fuel pump pin
18 1 engineConfiguration->fuelPumpPin = Gpio::A0;
19 // Re-init so it picks up the new config
20
1/1
✓ Branch 1 taken 1 time.
1 enginePins.fuelPumpRelay.init();
21
22 // ECU just started, haven't seen trigger yet
23
1/1
✓ Branch 1 taken 1 time.
1 setTimeNowUs(0.5e6);
24
1/1
✓ Branch 1 taken 1 time.
1 dut.onIgnitionStateChanged(true);
25
1/1
✓ Branch 1 taken 1 time.
1 dut.onSlowCallback();
26 // Pump should be on!
27
2/7
✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
1 EXPECT_TRUE(efiReadPin(Gpio::A0));
28
29 // Long time since ecu start, haven't seen trigger yet
30
1/1
✓ Branch 1 taken 1 time.
1 dut.onIgnitionStateChanged(true);
31
1/1
✓ Branch 1 taken 1 time.
1 advanceTimeUs(10e6);
32
1/1
✓ Branch 1 taken 1 time.
1 dut.onSlowCallback();
33 // Pump should be off!
34
2/7
✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
1 EXPECT_FALSE(efiReadPin(Gpio::A0));
35
36 // Long time since ecu start, just saw a trigger!
37
1/1
✓ Branch 1 taken 1 time.
1 dut.onIgnitionStateChanged(true);
38
1/1
✓ Branch 1 taken 1 time.
1 advanceTimeUs(10e6);
39
2/2
✓ Branch 1 taken 1 time.
✓ Branch 4 taken 1 time.
1 engine->triggerCentral.handleShaftSignal(SHAFT_PRIMARY_FALLING, getTimeNowNt());
40
1/1
✓ Branch 1 taken 1 time.
1 dut.onSlowCallback();
41 // Pump should be on!
42
2/7
✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
1 EXPECT_TRUE(efiReadPin(Gpio::A0));
43
44 // ECU just started, and we just saw a trigger!
45
1/1
✓ Branch 1 taken 1 time.
1 dut.onIgnitionStateChanged(true);
46
2/2
✓ Branch 1 taken 1 time.
✓ Branch 4 taken 1 time.
1 engine->triggerCentral.handleShaftSignal(SHAFT_PRIMARY_FALLING, getTimeNowNt());
47
1/1
✓ Branch 1 taken 1 time.
1 dut.onSlowCallback();
48 // Pump should be on!
49
2/7
✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
1 EXPECT_TRUE(efiReadPin(Gpio::A0));
50 2 }
51