Line | Branch | Decision | Exec | Source |
---|---|---|---|---|
1 | ||||
2 | ||||
3 | #include "pch.h" | |||
4 | #include "trigger_central.h" | |||
5 | #include "spark_logic.h" | |||
6 | ||||
7 | 4 | TEST(trigger, map_cam_by_magic_point) { | ||
8 | ||||
9 |
1/1✓ Branch 2 taken 1 time.
|
1 | EngineTestHelper eth(engine_type_e::TEST_CRANK_ENGINE); | |
10 | 1 | engineConfiguration->isFasterEngineSpinUpEnabled = false; | ||
11 | ||||
12 | 1 | engineConfiguration->isPhaseSyncRequiredForIgnition = true; | ||
13 | ||||
14 | 1 | engineConfiguration->camInputs[0] = Gpio::A0; | ||
15 | 1 | engineConfiguration->vvtMode[0] = VVT_MAP_V_TWIN; | ||
16 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.engine.periodicFastCallback(); // trigger limp mode | |
17 |
4/10✓ Branch 4 taken 1 time.
✓ Branch 7 taken 1 time.
✗ Branch 14 not taken.
✓ Branch 15 taken 1 time.
✗ Branch 18 not taken.
✗ Branch 23 not taken.
✗ Branch 27 not taken.
✗ Branch 30 not taken.
✓ Branch 39 taken 1 time.
✗ Branch 40 not taken.
|
1 | ASSERT_FALSE(getLimpManager()->allowIgnition()); | |
18 |
4/10✓ Branch 4 taken 1 time.
✓ Branch 7 taken 1 time.
✗ Branch 14 not taken.
✓ Branch 15 taken 1 time.
✗ Branch 18 not taken.
✗ Branch 23 not taken.
✗ Branch 27 not taken.
✗ Branch 30 not taken.
✓ Branch 39 taken 1 time.
✗ Branch 40 not taken.
|
1 | ASSERT_FALSE(getLimpManager()->allowInjection()); | |
19 |
5/10✓ Branch 3 taken 1 time.
✓ Branch 6 taken 1 time.
✓ Branch 10 taken 1 time.
✗ Branch 15 not taken.
✓ Branch 16 taken 1 time.
✗ Branch 19 not taken.
✗ Branch 24 not taken.
✗ Branch 27 not taken.
✓ Branch 34 taken 1 time.
✗ Branch 35 not taken.
|
1 | ASSERT_EQ(ClearReason::EnginePhase, getLimpManager()->allowIgnition().reason); | |
20 |
5/10✓ Branch 3 taken 1 time.
✓ Branch 6 taken 1 time.
✓ Branch 10 taken 1 time.
✗ Branch 15 not taken.
✓ Branch 16 taken 1 time.
✗ Branch 19 not taken.
✗ Branch 24 not taken.
✗ Branch 27 not taken.
✓ Branch 34 taken 1 time.
✗ Branch 35 not taken.
|
1 | ASSERT_EQ(ClearReason::EnginePhase, getLimpManager()->allowInjection().reason); | |
21 | ||||
22 | 1 | engine->outputChannels.instantMAPValue = 100; | ||
23 | ||||
24 | 1 | engineConfiguration->mapCamDetectionAnglePosition = 90; | ||
25 | ||||
26 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.smartFireTriggerEvents2(/*count*/10, /*delayMs*/200); | |
27 |
4/10✓ Branch 3 taken 1 time.
✓ Branch 7 taken 1 time.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 time.
✗ Branch 16 not taken.
✗ Branch 19 not taken.
✗ Branch 24 not taken.
✗ Branch 27 not taken.
✓ Branch 34 taken 1 time.
✗ Branch 35 not taken.
|
1 | ASSERT_EQ(150, Sensor::getOrZero(SensorType::Rpm)) << "RPM"; | |
28 | ||||
29 |
3/8✓ Branch 3 taken 1 time.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 time.
✗ Branch 11 not taken.
✗ Branch 16 not taken.
✗ Branch 19 not taken.
✓ Branch 26 taken 1 time.
✗ Branch 27 not taken.
|
1 | ASSERT_EQ(1, engine->triggerCentral.mapVvt_sync_counter); | |
30 |
3/8✓ Branch 3 taken 1 time.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 time.
✗ Branch 11 not taken.
✗ Branch 16 not taken.
✗ Branch 19 not taken.
✓ Branch 26 taken 1 time.
✗ Branch 27 not taken.
|
1 | ASSERT_EQ(0, engine->triggerCentral.triggerState.camResyncCounter); | |
31 | ||||
32 | // Nothing should have been scheduled yet | |||
33 |
4/9✓ Branch 3 taken 1 time.
✓ Branch 7 taken 1 time.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 time.
✗ Branch 16 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
✓ Branch 31 taken 1 time.
✗ Branch 32 not taken.
|
1 | ASSERT_EQ(1, engine->scheduler.size()); | |
34 |
1/1✓ Branch 1 taken 1 time.
|
1 | scheduling_s* next = engine->scheduler.getForUnitTest(0); | |
35 | 1 | auto const fireSparkAndPrepareNextScheduleAction{ action_s::make<fireSparkAndPrepareNextSchedule>((IgnitionEvent*){})}; | ||
36 | ||||
37 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.assertEvent5("spark down#0", 0, fireSparkAndPrepareNextScheduleAction, 188333); | |
38 | ||||
39 | 1 | engine->outputChannels.instantMAPValue = 120; | ||
40 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.smartFireTriggerEvents2(/*count*/4, /*delayMs*/200); | |
41 | ||||
42 |
3/8✓ Branch 3 taken 1 time.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 time.
✗ Branch 11 not taken.
✗ Branch 16 not taken.
✗ Branch 19 not taken.
✓ Branch 26 taken 1 time.
✗ Branch 27 not taken.
|
1 | ASSERT_EQ(2, engine->triggerCentral.mapVvt_sync_counter); | |
43 |
3/8✓ Branch 3 taken 1 time.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 time.
✗ Branch 11 not taken.
✗ Branch 16 not taken.
✗ Branch 19 not taken.
✓ Branch 26 taken 1 time.
✗ Branch 27 not taken.
|
1 | ASSERT_EQ(1, engine->triggerCentral.triggerState.camResyncCounter); | |
44 |
3/8✓ Branch 3 taken 1 time.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 time.
✗ Branch 11 not taken.
✗ Branch 16 not taken.
✗ Branch 19 not taken.
✓ Branch 26 taken 1 time.
✗ Branch 27 not taken.
|
1 | ASSERT_EQ(10, engine->triggerCentral.mapVvt_MAP_AT_CYCLE_COUNT); | |
45 | ||||
46 |
5/10✓ Branch 3 taken 1 time.
✓ Branch 6 taken 1 time.
✓ Branch 10 taken 1 time.
✗ Branch 15 not taken.
✓ Branch 16 taken 1 time.
✗ Branch 19 not taken.
✗ Branch 24 not taken.
✗ Branch 27 not taken.
✓ Branch 34 taken 1 time.
✗ Branch 35 not taken.
|
1 | ASSERT_EQ(ClearReason::None, getLimpManager()->allowIgnition().reason); | |
47 |
5/10✓ Branch 3 taken 1 time.
✓ Branch 6 taken 1 time.
✓ Branch 10 taken 1 time.
✗ Branch 15 not taken.
✓ Branch 16 taken 1 time.
✗ Branch 19 not taken.
✗ Branch 24 not taken.
✗ Branch 27 not taken.
✓ Branch 34 taken 1 time.
✗ Branch 35 not taken.
|
1 | ASSERT_EQ(ClearReason::None, getLimpManager()->allowInjection().reason); | |
48 | ||||
49 | // We have "VVT" sync, things should be scheduled! | |||
50 |
4/9✓ Branch 3 taken 1 time.
✓ Branch 7 taken 1 time.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 time.
✗ Branch 16 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
✓ Branch 31 taken 1 time.
✗ Branch 32 not taken.
|
1 | ASSERT_EQ(2, engine->scheduler.size()); | |
51 | 1 | auto const turnSparkPinHighStartChargingAction{ action_s::make<turnSparkPinHighStartCharging>((IgnitionEvent*){})}; | ||
52 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.assertEvent5("spark down#0", 0, turnSparkPinHighStartChargingAction, 185333); | |
53 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.assertEvent5("spark down#1", 1, fireSparkAndPrepareNextScheduleAction, 188333); | |
54 | 1 | } | ||
55 |