Skip to content

Commit c0dcdc9

Browse files
committed
blessed match-arm branch coverage test
1 parent d6a25eb commit c0dcdc9

File tree

2 files changed

+50
-21
lines changed

2 files changed

+50
-21
lines changed

tests/coverage/branch/match-arms.cov-map

+43-21
Original file line numberDiff line numberDiff line change
@@ -128,35 +128,57 @@ Number of file 0 mappings: 10
128128
= (((c4 + c3) + c2) + (c1 - ((c2 + c3) + c4)))
129129

130130
Function name: match_arms::or_patterns
131-
Raw bytes (75): 0x[01, 01, 0d, 11, 0d, 05, 2f, 33, 11, 09, 0d, 09, 2a, 05, 2f, 33, 11, 09, 0d, 03, 27, 09, 2a, 05, 2f, 33, 11, 09, 0d, 09, 01, 25, 01, 01, 10, 05, 03, 0b, 00, 10, 11, 01, 11, 00, 12, 0d, 00, 1e, 00, 1f, 03, 00, 24, 00, 2e, 09, 01, 11, 00, 12, 2a, 00, 1e, 00, 1f, 27, 00, 24, 00, 2e, 23, 03, 05, 01, 02]
131+
Raw bytes (122): 0x[01, 01, 1a, 17, 0d, 5e, 09, 05, 63, 67, 11, 09, 0d, 5e, 09, 05, 63, 67, 11, 09, 0d, 11, 0d, 05, 63, 67, 11, 09, 0d, 05, 63, 67, 11, 09, 0d, 09, 5e, 05, 63, 67, 11, 09, 0d, 57, 5b, 11, 0d, 09, 5e, 05, 63, 67, 11, 09, 0d, 0c, 01, 25, 01, 01, 10, 05, 03, 0b, 00, 10, 20, 11, 03, 01, 09, 00, 13, 11, 00, 11, 00, 12, 20, 0d, 17, 00, 16, 00, 20, 0d, 00, 1e, 00, 1f, 57, 00, 24, 00, 2e, 20, 09, 5e, 01, 09, 00, 13, 09, 00, 11, 00, 12, 5e, 00, 1e, 00, 1f, 5b, 00, 24, 00, 2e, 53, 03, 05, 01, 02]
132132
Number of files: 1
133133
- file 0 => global file 1
134-
Number of expressions: 13
135-
- expression 0 operands: lhs = Counter(4), rhs = Counter(3)
136-
- expression 1 operands: lhs = Counter(1), rhs = Expression(11, Add)
137-
- expression 2 operands: lhs = Expression(12, Add), rhs = Counter(4)
138-
- expression 3 operands: lhs = Counter(2), rhs = Counter(3)
139-
- expression 4 operands: lhs = Counter(2), rhs = Expression(10, Sub)
140-
- expression 5 operands: lhs = Counter(1), rhs = Expression(11, Add)
141-
- expression 6 operands: lhs = Expression(12, Add), rhs = Counter(4)
142-
- expression 7 operands: lhs = Counter(2), rhs = Counter(3)
143-
- expression 8 operands: lhs = Expression(0, Add), rhs = Expression(9, Add)
144-
- expression 9 operands: lhs = Counter(2), rhs = Expression(10, Sub)
145-
- expression 10 operands: lhs = Counter(1), rhs = Expression(11, Add)
146-
- expression 11 operands: lhs = Expression(12, Add), rhs = Counter(4)
134+
Number of expressions: 26
135+
- expression 0 operands: lhs = Expression(5, Add), rhs = Counter(3)
136+
- expression 1 operands: lhs = Expression(23, Sub), rhs = Counter(2)
137+
- expression 2 operands: lhs = Counter(1), rhs = Expression(24, Add)
138+
- expression 3 operands: lhs = Expression(25, Add), rhs = Counter(4)
139+
- expression 4 operands: lhs = Counter(2), rhs = Counter(3)
140+
- expression 5 operands: lhs = Expression(23, Sub), rhs = Counter(2)
141+
- expression 6 operands: lhs = Counter(1), rhs = Expression(24, Add)
142+
- expression 7 operands: lhs = Expression(25, Add), rhs = Counter(4)
143+
- expression 8 operands: lhs = Counter(2), rhs = Counter(3)
144+
- expression 9 operands: lhs = Counter(4), rhs = Counter(3)
145+
- expression 10 operands: lhs = Counter(1), rhs = Expression(24, Add)
146+
- expression 11 operands: lhs = Expression(25, Add), rhs = Counter(4)
147147
- expression 12 operands: lhs = Counter(2), rhs = Counter(3)
148-
Number of file 0 mappings: 9
148+
- expression 13 operands: lhs = Counter(1), rhs = Expression(24, Add)
149+
- expression 14 operands: lhs = Expression(25, Add), rhs = Counter(4)
150+
- expression 15 operands: lhs = Counter(2), rhs = Counter(3)
151+
- expression 16 operands: lhs = Counter(2), rhs = Expression(23, Sub)
152+
- expression 17 operands: lhs = Counter(1), rhs = Expression(24, Add)
153+
- expression 18 operands: lhs = Expression(25, Add), rhs = Counter(4)
154+
- expression 19 operands: lhs = Counter(2), rhs = Counter(3)
155+
- expression 20 operands: lhs = Expression(21, Add), rhs = Expression(22, Add)
156+
- expression 21 operands: lhs = Counter(4), rhs = Counter(3)
157+
- expression 22 operands: lhs = Counter(2), rhs = Expression(23, Sub)
158+
- expression 23 operands: lhs = Counter(1), rhs = Expression(24, Add)
159+
- expression 24 operands: lhs = Expression(25, Add), rhs = Counter(4)
160+
- expression 25 operands: lhs = Counter(2), rhs = Counter(3)
161+
Number of file 0 mappings: 12
149162
- Code(Counter(0)) at (prev + 37, 1) to (start + 1, 16)
150163
- Code(Counter(1)) at (prev + 3, 11) to (start + 0, 16)
151-
- Code(Counter(4)) at (prev + 1, 17) to (start + 0, 18)
164+
- Branch { true: Counter(4), false: Expression(0, Add) } at (prev + 1, 9) to (start + 0, 19)
165+
true = c4
166+
false = (((c1 - ((c2 + c3) + c4)) + c2) + c3)
167+
- Code(Counter(4)) at (prev + 0, 17) to (start + 0, 18)
168+
- Branch { true: Counter(3), false: Expression(5, Add) } at (prev + 0, 22) to (start + 0, 32)
169+
true = c3
170+
false = ((c1 - ((c2 + c3) + c4)) + c2)
152171
- Code(Counter(3)) at (prev + 0, 30) to (start + 0, 31)
153-
- Code(Expression(0, Add)) at (prev + 0, 36) to (start + 0, 46)
172+
- Code(Expression(21, Add)) at (prev + 0, 36) to (start + 0, 46)
154173
= (c4 + c3)
155-
- Code(Counter(2)) at (prev + 1, 17) to (start + 0, 18)
156-
- Code(Expression(10, Sub)) at (prev + 0, 30) to (start + 0, 31)
174+
- Branch { true: Counter(2), false: Expression(23, Sub) } at (prev + 1, 9) to (start + 0, 19)
175+
true = c2
176+
false = (c1 - ((c2 + c3) + c4))
177+
- Code(Counter(2)) at (prev + 0, 17) to (start + 0, 18)
178+
- Code(Expression(23, Sub)) at (prev + 0, 30) to (start + 0, 31)
157179
= (c1 - ((c2 + c3) + c4))
158-
- Code(Expression(9, Add)) at (prev + 0, 36) to (start + 0, 46)
180+
- Code(Expression(22, Add)) at (prev + 0, 36) to (start + 0, 46)
159181
= (c2 + (c1 - ((c2 + c3) + c4)))
160-
- Code(Expression(8, Add)) at (prev + 3, 5) to (start + 1, 2)
182+
- Code(Expression(20, Add)) at (prev + 3, 5) to (start + 1, 2)
161183
= ((c4 + c3) + (c2 + (c1 - ((c2 + c3) + c4))))
162184

tests/coverage/branch/match-arms.coverage

+7
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,15 @@
4949
LL| 15| match value {
5050
LL| 12| Enum::D(x) | Enum::C(x) => consume(x),
5151
^8 ^4
52+
------------------
53+
| Branch (LL:9): [True: 8, False: 7]
54+
| Branch (LL:22): [True: 4, False: 3]
55+
------------------
5256
LL| 3| Enum::B(y) | Enum::A(y) => consume(y),
5357
^2 ^1
58+
------------------
59+
| Branch (LL:9): [True: 2, False: 1]
60+
------------------
5461
LL| | }
5562
LL| |
5663
LL| 15| consume(0);

0 commit comments

Comments
 (0)