Skip to content

Commit 1a71918

Browse files
committedFeb 5, 2024
Add multi-line message for be.Close
1 parent e335ae5 commit 1a71918

File tree

2 files changed

+40
-13
lines changed

2 files changed

+40
-13
lines changed
 

‎be/assertions.go

+20-8
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,9 @@ func Close[T constraints.Integer | constraints.Float](got, want, delta T) ghost.
1919
args := ghostlib.ArgsFromAST(got, want, delta)
2020
argGot, argWant := args[0], args[1]
2121

22-
diff := want - got
23-
if diff < 0 {
24-
diff = 0 - diff
22+
gotDelta := want - got
23+
if gotDelta < 0 {
24+
gotDelta = 0 - gotDelta
2525
}
2626

2727
if _, err := strconv.ParseFloat(argGot, 64); err != nil {
@@ -32,21 +32,33 @@ func Close[T constraints.Integer | constraints.Float](got, want, delta T) ghost.
3232
argWant = fmt.Sprintf("%s (%v)", argWant, want)
3333
}
3434

35-
if diff <= delta {
35+
if gotDelta <= delta {
3636
return ghost.Result{
3737
Ok: true,
3838
Message: fmt.Sprintf(
39-
"delta %v between %s and %s is within %v",
40-
diff, argGot, argWant, delta,
39+
`delta %v between %s and %s is within %v
40+
got: %v
41+
want: %v
42+
delta: %v`,
43+
gotDelta, argGot, argWant, delta,
44+
got,
45+
want,
46+
gotDelta,
4147
),
4248
}
4349
}
4450

4551
return ghost.Result{
4652
Ok: false,
4753
Message: fmt.Sprintf(
48-
"delta %v between %s and %s is not within %v",
49-
diff, argGot, argWant, delta,
54+
`delta %v between %s and %s is not within %v
55+
got: %v
56+
want: %v
57+
delta: %v`,
58+
gotDelta, argGot, argWant, delta,
59+
got,
60+
want,
61+
gotDelta,
5062
),
5163
}
5264
}

‎be/assertions_test.go

+20-5
Original file line numberDiff line numberDiff line change
@@ -20,21 +20,30 @@ func TestClose(t *testing.T) {
2020
g.Should(be.True(result.Ok))
2121
g.Should(be.Equal(
2222
result.Message,
23-
"delta 0.5 between got (32) and want (32.5) is within 1",
23+
`delta 0.5 between got (32) and want (32.5) is within 1
24+
got: 32
25+
want: 32.5
26+
delta: 0.5`,
2427
))
2528

2629
result = be.Close(32.0, 32.5, 1.0)
2730
g.Should(be.True(result.Ok))
2831
g.Should(be.Equal(
2932
result.Message,
30-
"delta 0.5 between 32.0 and 32.5 is within 1",
33+
`delta 0.5 between 32.0 and 32.5 is within 1
34+
got: 32
35+
want: 32.5
36+
delta: 0.5`,
3137
))
3238

3339
result = be.Close(32.5, 32.0, 1.0)
3440
g.Should(be.True(result.Ok))
3541
g.Should(be.Equal(
3642
result.Message,
37-
"delta 0.5 between 32.5 and 32.0 is within 1",
43+
`delta 0.5 between 32.5 and 32.0 is within 1
44+
got: 32.5
45+
want: 32
46+
delta: 0.5`,
3847
))
3948
})
4049

@@ -48,14 +57,20 @@ func TestClose(t *testing.T) {
4857
g.Should(be.False(result.Ok))
4958
g.Should(be.Equal(
5059
result.Message,
51-
"delta 0.5 between got (32) and want (32.5) is not within 0.3",
60+
`delta 0.5 between got (32) and want (32.5) is not within 0.3
61+
got: 32
62+
want: 32.5
63+
delta: 0.5`,
5264
))
5365

5466
result = be.Close(32.0, 32.5, 0.3)
5567
g.Should(be.False(result.Ok))
5668
g.Should(be.Equal(
5769
result.Message,
58-
"delta 0.5 between 32.0 and 32.5 is not within 0.3",
70+
`delta 0.5 between 32.0 and 32.5 is not within 0.3
71+
got: 32
72+
want: 32.5
73+
delta: 0.5`,
5974
))
6075
})
6176
}

0 commit comments

Comments
 (0)
Please sign in to comment.