Line | Branch | Decision | Exec | Source |
---|---|---|---|---|
1 | #include "pch.h" | |||
2 | ||||
3 | class SensorMocking : public ::testing::Test { | |||
4 | protected: | |||
5 | MockSensor realSensor; | |||
6 | ||||
7 | 4 | SensorMocking() | ||
8 |
1/1✓ Branch 2 taken 4 times.
|
4 | : realSensor(SensorType::Clt) {} | |
9 | ||||
10 | 4 | void SetUp() override { | ||
11 | 4 | Sensor::resetRegistry(); | ||
12 |
3/9✓ Branch 3 taken 4 times.
✗ Branch 8 not taken.
✓ Branch 9 taken 4 times.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
✓ Branch 33 taken 4 times.
✗ Branch 34 not taken.
|
4 | ASSERT_TRUE(realSensor.Register()); | |
13 | } | |||
14 | ||||
15 | 4 | void TearDown() override { | ||
16 | 4 | Sensor::resetRegistry(); | ||
17 | 4 | } | ||
18 | }; | |||
19 | ||||
20 | 4 | TEST_F(SensorMocking, MockSensor) { | ||
21 | // Set a value on the "real" sensor | |||
22 | 1 | realSensor.set(25.0f); | ||
23 | ||||
24 | // And expect to see it | |||
25 | { | |||
26 |
1/1✓ Branch 2 taken 1 time.
|
1 | auto result = Sensor::get(SensorType::Clt); | |
27 |
1/6✗ Branch 3 not taken.
✓ Branch 4 taken 1 time.
✗ Branch 7 not taken.
✗ Branch 12 not taken.
✗ Branch 16 not taken.
✗ Branch 19 not taken.
|
1 | EXPECT_TRUE(result.Valid); | |
28 |
2/6✓ 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.
|
1 | EXPECT_FLOAT_EQ(result.Value, 25.0f); | |
29 | } | |||
30 | ||||
31 | // Now set a mock value | |||
32 | 1 | Sensor::setMockValue(SensorType::Clt, 37.0f); | ||
33 | ||||
34 | // And expect to see that | |||
35 | { | |||
36 |
1/1✓ Branch 2 taken 1 time.
|
1 | auto result = Sensor::get(SensorType::Clt); | |
37 |
1/6✗ Branch 3 not taken.
✓ Branch 4 taken 1 time.
✗ Branch 7 not taken.
✗ Branch 12 not taken.
✗ Branch 16 not taken.
✗ Branch 19 not taken.
|
1 | EXPECT_TRUE(result.Valid); | |
38 |
2/6✓ 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.
|
1 | EXPECT_FLOAT_EQ(result.Value, 37.0f); | |
39 | } | |||
40 | 1 | } | ||
41 | ||||
42 | 4 | TEST_F(SensorMocking, ResetOne) { | ||
43 | // Set a value on the "real" sensor | |||
44 | 1 | realSensor.set(13.0f); | ||
45 | ||||
46 | // Now set a mock value | |||
47 | 1 | Sensor::setMockValue(SensorType::Clt, 21.0f); | ||
48 | ||||
49 | // Expect to see the mock value | |||
50 | { | |||
51 |
1/1✓ Branch 2 taken 1 time.
|
1 | auto result = Sensor::get(SensorType::Clt); | |
52 |
1/6✗ Branch 3 not taken.
✓ Branch 4 taken 1 time.
✗ Branch 7 not taken.
✗ Branch 12 not taken.
✗ Branch 16 not taken.
✗ Branch 19 not taken.
|
1 | EXPECT_TRUE(result.Valid); | |
53 |
2/6✓ 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.
|
1 | EXPECT_FLOAT_EQ(result.Value, 21.0f); | |
54 | } | |||
55 | ||||
56 | // Reset that mock - it should go to the real value | |||
57 | 1 | Sensor::resetMockValue(SensorType::Clt); | ||
58 | ||||
59 | { | |||
60 |
1/1✓ Branch 2 taken 1 time.
|
1 | auto result = Sensor::get(SensorType::Clt); | |
61 |
1/6✗ Branch 3 not taken.
✓ Branch 4 taken 1 time.
✗ Branch 7 not taken.
✗ Branch 12 not taken.
✗ Branch 16 not taken.
✗ Branch 19 not taken.
|
1 | EXPECT_TRUE(result.Valid); | |
62 |
2/6✓ 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.
|
1 | EXPECT_FLOAT_EQ(result.Value, 13.0f); | |
63 | } | |||
64 | 1 | } | ||
65 | ||||
66 | 4 | TEST_F(SensorMocking, ResetAll) { | ||
67 | // Set a value on the "real" sensor | |||
68 | 1 | realSensor.set(46.0f); | ||
69 | ||||
70 | // Now set a mock value | |||
71 | 1 | Sensor::setMockValue(SensorType::Clt, 33.0f); | ||
72 | ||||
73 | // Expect to see the mock value | |||
74 | { | |||
75 |
1/1✓ Branch 2 taken 1 time.
|
1 | auto result = Sensor::get(SensorType::Clt); | |
76 |
1/6✗ Branch 3 not taken.
✓ Branch 4 taken 1 time.
✗ Branch 7 not taken.
✗ Branch 12 not taken.
✗ Branch 16 not taken.
✗ Branch 19 not taken.
|
1 | EXPECT_TRUE(result.Valid); | |
77 |
2/6✓ 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.
|
1 | EXPECT_FLOAT_EQ(result.Value, 33.0f); | |
78 | } | |||
79 | ||||
80 | // Reset all mocks - it should go to the real value | |||
81 | 1 | Sensor::resetAllMocks(); | ||
82 | ||||
83 | { | |||
84 |
1/1✓ Branch 2 taken 1 time.
|
1 | auto result = Sensor::get(SensorType::Clt); | |
85 |
1/6✗ Branch 3 not taken.
✓ Branch 4 taken 1 time.
✗ Branch 7 not taken.
✗ Branch 12 not taken.
✗ Branch 16 not taken.
✗ Branch 19 not taken.
|
1 | EXPECT_TRUE(result.Valid); | |
86 |
2/6✓ 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.
|
1 | EXPECT_FLOAT_EQ(result.Value, 46.0f); | |
87 | } | |||
88 | 1 | } | ||
89 | ||||
90 | 4 | TEST_F(SensorMocking, ResetWithResetRegistry) { | ||
91 | // Set a value on the "real" sensor | |||
92 | 1 | realSensor.set(46.0f); | ||
93 | ||||
94 | // Now set a mock value | |||
95 | 1 | Sensor::setMockValue(SensorType::Clt, 33.0f); | ||
96 | ||||
97 | // Expect to see the mock value | |||
98 | { | |||
99 |
1/1✓ Branch 2 taken 1 time.
|
1 | auto result = Sensor::get(SensorType::Clt); | |
100 |
1/6✗ Branch 3 not taken.
✓ Branch 4 taken 1 time.
✗ Branch 7 not taken.
✗ Branch 12 not taken.
✗ Branch 16 not taken.
✗ Branch 19 not taken.
|
1 | EXPECT_TRUE(result.Valid); | |
101 |
2/6✓ 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.
|
1 | EXPECT_FLOAT_EQ(result.Value, 33.0f); | |
102 | } | |||
103 | ||||
104 | // Reset registry - including mocks | |||
105 | 1 | Sensor::resetRegistry(); | ||
106 | ||||
107 | { | |||
108 | 1 | auto result = Sensor::get(SensorType::Clt); | ||
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_FALSE(result.Valid); | |
110 | } | |||
111 | 1 | } | ||
112 | ||||
113 |