| Line | Branch | Decision | Exec | Source |
|---|---|---|---|---|
| 1 | /* | |||
| 2 | * test_dwell_corner_case_issue_796.cpp | |||
| 3 | * | |||
| 4 | * Created on: Jul 1, 2019 | |||
| 5 | * @author Andrey Belomutskiy, (c) 2012-2020 | |||
| 6 | */ | |||
| 7 | ||||
| 8 | #include "pch.h" | |||
| 9 | ||||
| 10 | 4 | TEST(scheduler, dwellIssue796) { | ||
| 11 | ||||
| 12 |
1/1✓ Branch 2 taken 1 time.
|
1 | EngineTestHelper eth(engine_type_e::TEST_ENGINE); | |
| 13 |
1/1✓ Branch 1 taken 1 time.
|
1 | setupSimpleTestEngineWithMafAndTT_ONE_trigger(ð, IM_SEQUENTIAL); | |
| 14 | ||||
| 15 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.fireTriggerEvents2(4 /* count */ , 600 /* ms */); | |
| 16 | ||||
| 17 | // check if the mode is changed | |||
| 18 |
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(CRANKING, engine->rpmCalculator.getState()); | |
| 19 | // due to isFasterEngineSpinUp=true, we should have already detected RPM! | |||
| 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( 100, round(Sensor::getOrZero(SensorType::Rpm))) << "spinning-RPM#1"; | |
| 21 |
3/8✓ Branch 2 taken 1 time.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 time.
✗ Branch 9 not taken.
✗ Branch 14 not taken.
✗ Branch 17 not taken.
✓ Branch 24 taken 1 time.
✗ Branch 25 not taken.
|
1 | ASSERT_NEAR(300000.0f, engine->rpmCalculator.oneDegreeUs * 180, 1); | |
| 22 | ||||
| 23 | // with just a bit much time between events integer RPM goes down one full percent | |||
| 24 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.smartFireRise(601); | |
| 25 |
1/1✓ Branch 1 taken 1 time.
|
1 | eth.smartFireFall(600); | |
| 26 |
4/10✓ Branch 2 taken 1 time.
✓ Branch 5 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 15 not taken.
✗ Branch 20 not taken.
✗ Branch 23 not taken.
✓ Branch 30 taken 1 time.
✗ Branch 31 not taken.
|
1 | ASSERT_NEAR( 100, round(Sensor::getOrZero(SensorType::Rpm)), EPS3D) << "spinning-RPM#2"; | |
| 27 | // while integer RPM value is 1% away from rpm=100, below oneDegreeUs is much closer to RPM=100 value | |||
| 28 |
3/8✓ Branch 2 taken 1 time.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 time.
✗ Branch 9 not taken.
✗ Branch 14 not taken.
✗ Branch 17 not taken.
✓ Branch 24 taken 1 time.
✗ Branch 25 not taken.
|
1 | ASSERT_NEAR(300250, (int)(engine->rpmCalculator.oneDegreeUs * 180), 1); | |
| 29 | 1 | } | ||
| 30 |