| Line | Branch | Decision | Exec | Source |
|---|---|---|---|---|
| 1 | /* | |||
| 2 | * test_cam_vvt_input.cpp | |||
| 3 | * | |||
| 4 | * Created on: Jan 13, 2019 | |||
| 5 | * @author Andrey Belomutskiy, (c) 2012-2020 | |||
| 6 | */ | |||
| 7 | ||||
| 8 | #include "pch.h" | |||
| 9 | ||||
| 10 | #include "engine_sniffer.h" | |||
| 11 | extern WaveChart waveChart; | |||
| 12 | ||||
| 13 | 4 | TEST(trigger, testNoStartUpWarningsNoSynchronizationTrigger) { | ||
| 14 |
1/1✓ Branch 2 taken 1 time.
|
1 | EngineTestHelper eth(engine_type_e::TEST_ENGINE); | |
| 15 | // one tooth does not need synchronization it just counts tooth | |||
| 16 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.setTriggerType(trigger_type_e::TT_HALF_MOON); | |
| 17 |
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( 0, round(Sensor::getOrZero(SensorType::Rpm))) << "testNoStartUpWarnings RPM"; | |
| 18 | ||||
| 19 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.fireTriggerEvents2(/*count*/10, /*duration*/50); | |
| 20 |
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(1200, round(Sensor::getOrZero(SensorType::Rpm))) << "testNoStartUpWarnings RPM"; | |
| 21 |
4/10✓ Branch 3 taken 1 time.
✓ Branch 8 taken 1 time.
✗ Branch 13 not taken.
✓ Branch 14 taken 1 time.
✗ Branch 17 not taken.
✗ Branch 20 not taken.
✗ Branch 25 not taken.
✗ Branch 28 not taken.
✓ Branch 35 taken 1 time.
✗ Branch 36 not taken.
|
1 | ASSERT_EQ( 0u, getRecentWarnings()->getCount()) << "warningCounter#testNoStartUpWarningsNoSynchronizationTrigger"; | |
| 22 | 1 | } | ||
| 23 | ||||
| 24 | 4 | TEST(trigger, testNoStartUpWarnings) { | ||
| 25 |
1/1✓ Branch 2 taken 1 time.
|
1 | EngineTestHelper eth(engine_type_e::TEST_ENGINE); | |
| 26 | // for this test we need a trigger with isSynchronizationNeeded=true | |||
| 27 | 1 | engineConfiguration->trigger.customTotalToothCount = 3; | ||
| 28 | 1 | engineConfiguration->trigger.customSkippedToothCount = 1; | ||
| 29 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.setTriggerType(trigger_type_e::TT_TOOTHED_WHEEL); | |
| 30 |
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( 0, round(Sensor::getOrZero(SensorType::Rpm))) << "testNoStartUpWarnings RPM"; | |
| 31 | ||||
| 32 |
2/2✓ Branch 0 taken 10 times.
✓ Branch 1 taken 1 time.
|
2/2✓ Decision 'true' taken 10 times.
✓ Decision 'false' taken 1 time.
|
11 | for (int i = 0;i < 10;i++) { |
| 33 |
1/1✓ Branch 1 taken 10 times.
|
10 | eth.fireRise(50); | |
| 34 |
1/1✓ Branch 1 taken 10 times.
|
10 | eth.fireFall(50); | |
| 35 |
1/1✓ Branch 1 taken 10 times.
|
10 | eth.fireRise(50); | |
| 36 |
1/1✓ Branch 1 taken 10 times.
|
10 | eth.fireFall(150); | |
| 37 | } | |||
| 38 | ||||
| 39 |
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(400, round(Sensor::getOrZero(SensorType::Rpm))) << "testNoStartUpWarnings RPM"; | |
| 40 |
4/10✓ Branch 3 taken 1 time.
✓ Branch 8 taken 1 time.
✗ Branch 13 not taken.
✓ Branch 14 taken 1 time.
✗ Branch 17 not taken.
✗ Branch 20 not taken.
✗ Branch 25 not taken.
✗ Branch 28 not taken.
✓ Branch 35 taken 1 time.
✗ Branch 36 not taken.
|
1 | ASSERT_EQ( 0u, getRecentWarnings()->getCount()) << "warningCounter#testNoStartUpWarnings"; | |
| 41 | // now let's post something unneeded | |||
| 42 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.fireRise(50); | |
| 43 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.fireFall(50); | |
| 44 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.fireRise(50); // this is noise | |
| 45 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.fireFall(50); // this is noise | |
| 46 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.fireRise(50); | |
| 47 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.fireFall(150); | |
| 48 |
2/2✓ Branch 0 taken 1 time.
✓ Branch 1 taken 1 time.
|
2/2✓ Decision 'true' taken 1 time.
✓ Decision 'false' taken 1 time.
|
2 | for (int i = 0;i < 1;i++) { |
| 49 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.fireRise(50); | |
| 50 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.fireFall(50); | |
| 51 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.fireRise(50); | |
| 52 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.fireFall(150); | |
| 53 | } | |||
| 54 |
3/8✓ Branch 3 taken 1 time.
✓ Branch 8 taken 1 time.
✗ Branch 13 not taken.
✓ Branch 14 taken 1 time.
✗ Branch 17 not taken.
✗ Branch 20 not taken.
✗ Branch 25 not taken.
✗ Branch 28 not taken.
|
1 | EXPECT_EQ( 1u, getRecentWarnings()->getCount()) << "warningCounter#testNoStartUpWarnings CUSTOM_SYNC_COUNT_MISMATCH expected"; | |
| 55 |
3/7✓ Branch 2 taken 1 time.
✓ Branch 7 taken 1 time.
✗ Branch 11 not taken.
✓ Branch 12 taken 1 time.
✗ Branch 15 not taken.
✗ Branch 20 not taken.
✗ Branch 23 not taken.
|
1 | EXPECT_EQ(ObdCode::CUSTOM_PRIMARY_TOO_MANY_TEETH, getRecentWarnings()->get(0).Code); | |
| 56 | 1 | } | ||
| 57 | ||||
| 58 | 4 | TEST(trigger, testNoisyInput) { | ||
| 59 |
1/1✓ Branch 2 taken 1 time.
|
1 | EngineTestHelper eth(engine_type_e::TEST_ENGINE); | |
| 60 | ||||
| 61 |
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(0, Sensor::getOrZero(SensorType::Rpm)); | |
| 62 | ||||
| 63 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.firePrimaryTriggerRise(); | |
| 64 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.firePrimaryTriggerFall(); | |
| 65 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.firePrimaryTriggerRise(); | |
| 66 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.firePrimaryTriggerFall(); | |
| 67 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.firePrimaryTriggerRise(); | |
| 68 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.firePrimaryTriggerFall(); | |
| 69 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.firePrimaryTriggerRise(); | |
| 70 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.firePrimaryTriggerFall(); | |
| 71 |
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(0, Sensor::getOrZero(SensorType::Rpm)); | |
| 72 | ||||
| 73 |
3/7✓ Branch 3 taken 1 time.
✓ Branch 8 taken 1 time.
✗ Branch 13 not taken.
✓ Branch 14 taken 1 time.
✗ Branch 17 not taken.
✗ Branch 22 not taken.
✗ Branch 25 not taken.
|
1 | EXPECT_EQ(1u, getRecentWarnings()->getCount()); | |
| 74 |
3/7✓ Branch 2 taken 1 time.
✓ Branch 7 taken 1 time.
✗ Branch 11 not taken.
✓ Branch 12 taken 1 time.
✗ Branch 15 not taken.
✗ Branch 20 not taken.
✗ Branch 23 not taken.
|
1 | EXPECT_EQ(ObdCode::CUSTOM_PRIMARY_NOT_ENOUGH_TEETH, getRecentWarnings()->get(0).Code); | |
| 75 | 1 | } | ||
| 76 | ||||
| 77 | 4 | TEST(trigger, testCamInput) { | ||
| 78 |
1/1✓ Branch 2 taken 1 time.
|
1 | EngineTestHelper eth(engine_type_e::TEST_ENGINE); | |
| 79 | 1 | engineConfiguration->globalTriggerAngleOffset = -37; | ||
| 80 | 1 | engineConfiguration->crankingTimingAngle = 3; | ||
| 81 | 1 | engineConfiguration->triggerInputPins[1] = Gpio::Unassigned; | ||
| 82 | ||||
| 83 | // changing to 'ONE TOOTH' trigger on CRANK with CAM/VVT | |||
| 84 |
1/1✓ Branch 1 taken 1 time.
|
1 | setCrankOperationMode(); | |
| 85 | 1 | engineConfiguration->vvtMode[0] = VVT_SINGLE_TOOTH; | ||
| 86 | 1 | engineConfiguration->vvtOffsets[0] = 360; | ||
| 87 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.setTriggerType(trigger_type_e::TT_HALF_MOON); | |
| 88 | 1 | engineConfiguration->camInputs[0] = Gpio::A10; // we just need to indicate that we have CAM | ||
| 89 | ||||
| 90 |
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( 0, round(Sensor::getOrZero(SensorType::Rpm))) << "testCamInput RPM"; | |
| 91 | ||||
| 92 |
2/2✓ Branch 0 taken 5 times.
✓ Branch 1 taken 1 time.
|
2/2✓ Decision 'true' taken 5 times.
✓ Decision 'false' taken 1 time.
|
6 | for (int i = 0; i < 5;i++) { |
| 93 |
1/1✓ Branch 1 taken 5 times.
|
5 | eth.fireRise(25); | |
| 94 |
1/1✓ Branch 1 taken 5 times.
|
5 | eth.fireFall(25); | |
| 95 | } | |||
| 96 | ||||
| 97 |
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(1200, round(Sensor::getOrZero(SensorType::Rpm))); | |
| 98 |
4/10✓ Branch 3 taken 1 time.
✓ Branch 8 taken 1 time.
✗ Branch 13 not taken.
✓ Branch 14 taken 1 time.
✗ Branch 17 not taken.
✗ Branch 20 not taken.
✗ Branch 25 not taken.
✗ Branch 28 not taken.
✓ Branch 35 taken 1 time.
✗ Branch 36 not taken.
|
1 | ASSERT_EQ(0u, getRecentWarnings()->getCount()) << "warningCounter#testCamInput"; | |
| 99 | ||||
| 100 |
2/2✓ Branch 0 taken 600 times.
✓ Branch 1 taken 1 time.
|
2/2✓ Decision 'true' taken 600 times.
✓ Decision 'false' taken 1 time.
|
601 | for (int i = 0; i < 600;i++) { |
| 101 |
1/1✓ Branch 1 taken 600 times.
|
600 | eth.fireRise(25); | |
| 102 |
1/1✓ Branch 1 taken 600 times.
|
600 | eth.fireFall(25); | |
| 103 | } | |||
| 104 | ||||
| 105 | // asserting that lack of camshaft signal would be detecting | |||
| 106 |
4/10✓ Branch 3 taken 1 time.
✓ Branch 8 taken 1 time.
✗ Branch 13 not taken.
✓ Branch 14 taken 1 time.
✗ Branch 17 not taken.
✗ Branch 20 not taken.
✗ Branch 25 not taken.
✗ Branch 28 not taken.
✓ Branch 35 taken 1 time.
✗ Branch 36 not taken.
|
1 | ASSERT_EQ(1u, getRecentWarnings()->getCount()) << "warningCounter#testCamInput #2"; | |
| 107 |
4/10✓ Branch 2 taken 1 time.
✓ Branch 7 taken 1 time.
✗ Branch 11 not taken.
✓ Branch 12 taken 1 time.
✗ Branch 15 not taken.
✗ Branch 18 not taken.
✗ Branch 23 not taken.
✗ Branch 26 not taken.
✓ Branch 33 taken 1 time.
✗ Branch 34 not taken.
|
1 | ASSERT_EQ(ObdCode::OBD_Camshaft_Position_Sensor_Circuit_Range_Performance, getRecentWarnings()->get(0).Code) << "@0"; | |
| 108 |
1/1✓ Branch 1 taken 1 time.
|
1 | getRecentWarnings()->clear(); | |
| 109 | ||||
| 110 |
2/2✓ Branch 0 taken 600 times.
✓ Branch 1 taken 1 time.
|
2/2✓ Decision 'true' taken 600 times.
✓ Decision 'false' taken 1 time.
|
601 | for (int i = 0; i < 600;i++) { |
| 111 |
1/1✓ Branch 1 taken 600 times.
|
600 | eth.moveTimeForwardUs(MS2US(10)); | |
| 112 | ||||
| 113 | // cam comes every other crank rev | |||
| 114 |
2/2✓ Branch 0 taken 300 times.
✓ Branch 1 taken 300 times.
|
2/2✓ Decision 'true' taken 300 times.
✓ Decision 'false' taken 300 times.
|
600 | if (i % 2 == 0) { |
| 115 |
2/2✓ Branch 1 taken 300 times.
✓ Branch 4 taken 300 times.
|
300 | hwHandleVvtCamSignal(TriggerValue::RISE, getTimeNowNt(), 0); | |
| 116 | } | |||
| 117 | ||||
| 118 |
1/1✓ Branch 1 taken 600 times.
|
600 | eth.moveTimeForwardUs(MS2US(15)); | |
| 119 | ||||
| 120 |
1/1✓ Branch 1 taken 600 times.
|
600 | eth.firePrimaryTriggerRise(); | |
| 121 |
3/7✓ Branch 3 taken 600 times.
✓ Branch 7 taken 600 times.
✗ Branch 12 not taken.
✓ Branch 13 taken 600 times.
✗ Branch 16 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
600 | EXPECT_EQ(1200, round(Sensor::getOrZero(SensorType::Rpm))); | |
| 122 | ||||
| 123 |
1/1✓ Branch 1 taken 600 times.
|
600 | eth.moveTimeForwardUs(MS2US(25)); | |
| 124 |
1/1✓ Branch 1 taken 600 times.
|
600 | eth.firePrimaryTriggerFall(); | |
| 125 | } | |||
| 126 | ||||
| 127 | // asserting that error code has cleared | |||
| 128 |
4/10✓ Branch 3 taken 1 time.
✓ Branch 8 taken 1 time.
✗ Branch 13 not taken.
✓ Branch 14 taken 1 time.
✗ Branch 17 not taken.
✗ Branch 20 not taken.
✗ Branch 25 not taken.
✗ Branch 28 not taken.
✓ Branch 35 taken 1 time.
✗ Branch 36 not taken.
|
1 | ASSERT_EQ(0u, getRecentWarnings()->getCount()) << "warningCounter#testCamInput #3"; | |
| 129 |
3/7✓ Branch 2 taken 1 time.
✓ Branch 5 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 20 not taken.
|
1 | EXPECT_NEAR_M3(71, engine->triggerCentral.getVVTPosition(0, 0)); | |
| 130 | 1 | } | ||
| 131 | ||||
| 132 | 4 | TEST(trigger, testNB2CamInput) { | ||
| 133 |
1/1✓ Branch 2 taken 1 time.
|
1 | EngineTestHelper eth(engine_type_e::MAZDA_MIATA_NB2); | |
| 134 | ||||
| 135 | 1 | engineConfiguration->isFasterEngineSpinUpEnabled = false; | ||
| 136 | ||||
| 137 |
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( 0, round(Sensor::getOrZero(SensorType::Rpm))); | |
| 138 |
2/2✓ Branch 0 taken 6 times.
✓ Branch 1 taken 1 time.
|
2/2✓ Decision 'true' taken 6 times.
✓ Decision 'false' taken 1 time.
|
7 | for (int i = 0; i < 6;i++) { |
| 139 |
1/1✓ Branch 1 taken 6 times.
|
6 | eth.fireRise(25 * 70 / 180); | |
| 140 |
1/1✓ Branch 1 taken 6 times.
|
6 | eth.fireRise(25 * 110 / 180); | |
| 141 |
4/9✓ Branch 3 taken 6 times.
✓ Branch 7 taken 6 times.
✗ Branch 12 not taken.
✓ Branch 13 taken 6 times.
✗ Branch 16 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
✓ Branch 31 taken 6 times.
✗ Branch 32 not taken.
|
6 | ASSERT_EQ( 0, round(Sensor::getOrZero(SensorType::Rpm))); | |
| 142 | } | |||
| 143 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.fireRise(25 * 70 / 180); | |
| 144 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.fireRise(25 * 110 / 180); | |
| 145 | // first time we have RPM | |||
| 146 |
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(1250, round(Sensor::getOrZero(SensorType::Rpm))); | |
| 147 | ||||
| 148 | 1 | int totalRevolutionCountBeforeVvtSync = 5; | ||
| 149 | // need to be out of VVT sync to see VVT sync in action | |||
| 150 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.fireRise(25 * 70 / 180); | |
| 151 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.fireRise(25 * 110 / 180); | |
| 152 |
4/9✓ Branch 3 taken 1 time.
✓ Branch 6 taken 1 time.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 time.
✗ Branch 14 not taken.
✗ Branch 19 not taken.
✗ Branch 22 not taken.
✓ Branch 29 taken 1 time.
✗ Branch 30 not taken.
|
1 | ASSERT_EQ(totalRevolutionCountBeforeVvtSync, engine->triggerCentral.triggerState.getSynchronizationCounter()); | |
| 153 |
2/8✗ Branch 5 not taken.
✓ Branch 6 taken 1 time.
✗ Branch 9 not taken.
✗ Branch 14 not taken.
✗ Branch 18 not taken.
✗ Branch 21 not taken.
✓ Branch 30 taken 1 time.
✗ Branch 31 not taken.
|
1 | ASSERT_TRUE((totalRevolutionCountBeforeVvtSync % SYMMETRICAL_CRANK_SENSOR_DIVIDER) != 0); | |
| 154 | ||||
| 155 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.moveTimeForwardUs(MS2US(3)); // shifting VVT phase a few angles | |
| 156 | ||||
| 157 |
2/2✓ Branch 1 taken 1 time.
✓ Branch 4 taken 1 time.
|
1 | hwHandleVvtCamSignal(true, getTimeNowNt(), 0); | |
| 158 | ||||
| 159 | // first gap - long | |||
| 160 | ||||
| 161 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.moveTimeForwardUs(MS2US(130)); | |
| 162 |
2/2✓ Branch 1 taken 1 time.
✓ Branch 4 taken 1 time.
|
1 | hwHandleVvtCamSignal(false, getTimeNowNt(), 0); | |
| 163 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.moveTimeForwardUs(MS2US( 30)); | |
| 164 |
2/2✓ Branch 1 taken 1 time.
✓ Branch 4 taken 1 time.
|
1 | hwHandleVvtCamSignal(true, getTimeNowNt(), 0); | |
| 165 | ||||
| 166 | // second gap - short | |||
| 167 | ||||
| 168 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.moveTimeForwardUs(MS2US(10)); | |
| 169 |
2/2✓ Branch 1 taken 1 time.
✓ Branch 4 taken 1 time.
|
1 | hwHandleVvtCamSignal(false, getTimeNowNt(), 0); | |
| 170 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.moveTimeForwardUs(MS2US(10)); | |
| 171 |
2/2✓ Branch 1 taken 1 time.
✓ Branch 4 taken 1 time.
|
1 | hwHandleVvtCamSignal(true, getTimeNowNt(), 0); | |
| 172 | ||||
| 173 |
4/9✓ Branch 2 taken 1 time.
✓ Branch 5 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 20 not taken.
✓ Branch 27 taken 1 time.
✗ Branch 28 not taken.
|
1 | ASSERT_FLOAT_EQ(0, engine->triggerCentral.getVVTPosition(0, 0)); | |
| 174 |
4/9✓ Branch 3 taken 1 time.
✓ Branch 6 taken 1 time.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 time.
✗ Branch 14 not taken.
✗ Branch 19 not taken.
✗ Branch 22 not taken.
✓ Branch 29 taken 1 time.
✗ Branch 30 not taken.
|
1 | ASSERT_EQ(totalRevolutionCountBeforeVvtSync, engine->triggerCentral.triggerState.getSynchronizationCounter()); | |
| 175 | ||||
| 176 | // Third gap - long | |||
| 177 | ||||
| 178 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.moveTimeForwardUs(MS2US(130)); | |
| 179 |
2/2✓ Branch 1 taken 1 time.
✓ Branch 4 taken 1 time.
|
1 | hwHandleVvtCamSignal(false, getTimeNowNt(), 0); | |
| 180 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.moveTimeForwardUs(MS2US( 30)); | |
| 181 |
2/2✓ Branch 1 taken 1 time.
✓ Branch 4 taken 1 time.
|
1 | hwHandleVvtCamSignal(true, getTimeNowNt(), 0); | |
| 182 | ||||
| 183 |
3/7✓ Branch 2 taken 1 time.
✓ Branch 5 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 20 not taken.
|
1 | EXPECT_NEAR(290.5f, engine->triggerCentral.getVVTPosition(0, 0), EPS2D); | |
| 184 | // actually position based on VVT! | |||
| 185 |
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(totalRevolutionCountBeforeVvtSync + 3, engine->triggerCentral.triggerState.getSynchronizationCounter()); | |
| 186 | ||||
| 187 |
3/7✓ 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.
|
1 | EXPECT_EQ(40, waveChart.getSize()); | |
| 188 | 1 | } | ||
| 189 |