| Line | Branch | Exec | Source |
|---|---|---|---|
| 1 | #include "gate/tests.hpp" | ||
| 2 | #include "gate/delegates.hpp" | ||
| 3 | #include "gate/exceptions.hpp" | ||
| 4 | |||
| 5 | using namespace gate; | ||
| 6 | |||
| 7 | struct Target | ||
| 8 | { | ||
| 9 | int member_id; | ||
| 10 | int params[16]; | ||
| 11 | |||
| 12 | 15 | Target() | |
| 13 | 15 | { | |
| 14 | 15 | this->reset(); | |
| 15 | 15 | } | |
| 16 | |||
| 17 | 15 | void reset() | |
| 18 | { | ||
| 19 | 15 | this->member_id = -1; | |
| 20 |
2/2✓ Branch 0 taken 240 times.
✓ Branch 1 taken 15 times.
|
255 | for (unsigned n = 0; n < 16; ++n) |
| 21 | { | ||
| 22 | 240 | this->params[n] = 0; | |
| 23 | } | ||
| 24 | 15 | } | |
| 25 | |||
| 26 | 2 | void member0() | |
| 27 | { | ||
| 28 | 2 | this->member_id = 0; | |
| 29 | 2 | } | |
| 30 | 2 | void member1(int p1) | |
| 31 | { | ||
| 32 | 2 | this->member_id = 1; | |
| 33 | 2 | this->params[0] = p1; | |
| 34 | 2 | } | |
| 35 | 2 | void member2(int p1, int p2) | |
| 36 | { | ||
| 37 | 2 | this->member_id = 2; | |
| 38 | 2 | this->params[0] = p1; | |
| 39 | 2 | this->params[1] = p2; | |
| 40 | 2 | } | |
| 41 | 2 | void member3(int p1, int p2, int p3) | |
| 42 | { | ||
| 43 | 2 | this->member_id = 3; | |
| 44 | 2 | this->params[0] = p1; | |
| 45 | 2 | this->params[1] = p2; | |
| 46 | 2 | this->params[2] = p3; | |
| 47 | 2 | } | |
| 48 | 2 | void member4(int p1, int p2, int p3, int p4) | |
| 49 | { | ||
| 50 | 2 | this->member_id = 4; | |
| 51 | 2 | this->params[0] = p1; | |
| 52 | 2 | this->params[1] = p2; | |
| 53 | 2 | this->params[2] = p3; | |
| 54 | 2 | this->params[3] = p4; | |
| 55 | 2 | } | |
| 56 | 2 | void member5(int p1, int p2, int p3, int p4, int p5) | |
| 57 | { | ||
| 58 | 2 | this->member_id = 5; | |
| 59 | 2 | this->params[0] = p1; | |
| 60 | 2 | this->params[1] = p2; | |
| 61 | 2 | this->params[2] = p3; | |
| 62 | 2 | this->params[3] = p4; | |
| 63 | 2 | this->params[4] = p5; | |
| 64 | 2 | } | |
| 65 | 2 | void member6(int p1, int p2, int p3, int p4, int p5, int p6) | |
| 66 | { | ||
| 67 | 2 | this->member_id = 6; | |
| 68 | 2 | this->params[0] = p1; | |
| 69 | 2 | this->params[1] = p2; | |
| 70 | 2 | this->params[2] = p3; | |
| 71 | 2 | this->params[3] = p4; | |
| 72 | 2 | this->params[4] = p5; | |
| 73 | 2 | this->params[5] = p6; | |
| 74 | 2 | } | |
| 75 | |||
| 76 | static void func0() | ||
| 77 | { | ||
| 78 | } | ||
| 79 | |||
| 80 | 1 | static void func1(int* pout) | |
| 81 | { | ||
| 82 | 1 | *pout = 0; | |
| 83 | 1 | } | |
| 84 | |||
| 85 | 1 | static void func2(int* pout, int a) | |
| 86 | { | ||
| 87 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | Delegate1<int*> dele(&func1); |
| 88 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | dele(pout); |
| 89 | 1 | *pout += a; | |
| 90 | 1 | } | |
| 91 | |||
| 92 | 1 | static void func3(int* pout, int a, int b) | |
| 93 | { | ||
| 94 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | Delegate2<int*, int> dele(&func2); |
| 95 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | dele(pout, a); |
| 96 | 1 | *pout += b; | |
| 97 | 1 | } | |
| 98 | |||
| 99 | 1 | static void func4(int* pout, int a, int b, int c) | |
| 100 | { | ||
| 101 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | Delegate3<int*, int, int> dele(&func3); |
| 102 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | dele(pout, a, b); |
| 103 | 1 | *pout += c; | |
| 104 | 1 | } | |
| 105 | |||
| 106 | 1 | static void func5(int* pout, int a, int b, int c, int d) | |
| 107 | { | ||
| 108 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | Delegate4<int*, int, int, int> dele(&func4); |
| 109 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | dele(pout, a, b, c); |
| 110 | 1 | *pout += d; | |
| 111 | 1 | } | |
| 112 | |||
| 113 | 1 | static void func6(int* pout, int a, int b, int c, int d, int e) | |
| 114 | { | ||
| 115 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | Delegate5<int*, int, int, int, int> dele(&func5); |
| 116 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
1 | dele(pout, a, b, c, d); |
| 117 | 1 | *pout += e; | |
| 118 | 1 | } | |
| 119 | |||
| 120 | }; | ||
| 121 | |||
| 122 |
2/7✓ Branch 2 taken 3 times.
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
|
10 | GATEXX_TEST_UNIT(DelegateFunctions) |
| 123 | { | ||
| 124 | 2 | int out = -1; | |
| 125 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate6<int*, int, int, int, int, int> dele(&Target::func6); |
| 126 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dele(&out, 1, 2, 3, 4, 5); |
| 127 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(out, (1 + 2 + 3 + 4 + 5)); |
| 128 | 2 | } | |
| 129 | |||
| 130 | |||
| 131 |
2/7✓ Branch 2 taken 3 times.
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
|
10 | GATEXX_TEST_UNIT(DelegateObjects) |
| 132 | { | ||
| 133 | { | ||
| 134 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Target t; |
| 135 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate0 d0(&t, &Target::member0); |
| 136 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | d0(); |
| 137 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.member_id, 0); |
| 138 | } | ||
| 139 | |||
| 140 | { | ||
| 141 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Target t; |
| 142 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate1<int> d1(&t, &Target::member1); |
| 143 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | d1(12); |
| 144 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.member_id, 1); |
| 145 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[0], 12); |
| 146 | } | ||
| 147 | |||
| 148 | { | ||
| 149 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Target t; |
| 150 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate2<int, int> d2(&t, &Target::member2); |
| 151 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | d2(12, 34); |
| 152 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.member_id, 2); |
| 153 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[0], 12); |
| 154 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[1], 34); |
| 155 | } | ||
| 156 | |||
| 157 | { | ||
| 158 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Target t; |
| 159 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate3<int, int, int> d3(&t, &Target::member3); |
| 160 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | d3(12, 34, 56); |
| 161 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.member_id, 3); |
| 162 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[0], 12); |
| 163 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[1], 34); |
| 164 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[2], 56); |
| 165 | } | ||
| 166 | |||
| 167 | { | ||
| 168 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Target t; |
| 169 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate4<int, int, int, int> d4(&t, &Target::member4); |
| 170 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | d4(12, 34, 56, 78); |
| 171 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.member_id, 4); |
| 172 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[0], 12); |
| 173 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[1], 34); |
| 174 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[2], 56); |
| 175 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[3], 78); |
| 176 | } | ||
| 177 | |||
| 178 | { | ||
| 179 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Target t; |
| 180 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate5<int, int, int, int, int> d5(&t, &Target::member5); |
| 181 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | d5(12, 34, 56, 78, 90); |
| 182 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.member_id, 5); |
| 183 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[0], 12); |
| 184 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[1], 34); |
| 185 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[2], 56); |
| 186 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[3], 78); |
| 187 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[4], 90); |
| 188 | } | ||
| 189 | |||
| 190 | { | ||
| 191 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Target t; |
| 192 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate6<int, int, int, int, int, int> d6(&t, &Target::member6); |
| 193 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | d6(12, 34, 56, 78, 90, 123); |
| 194 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.member_id, 6); |
| 195 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[0], 12); |
| 196 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[1], 34); |
| 197 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[2], 56); |
| 198 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[3], 78); |
| 199 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[4], 90); |
| 200 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(t.params[5], 123); |
| 201 | } | ||
| 202 | |||
| 203 | 2 | } | |
| 204 | |||
| 205 |
2/7✓ Branch 2 taken 3 times.
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
|
10 | GATEXX_TEST_UNIT(Delegate) |
| 206 | { | ||
| 207 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Target t; |
| 208 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate0 d0(&t, &Target::member0); |
| 209 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate1<int> d1(&t, &Target::member1); |
| 210 | 2 | Delegate0 d0c = d0; | |
| 211 | |||
| 212 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate0 d0empty; |
| 213 | |||
| 214 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✓ Branch 12 taken 1 times.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
✗ Branch 18 not taken.
✗ Branch 19 not taken.
|
2 | GATEXX_TEST_CHECK(!d0empty); |
| 215 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✓ Branch 12 taken 1 times.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
✗ Branch 18 not taken.
✗ Branch 19 not taken.
|
2 | GATEXX_TEST_CHECK(!!d0); |
| 216 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✓ Branch 12 taken 1 times.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
✗ Branch 18 not taken.
✗ Branch 19 not taken.
|
2 | GATEXX_TEST_CHECK(!!d1); |
| 217 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✓ Branch 12 taken 1 times.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
✗ Branch 18 not taken.
✗ Branch 19 not taken.
|
2 | GATEXX_TEST_CHECK(d0 != d1); |
| 218 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✓ Branch 12 taken 1 times.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
✗ Branch 18 not taken.
✗ Branch 19 not taken.
|
2 | GATEXX_TEST_CHECK(d0 == d0c); |
| 219 | 2 | } | |
| 220 | |||
| 221 | |||
| 222 | 3 | static void func_param_types(real64_t* ptr, gate::uint8_t a, gate::int16_t b, gate::uint32_t c, gate::int64_t d, gate::real32_t const* e) | |
| 223 | { | ||
| 224 | 3 | gate::real64_t r = 0.0; | |
| 225 | 3 | r += gate::real64_t(a); | |
| 226 | 3 | r += gate::real64_t(b); | |
| 227 | 3 | r += gate::real64_t(c); | |
| 228 | 3 | r += gate::real64_t(d); | |
| 229 | 3 | r += gate::real64_t(*e); | |
| 230 | 3 | *ptr = r; | |
| 231 | 3 | } | |
| 232 | |||
| 233 |
2/7✓ Branch 2 taken 3 times.
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
|
10 | GATEXX_TEST_UNIT(DelegateTypes) |
| 234 | { | ||
| 235 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate6<gate::real64_t*, gate::uint8_t, gate::int16_t, gate::uint32_t, gate::int64_t, real32_t const*> dele(&func_param_types); |
| 236 | 2 | real64_t val = -1.0; | |
| 237 | 2 | real32_t const f = 50.0f; | |
| 238 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dele(&val, 12, -7, 100, -5, &f); |
| 239 | 2 | const real64_t expected = 0.0 | |
| 240 | + gate::real64_t(gate::uint8_t(12)) | ||
| 241 | + gate::real64_t(gate::int16_t(-7)) | ||
| 242 | + gate::real64_t(gate::uint32_t(100)) | ||
| 243 | + gate::real64_t(gate::int64_t(-5)) | ||
| 244 | + gate::real64_t(f) | ||
| 245 | ; | ||
| 246 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(val, expected); |
| 247 | 2 | } | |
| 248 | |||
| 249 | 2 | void throwing_func0() { throw 0; } | |
| 250 | 2 | void throwing_func1(int) { GATEXX_RAISE_EXCEPTION(results::LogicalError, "Logical error", 1); } | |
| 251 | 2 | void throwing_func2(int, int) { GATEXX_RAISE_EXCEPTION(results::LogicalError, "Logical error", 2); } | |
| 252 | 2 | void throwing_func3(int, int, int) { GATEXX_RAISE_EXCEPTION(results::LogicalError, "Logical error", 3); } | |
| 253 | 2 | void throwing_func4(int, int, int, int) { GATEXX_RAISE_EXCEPTION(results::LogicalError, "Logical error", 4); } | |
| 254 | 2 | void throwing_func5(int, int, int, int, int) { GATEXX_RAISE_EXCEPTION(results::LogicalError, "Logical error", 5); } | |
| 255 | 2 | void throwing_func6(int, int, int, int, int, int) { GATEXX_RAISE_EXCEPTION(results::LogicalError, "Logical error", 6); } | |
| 256 | |||
| 257 | |||
| 258 |
2/7✓ Branch 2 taken 3 times.
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
|
10 | GATEXX_TEST_UNIT(DelegateException) |
| 259 | { | ||
| 260 | { | ||
| 261 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate0 dele(&throwing_func0); |
| 262 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✗ Branch 17 not taken.
✗ Branch 18 not taken.
✗ Branch 20 not taken.
✗ Branch 21 not taken.
|
2 | GATEXX_TEST_CHECK(dele.tryInvoke().hasError()); |
| 263 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 11 not taken.
✗ Branch 13 not taken.
✗ Branch 14 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
|
4 | GATEXX_TEST_CHECK_THROW(dele()); |
| 264 | } | ||
| 265 | { | ||
| 266 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate1<int> dele(&throwing_func1); |
| 267 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✗ Branch 17 not taken.
✗ Branch 18 not taken.
✗ Branch 20 not taken.
✗ Branch 21 not taken.
|
2 | GATEXX_TEST_CHECK(dele.tryInvoke(1).hasError()); |
| 268 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 11 not taken.
✗ Branch 13 not taken.
✗ Branch 14 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
|
4 | GATEXX_TEST_CHECK_THROW(dele(1)); |
| 269 | } | ||
| 270 | { | ||
| 271 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate2<int, int> dele(&throwing_func2); |
| 272 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✗ Branch 17 not taken.
✗ Branch 18 not taken.
✗ Branch 20 not taken.
✗ Branch 21 not taken.
|
2 | GATEXX_TEST_CHECK(dele.tryInvoke(1, 2).hasError()); |
| 273 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 11 not taken.
✗ Branch 13 not taken.
✗ Branch 14 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
|
4 | GATEXX_TEST_CHECK_THROW(dele(1, 2)); |
| 274 | } | ||
| 275 | { | ||
| 276 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate3<int, int, int> dele(&throwing_func3); |
| 277 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✗ Branch 17 not taken.
✗ Branch 18 not taken.
✗ Branch 20 not taken.
✗ Branch 21 not taken.
|
2 | GATEXX_TEST_CHECK(dele.tryInvoke(1, 2, 3).hasError()); |
| 278 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 11 not taken.
✗ Branch 13 not taken.
✗ Branch 14 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
|
4 | GATEXX_TEST_CHECK_THROW(dele(1, 2, 3)); |
| 279 | } | ||
| 280 | { | ||
| 281 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate4<int, int, int, int> dele(&throwing_func4); |
| 282 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✗ Branch 17 not taken.
✗ Branch 18 not taken.
✗ Branch 20 not taken.
✗ Branch 21 not taken.
|
2 | GATEXX_TEST_CHECK(dele.tryInvoke(1, 2, 3, 4).hasError()); |
| 283 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 11 not taken.
✗ Branch 13 not taken.
✗ Branch 14 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
|
4 | GATEXX_TEST_CHECK_THROW(dele(1, 2, 3, 4)); |
| 284 | } | ||
| 285 | { | ||
| 286 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate5<int, int, int, int, int> dele(&throwing_func5); |
| 287 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✗ Branch 17 not taken.
✗ Branch 18 not taken.
✗ Branch 20 not taken.
✗ Branch 21 not taken.
|
2 | GATEXX_TEST_CHECK(dele.tryInvoke(1, 2, 3, 4, 5).hasError()); |
| 288 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 11 not taken.
✗ Branch 13 not taken.
✗ Branch 14 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
|
4 | GATEXX_TEST_CHECK_THROW(dele(1, 2, 3, 4, 5)); |
| 289 | } | ||
| 290 | { | ||
| 291 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate6<int, int, int, int, int, int> dele(&throwing_func6); |
| 292 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✗ Branch 17 not taken.
✗ Branch 18 not taken.
✗ Branch 20 not taken.
✗ Branch 21 not taken.
|
2 | GATEXX_TEST_CHECK(dele.tryInvoke(1, 2, 3, 4, 5, 6).hasError()); |
| 293 |
5/14✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 11 not taken.
✗ Branch 13 not taken.
✗ Branch 14 not taken.
✓ Branch 17 taken 1 times.
✗ Branch 18 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
|
4 | GATEXX_TEST_CHECK_THROW(dele(1, 2, 3, 4, 5, 6)); |
| 294 | } | ||
| 295 | 2 | } | |
| 296 | |||
| 297 |
2/7✓ Branch 2 taken 3 times.
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
|
10 | GATEXX_TEST_UNIT(MulitcastDelegates) |
| 298 | { | ||
| 299 | { | ||
| 300 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Target t; |
| 301 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate0 dele(&t, &Target::member0); |
| 302 | 4 | MulticastDelegate0 md; | |
| 303 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md += dele; |
| 304 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md(); |
| 305 | } | ||
| 306 | { | ||
| 307 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Target t; |
| 308 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate1<int> dele(&t, &Target::member1); |
| 309 | 4 | MulticastDelegate1<int> md; | |
| 310 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md += dele; |
| 311 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md(1); |
| 312 | } | ||
| 313 | { | ||
| 314 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Target t; |
| 315 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate2<int, int> dele(&t, &Target::member2); |
| 316 | 4 | MulticastDelegate2<int, int> md; | |
| 317 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md += dele; |
| 318 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md(1, 2); |
| 319 | } | ||
| 320 | { | ||
| 321 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Target t; |
| 322 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate3<int, int, int> dele(&t, &Target::member3); |
| 323 | 4 | MulticastDelegate3<int, int, int> md; | |
| 324 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md += dele; |
| 325 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md(1, 2, 3); |
| 326 | } | ||
| 327 | { | ||
| 328 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Target t; |
| 329 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate4<int, int, int, int> dele(&t, &Target::member4); |
| 330 | 4 | MulticastDelegate4<int, int, int, int> md; | |
| 331 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md += dele; |
| 332 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md(1, 2, 3, 4); |
| 333 | } | ||
| 334 | { | ||
| 335 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Target t; |
| 336 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate5<int, int, int, int, int> dele(&t, &Target::member5); |
| 337 | 4 | MulticastDelegate5<int, int, int, int, int> md; | |
| 338 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md += dele; |
| 339 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md(1, 2, 3, 4, 5); |
| 340 | } | ||
| 341 | { | ||
| 342 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | Target t; |
| 343 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate6<int, int, int, int, int, int> dele(&t, &Target::member6); |
| 344 | 4 | MulticastDelegate6<int, int, int, int, int, int> md; | |
| 345 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md += dele; |
| 346 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md(1, 2, 3, 4, 5, 6); |
| 347 | } | ||
| 348 | 2 | } | |
| 349 | |||
| 350 | |||
| 351 |
2/7✓ Branch 2 taken 3 times.
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
|
10 | GATEXX_TEST_UNIT(MulitcastDelegateTypes) |
| 352 | { | ||
| 353 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
4 | Delegate6<gate::real64_t*, gate::uint8_t, gate::int16_t, gate::uint32_t, gate::int64_t, real32_t const*> dele(&func_param_types); |
| 354 | 2 | real64_t val = -1.0; | |
| 355 | 2 | real32_t const f = 50.0f; | |
| 356 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | dele(&val, 12, -7, 100, -5, &f); |
| 357 | |||
| 358 | 4 | MulticastDelegate6<gate::real64_t*, gate::uint8_t, gate::int16_t, gate::uint32_t, gate::int64_t, real32_t const*> md; | |
| 359 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md += dele; |
| 360 | |||
| 361 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md(&val, 12, -7, 100, -5, &f); |
| 362 | |||
| 363 | 2 | const real64_t expected = 0.0 | |
| 364 | + gate::real64_t(gate::uint8_t(12)) | ||
| 365 | + gate::real64_t(gate::int16_t(-7)) | ||
| 366 | + gate::real64_t(gate::uint32_t(100)) | ||
| 367 | + gate::real64_t(gate::int64_t(-5)) | ||
| 368 | + gate::real64_t(f) | ||
| 369 | ; | ||
| 370 |
4/12✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 1 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
|
2 | GATEXX_TEST_CHECK_EQUAL(val, expected); |
| 371 |
1/2✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
|
2 | md -= dele; |
| 372 | 2 | } | |
| 373 |