Dashpot for return-to-idle from coasting #5303

third step towards unit test
This commit is contained in:
Andrey 2023-06-11 18:39:03 -04:00
parent 926d113725
commit 77c55b9f88
2 changed files with 3 additions and 2 deletions

View File

@ -148,7 +148,7 @@ percent_t IdleController::getOpenLoop(Phase phase, float rpm, float clt, SensorR
return interpolate2d(rpm, config->iacCoastingRpmBins, config->iacCoasting);
}
percent_t running = getRunningOpenLoop(IIdleController::Phase::Cranking, rpm, clt, tps);
percent_t running = getRunningOpenLoop(phase, rpm, clt, tps);
// Interpolate between cranking and running over a short time
// This clamps once you fall off the end, so no explicit check for >1 required

View File

@ -251,7 +251,8 @@ TEST(idle_v2, openLoopRunningTaper) {
EngineTestHelper eth(engine_type_e::TEST_ENGINE);
StrictMock<MockOpenLoopIdler> dut;
EXPECT_CALL(dut, getRunningOpenLoop(IIdleController::Phase::Cranking, 0, 30, SensorResult(0))).WillRepeatedly(Return(25));
EXPECT_CALL(dut, getRunningOpenLoop(IIdleController::Phase::CrankToIdleTaper, 0, 30, SensorResult(0))).WillRepeatedly(Return(25));
EXPECT_CALL(dut, getRunningOpenLoop(IIdleController::Phase::Running, 0, 30, SensorResult(0))).WillRepeatedly(Return(25));
EXPECT_CALL(dut, getCrankingOpenLoop(30)).WillRepeatedly(Return(75));
// 0 cycles - no taper yet, pure cranking value