Line | Branch | Decision | Exec | Source |
---|---|---|---|---|
1 | // | |||
2 | // Created by kifir on 5/21/24. | |||
3 | // | |||
4 | ||||
5 | #include "pch.h" | |||
6 | ||||
7 | namespace { | |||
8 | constexpr int TEST_LAUNCH_RPM = 2390; | |||
9 | constexpr int TEST_LAUNCH_RPM_WINDOW = 170; | |||
10 | constexpr int TEST_PRELAUNCH_RPM = TEST_LAUNCH_RPM - TEST_LAUNCH_RPM_WINDOW; | |||
11 | ||||
12 | 3 | void setUpTestParameters() { | ||
13 | 3 | engineConfiguration->launchControlEnabled = true; | ||
14 | 3 | engineConfiguration->launchRpm = TEST_LAUNCH_RPM; | ||
15 | 3 | engineConfiguration->launchRpmWindow = TEST_LAUNCH_RPM_WINDOW; | ||
16 | 3 | engineConfiguration->launchSparkCutEnable = true; | ||
17 | 3 | } | ||
18 | ||||
19 | 17 | void updateRpm(const int rpm) { | ||
20 | 17 | Sensor::setMockValue(SensorType::Rpm, rpm); | ||
21 | 17 | engine->launchController.update(); | ||
22 | 17 | } | ||
23 | ||||
24 | 4 | TEST(rpmCondition, increasingRpm) { | ||
25 |
1/1✓ Branch 2 taken 1 time.
|
1 | EngineTestHelper eth(engine_type_e::TEST_ENGINE); | |
26 | ||||
27 | 1 | setUpTestParameters(); | ||
28 | ||||
29 | /* RPM hasn't reached Launch RPM parameter - rpmCondition isn't satisfied: */ | |||
30 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmLaunchCondition); // check default value | |
31 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmPreLaunchCondition); // check default value | |
32 | ||||
33 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_PRELAUNCH_RPM - 1); | |
34 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmLaunchCondition); | |
35 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmPreLaunchCondition); | |
36 | ||||
37 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_PRELAUNCH_RPM); | |
38 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmLaunchCondition); | |
39 |
1/6✗ 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.
|
1 | EXPECT_TRUE(engine->launchController.rpmPreLaunchCondition); | |
40 | ||||
41 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_LAUNCH_RPM - 1); | |
42 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmLaunchCondition); | |
43 |
1/6✗ 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.
|
1 | EXPECT_TRUE(engine->launchController.rpmPreLaunchCondition); | |
44 | ||||
45 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_LAUNCH_RPM); | |
46 | /* RPM reached Launch RPM parameter - now rpmCondition is satisfied: */ | |||
47 |
1/6✗ 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.
|
1 | EXPECT_TRUE(engine->launchController.rpmLaunchCondition); | |
48 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmPreLaunchCondition); | |
49 | 2 | } | ||
50 | ||||
51 | 4 | TEST(rpmCondition, decreasingRpm) { | ||
52 |
1/1✓ Branch 2 taken 1 time.
|
1 | EngineTestHelper eth(engine_type_e::TEST_ENGINE); | |
53 | ||||
54 | 1 | setUpTestParameters(); | ||
55 | ||||
56 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_LAUNCH_RPM); | |
57 | /* RPM reached Launch RPM parameter - rpmCondition is satisfied: */ | |||
58 |
1/6✗ 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.
|
1 | EXPECT_TRUE(engine->launchController.rpmLaunchCondition); | |
59 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmPreLaunchCondition); | |
60 | ||||
61 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_LAUNCH_RPM - 1); | |
62 | /* RPM is below Launch RPM parameter, but still in Launch Control Window - so rpmCondition is still satisfied: */ | |||
63 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmLaunchCondition); | |
64 |
1/6✗ 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.
|
1 | EXPECT_TRUE(engine->launchController.rpmPreLaunchCondition); | |
65 | ||||
66 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_PRELAUNCH_RPM); | |
67 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmLaunchCondition); | |
68 |
1/6✗ 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.
|
1 | EXPECT_TRUE(engine->launchController.rpmPreLaunchCondition); | |
69 | ||||
70 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_PRELAUNCH_RPM - 1); | |
71 | /* RPM went down below Launch Control Window parameter - now rpmCondition is not satisfied: */ | |||
72 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmLaunchCondition); | |
73 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmPreLaunchCondition); | |
74 | 2 | } | ||
75 | ||||
76 | 4 | TEST(rpmCondition, rpmOscillation) { | ||
77 |
1/1✓ Branch 2 taken 1 time.
|
1 | EngineTestHelper eth(engine_type_e::TEST_ENGINE); | |
78 | ||||
79 | 1 | setUpTestParameters(); | ||
80 | ||||
81 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_LAUNCH_RPM); | |
82 | /* RPM reached Launch RPM parameter - rpmCondition is satisfied: */ | |||
83 |
1/6✗ 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.
|
1 | EXPECT_TRUE(engine->launchController.rpmLaunchCondition); | |
84 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmPreLaunchCondition); | |
85 | ||||
86 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_LAUNCH_RPM - 1); | |
87 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmLaunchCondition); | |
88 |
1/6✗ 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.
|
1 | EXPECT_TRUE(engine->launchController.rpmPreLaunchCondition); | |
89 | ||||
90 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_LAUNCH_RPM + 1); | |
91 |
1/6✗ 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.
|
1 | EXPECT_TRUE(engine->launchController.rpmLaunchCondition); | |
92 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmPreLaunchCondition); | |
93 | ||||
94 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_PRELAUNCH_RPM); | |
95 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmLaunchCondition); | |
96 |
1/6✗ 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.
|
1 | EXPECT_TRUE(engine->launchController.rpmPreLaunchCondition); | |
97 | ||||
98 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_LAUNCH_RPM + 2); | |
99 |
1/6✗ 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.
|
1 | EXPECT_TRUE(engine->launchController.rpmLaunchCondition); | |
100 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmPreLaunchCondition); | |
101 | ||||
102 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_PRELAUNCH_RPM - 1); | |
103 | /* RPM went down below Launch Control Window parameter - now rpmCondition is not satisfied: */ | |||
104 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmLaunchCondition); | |
105 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmPreLaunchCondition); | |
106 | ||||
107 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_PRELAUNCH_RPM); | |
108 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmLaunchCondition); | |
109 |
1/6✗ 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.
|
1 | EXPECT_TRUE(engine->launchController.rpmPreLaunchCondition); | |
110 | ||||
111 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_LAUNCH_RPM - 1); | |
112 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmLaunchCondition); | |
113 |
1/6✗ 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.
|
1 | EXPECT_TRUE(engine->launchController.rpmPreLaunchCondition); | |
114 | ||||
115 | /* RPM reached Launch RPM parameter again - now rpmCondition is satisfied: */ | |||
116 |
1/1✓ Branch 1 taken 1 time.
|
1 | updateRpm(TEST_LAUNCH_RPM); | |
117 |
1/6✗ 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.
|
1 | EXPECT_TRUE(engine->launchController.rpmLaunchCondition); | |
118 |
1/6✗ 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.
|
1 | EXPECT_FALSE(engine->launchController.rpmPreLaunchCondition); | |
119 | 2 | } | ||
120 | } | |||
121 |