Line | Branch | Decision | Exec | Source |
---|---|---|---|---|
1 | #include "pch.h" | |||
2 | ||||
3 | 4 | TEST(gpio, testPinInitNonInverted) { | ||
4 |
1/1✓ Branch 2 taken 1 time.
|
1 | EngineTestHelper eth(engine_type_e::TEST_ENGINE); | |
5 | ||||
6 | 1 | OutputPin dut; | ||
7 | ||||
8 | // Set the "hardware" pin to on initially | |||
9 |
1/1✓ Branch 1 taken 1 time.
|
1 | setMockState(Gpio::A6, true); | |
10 |
3/9✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
✓ Branch 33 taken 1 time.
✗ Branch 34 not taken.
|
1 | ASSERT_TRUE(efiReadPin(Gpio::A6)); | |
11 | ||||
12 | // this should turn it off | |||
13 | 1 | pin_output_mode_e mode = OM_DEFAULT; | ||
14 |
1/1✓ Branch 1 taken 1 time.
|
1 | dut.initPin("test", Gpio::A6, mode); | |
15 | ||||
16 |
2/7✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_FALSE(efiReadPin(Gpio::A6)); | |
17 | 1 | } | ||
18 | ||||
19 | 4 | TEST(gpio, testPinInitInverted) { | ||
20 |
1/1✓ Branch 2 taken 1 time.
|
1 | EngineTestHelper eth(engine_type_e::TEST_ENGINE); | |
21 | ||||
22 | 1 | OutputPin dut; | ||
23 | ||||
24 | // Set the "hardware" pin to off initially | |||
25 |
1/1✓ Branch 1 taken 1 time.
|
1 | setMockState(Gpio::A6, false); | |
26 |
3/9✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
✓ Branch 33 taken 1 time.
✗ Branch 34 not taken.
|
1 | ASSERT_FALSE(efiReadPin(Gpio::A6)); | |
27 | ||||
28 | // this should turn it off | |||
29 | 1 | pin_output_mode_e mode = OM_INVERTED; | ||
30 |
1/1✓ Branch 1 taken 1 time.
|
1 | dut.initPin("test", Gpio::A6, mode); | |
31 | ||||
32 |
2/7✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_TRUE(efiReadPin(Gpio::A6)); | |
33 | 1 | } | ||
34 | ||||
35 | 4 | TEST(gpio, multipleInit) { | ||
36 | 1 | OutputPin dut; | ||
37 | ||||
38 | // Initial setup should be ok | |||
39 |
4/20✓ Branch 3 taken 1 time.
✗ Branch 4 not taken.
✓ Branch 6 taken 1 time.
✓ Branch 8 taken 1 time.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 time.
✗ Branch 17 not taken.
✗ Branch 22 not taken.
✗ Branch 26 not taken.
✗ Branch 29 not taken.
✗ Branch 38 not taken.
✗ Branch 39 not taken.
✗ Branch 42 not taken.
✗ Branch 47 not taken.
✗ Branch 50 not taken.
✗ Branch 56 not taken.
✗ Branch 60 not taken.
✗ Branch 63 not taken.
✗ Branch 68 not taken.
✗ Branch 71 not taken.
|
1 | EXPECT_NO_FATAL_ERROR(dut.initPin("testPin", Gpio::A6)); | |
40 | ||||
41 | // Reinit with the same pin should be ok | |||
42 |
4/20✓ Branch 3 taken 1 time.
✗ Branch 4 not taken.
✓ Branch 6 taken 1 time.
✓ Branch 8 taken 1 time.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 time.
✗ Branch 17 not taken.
✗ Branch 22 not taken.
✗ Branch 26 not taken.
✗ Branch 29 not taken.
✗ Branch 38 not taken.
✗ Branch 39 not taken.
✗ Branch 42 not taken.
✗ Branch 47 not taken.
✗ Branch 50 not taken.
✗ Branch 56 not taken.
✗ Branch 60 not taken.
✗ Branch 63 not taken.
✗ Branch 68 not taken.
✗ Branch 71 not taken.
|
1 | EXPECT_NO_FATAL_ERROR(dut.initPin("testPin", Gpio::A6)); | |
43 | ||||
44 | // Reinit with DIFFERENT pin should fail | |||
45 |
5/23✓ Branch 3 taken 1 time.
✗ Branch 4 not taken.
✓ Branch 6 taken 1 time.
✓ Branch 8 taken 1 time.
✗ Branch 9 not taken.
✗ Branch 11 not taken.
✗ Branch 13 not taken.
✓ Branch 14 taken 1 time.
✗ Branch 16 not taken.
✗ Branch 22 not taken.
✗ Branch 27 not taken.
✗ Branch 30 not taken.
✓ Branch 37 taken 1 time.
✗ Branch 38 not taken.
✗ Branch 39 not taken.
✗ Branch 44 not taken.
✗ Branch 49 not taken.
✗ Branch 52 not taken.
✗ Branch 58 not taken.
✗ Branch 62 not taken.
✗ Branch 65 not taken.
✗ Branch 70 not taken.
✗ Branch 73 not taken.
|
1 | EXPECT_FATAL_ERROR(dut.initPin("testPin", Gpio::B5)); | |
46 | 1 | } | ||
47 | ||||
48 | 4 | TEST(gpio, deInit) { | ||
49 | 1 | OutputPin dut; | ||
50 | ||||
51 | // Initial setup should be ok | |||
52 |
4/20✓ Branch 3 taken 1 time.
✗ Branch 4 not taken.
✓ Branch 6 taken 1 time.
✓ Branch 8 taken 1 time.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 time.
✗ Branch 17 not taken.
✗ Branch 22 not taken.
✗ Branch 26 not taken.
✗ Branch 29 not taken.
✗ Branch 38 not taken.
✗ Branch 39 not taken.
✗ Branch 42 not taken.
✗ Branch 47 not taken.
✗ Branch 50 not taken.
✗ Branch 56 not taken.
✗ Branch 60 not taken.
✗ Branch 63 not taken.
✗ Branch 68 not taken.
✗ Branch 71 not taken.
|
1 | EXPECT_NO_FATAL_ERROR(dut.initPin("testPin", Gpio::A6)); | |
53 | ||||
54 |
1/1✓ Branch 1 taken 1 time.
|
1 | dut.deInit(); | |
55 | ||||
56 | // Reinit with DIFFERENT pin should work after deinit | |||
57 |
4/20✓ Branch 3 taken 1 time.
✗ Branch 4 not taken.
✓ Branch 6 taken 1 time.
✓ Branch 8 taken 1 time.
✗ Branch 9 not taken.
✓ Branch 11 taken 1 time.
✗ Branch 17 not taken.
✗ Branch 22 not taken.
✗ Branch 26 not taken.
✗ Branch 29 not taken.
✗ Branch 38 not taken.
✗ Branch 39 not taken.
✗ Branch 42 not taken.
✗ Branch 47 not taken.
✗ Branch 50 not taken.
✗ Branch 56 not taken.
✗ Branch 60 not taken.
✗ Branch 63 not taken.
✗ Branch 68 not taken.
✗ Branch 71 not taken.
|
1 | EXPECT_NO_FATAL_ERROR(dut.initPin("testPin", Gpio::B5)); | |
58 | 1 | } | ||
59 | ||||
60 | 4 | TEST(gpio, pinSetNotInverted) { | ||
61 | 1 | OutputPin dut; | ||
62 | ||||
63 | 1 | pin_output_mode_e mode = OM_DEFAULT; | ||
64 |
1/1✓ Branch 1 taken 1 time.
|
1 | dut.initPin("test", Gpio::A6, mode); | |
65 | ||||
66 | // Initial state should be logic 0 | |||
67 |
2/7✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_FALSE(efiReadPin(Gpio::A6)); | |
68 | ||||
69 |
1/1✓ Branch 1 taken 1 time.
|
1 | dut.setValue(true); | |
70 |
2/7✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_TRUE(efiReadPin(Gpio::A6)); | |
71 |
2/7✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_TRUE(dut.getLogicValue()); | |
72 | ||||
73 |
1/1✓ Branch 1 taken 1 time.
|
1 | dut.setValue(false); | |
74 |
2/7✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_FALSE(efiReadPin(Gpio::A6)); | |
75 |
2/7✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_FALSE(dut.getLogicValue()); | |
76 | 1 | } | ||
77 | ||||
78 | 4 | TEST(gpio, pinSetInverted) { | ||
79 | 1 | OutputPin dut; | ||
80 | ||||
81 | 1 | pin_output_mode_e mode = OM_INVERTED; | ||
82 |
1/1✓ Branch 1 taken 1 time.
|
1 | dut.initPin("test", Gpio::A6, mode); | |
83 | ||||
84 | // Initial state should be logic 0 | |||
85 |
2/7✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_TRUE(efiReadPin(Gpio::A6)); | |
86 | ||||
87 |
1/1✓ Branch 1 taken 1 time.
|
1 | dut.setValue(true); | |
88 |
2/7✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_FALSE(efiReadPin(Gpio::A6)); | |
89 |
2/7✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_TRUE(dut.getLogicValue()); | |
90 | ||||
91 |
1/1✓ Branch 1 taken 1 time.
|
1 | dut.setValue(false); | |
92 |
2/7✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_TRUE(efiReadPin(Gpio::A6)); | |
93 |
2/7✓ Branch 3 taken 1 time.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 time.
✗ Branch 12 not taken.
✗ Branch 17 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
|
1 | EXPECT_FALSE(dut.getLogicValue()); | |
94 | 1 | } | ||
95 |