diff --git a/firmware/config/engines/ford_1995_inline_6.cpp b/firmware/config/engines/ford_1995_inline_6.cpp index 3126187f9c..82e78b80aa 100644 --- a/firmware/config/engines/ford_1995_inline_6.cpp +++ b/firmware/config/engines/ford_1995_inline_6.cpp @@ -46,9 +46,6 @@ void setFordInline6() { engineConfiguration->trigger.customSkippedToothCount = 0; engineConfiguration->globalTriggerAngleOffset = 0; - // there is a unit test which cares about this value! - // todo: remove value and adjust unit test - engineConfiguration->extraInjectionOffset = 207.269999; engineConfiguration->clt.config = {-10, 60, 120, 160310, 7700, 1180, 2700}; engineConfiguration->iat.config = {-10, 60, 120, 160310, 7700, 1180, 2700}; diff --git a/unit_tests/tests/trigger/test_trigger_decoder.cpp b/unit_tests/tests/trigger/test_trigger_decoder.cpp index 1c41ea7ba0..a23e379083 100644 --- a/unit_tests/tests/trigger/test_trigger_decoder.cpp +++ b/unit_tests/tests/trigger/test_trigger_decoder.cpp @@ -314,7 +314,7 @@ TEST(misc, testRpmCalculator) { assertEqualsM("fuel #1", 4.5450, engine->injectionDuration); InjectionEvent *ie0 = &engine->injectionEvents.elements[0]; - assertEqualsM("injection angle", 31.365, ie0->injectionStart.angleOffsetFromTriggerEvent); + assertEqualsM("injection angle", 4.095, ie0->injectionStart.angleOffsetFromTriggerEvent); eth.firePrimaryTriggerRise(); ASSERT_EQ(1500, Sensor::getOrZero(SensorType::Rpm)); @@ -327,7 +327,7 @@ TEST(misc, testRpmCalculator) { assertEqualsM("dwell offset", 8.5, ilist->elements[0].dwellPosition.angleOffsetFromTriggerEvent); ASSERT_EQ( 0, eth.engine.triggerCentral.triggerState.getCurrentIndex()) << "index #2"; - ASSERT_EQ( 2, engine->executor.size()) << "queue size/2"; + ASSERT_EQ( 4, engine->executor.size()) << "queue size/2"; { scheduling_s *ev0 = engine->executor.getForUnitTest(0); @@ -349,9 +349,9 @@ TEST(misc, testRpmCalculator) { eth.fireFall(5); ASSERT_EQ( 3, eth.engine.triggerCentral.triggerState.getCurrentIndex()) << "index #3"; ASSERT_EQ( 4, engine->executor.size()) << "queue size 3"; - assertEqualsM("ev 3", start + 13333 - 1515, engine->executor.getForUnitTest(0)->momentX); - assertEqualsM2("ev 5", start + 14277, engine->executor.getForUnitTest(1)->momentX, 2); - assertEqualsM("3/3", start + 14777, engine->executor.getForUnitTest(2)->momentX); + assertEqualsM("ev 3", start + 13333 - 1515 + 2459, engine->executor.getForUnitTest(0)->momentX); + assertEqualsM2("ev 5", start + 14277 + 500, engine->executor.getForUnitTest(1)->momentX, 2); + assertEqualsM("3/3", start + 14777 + 677, engine->executor.getForUnitTest(2)->momentX); engine->executor.clear(); ASSERT_EQ(5, engine->triggerCentral.triggerShape.findAngleIndex(&engine->triggerCentral.triggerFormDetails, 240)); @@ -373,21 +373,19 @@ TEST(misc, testRpmCalculator) { assertEqualsM("fuel #3", 4.5450, eth.engine.injectionDuration); ASSERT_EQ(1500, Sensor::getOrZero(SensorType::Rpm)); - eth.assertInjectorUpEvent("ev 0/2", 0, -4849, 2); - ASSERT_EQ( 6, eth.engine.triggerCentral.triggerState.getCurrentIndex()) << "index #4"; ASSERT_EQ( 4, engine->executor.size()) << "queue size 4"; engine->executor.clear(); eth.fireFall(5); - ASSERT_EQ( 2, engine->executor.size()) << "queue size 5"; + ASSERT_EQ( 0, engine->executor.size()) << "queue size 5"; // todo: assert queue elements engine->executor.clear(); eth.fireRise(5); - ASSERT_EQ( 2, engine->executor.size()) << "queue size 6"; + ASSERT_EQ( 4, engine->executor.size()) << "queue size 6"; assertEqualsM("6/0", start + 40944, engine->executor.getForUnitTest(0)->momentX); assertEqualsM("6/1", start + 41444, engine->executor.getForUnitTest(1)->momentX); engine->executor.clear(); @@ -397,16 +395,14 @@ TEST(misc, testRpmCalculator) { engine->executor.clear(); eth.fireRise(5 /*ms*/); - ASSERT_EQ( 4, engine->executor.size()) << "queue size 8"; - // todo: assert queue elements completely - assertEqualsM("8/0", start + 53333 - 1515, engine->executor.getForUnitTest(0)->momentX); - assertEqualsM2("8/1", start + 54277, engine->executor.getForUnitTest(1)->momentX, 0); - assertEqualsM2("8/2", start + 54777, engine->executor.getForUnitTest(2)->momentX, 0); + ASSERT_EQ( 2, engine->executor.size()) << "queue size 8"; + assertEqualsM("8/0", start + 53333 - 1515 + 2459, engine->executor.getForUnitTest(0)->momentX); + assertEqualsM2("8/1", start + 54277 + 2459 - 1959, engine->executor.getForUnitTest(1)->momentX, 0); engine->executor.clear(); eth.fireFall(5); - ASSERT_EQ( 0, engine->executor.size()) << "queue size 9"; + ASSERT_EQ( 2, engine->executor.size()) << "queue size 9"; engine->executor.clear();