Skip to content

Commit c0bb561

Browse files
authored
Merge pull request #15 from lvan100/main
Refactor: Update test assertion method
2 parents 6488ba2 + 4097016 commit c0bb561

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

51 files changed

+608
-693
lines changed
File renamed without changes.

conf/bind_test.go

Lines changed: 45 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -72,16 +72,16 @@ func TestConverter(t *testing.T) {
7272
t.Run("success", func(t *testing.T) {
7373
err := conf.New().Bind(&s)
7474
assert.Nil(t, err)
75-
assert.Equal(t, s.Time, time.Date(2025, 2, 1, 0, 0, 0, 0, time.UTC))
76-
assert.Equal(t, s.Duration, 10*time.Second)
75+
assert.That(t, s.Time).Equal(time.Date(2025, 2, 1, 0, 0, 0, 0, time.UTC))
76+
assert.That(t, s.Duration).Equal(10 * time.Second)
7777
})
7878

7979
t.Run("error", func(t *testing.T) {
8080
p := conf.Map(map[string]interface{}{
8181
"time": "2025-02-01M00:00:00",
8282
})
8383
err := p.Bind(&s)
84-
assert.Error(t, err, "unable to parse date: 2025-02-01M00:00:00")
84+
assert.ThatError(t, err).Matches("unable to parse date: 2025-02-01M00:00:00")
8585
})
8686
}
8787

@@ -91,19 +91,19 @@ func TestSplitter(t *testing.T) {
9191
var points []image.Point
9292
err := conf.New().Bind(&points, "${:=(1,2)(3,4)}>>PointSplitter")
9393
assert.Nil(t, err)
94-
assert.Equal(t, points, []image.Point{{X: 1, Y: 2}, {X: 3, Y: 4}})
94+
assert.That(t, points).Equal([]image.Point{{X: 1, Y: 2}, {X: 3, Y: 4}})
9595
})
9696

9797
t.Run("split error", func(t *testing.T) {
9898
var points []image.Point
9999
err := conf.New().Bind(&points, "${:=(1}>>PointSplitter")
100-
assert.Error(t, err, "split error")
100+
assert.ThatError(t, err).Matches("split error")
101101
})
102102

103103
t.Run("unknown splitter", func(t *testing.T) {
104104
var points []image.Point
105105
err := conf.New().Bind(&points, "${:=(1}>>UnknownSplitter")
106-
assert.Error(t, err, "unknown splitter 'UnknownSplitter'")
106+
assert.ThatError(t, err).Matches("unknown splitter 'UnknownSplitter'")
107107
})
108108
}
109109

@@ -112,34 +112,34 @@ func TestParseTag(t *testing.T) {
112112
t.Run("normal", func(t *testing.T) {
113113
tag, err := conf.ParseTag("${a}")
114114
assert.Nil(t, err)
115-
assert.Equal(t, tag.String(), "${a}")
115+
assert.That(t, tag.String()).Equal("${a}")
116116
})
117117

118118
t.Run("default", func(t *testing.T) {
119119
tag, err := conf.ParseTag("${a:=123}")
120120
assert.Nil(t, err)
121-
assert.Equal(t, tag.String(), "${a:=123}")
121+
assert.That(t, tag.String()).Equal("${a:=123}")
122122
})
123123

124124
t.Run("splitter", func(t *testing.T) {
125125
tag, err := conf.ParseTag("${a:=1,2,3}>>splitter")
126126
assert.Nil(t, err)
127-
assert.Equal(t, tag.String(), "${a:=1,2,3}>>splitter")
127+
assert.That(t, tag.String()).Equal("${a:=1,2,3}>>splitter")
128128
})
129129

130130
t.Run("error - 1", func(t *testing.T) {
131131
_, err := conf.ParseTag(">>splitter")
132-
assert.Error(t, err, "parse tag .* error: invalid syntax")
132+
assert.ThatError(t, err).Matches("parse tag .* error: invalid syntax")
133133
})
134134

135135
t.Run("error - 2", func(t *testing.T) {
136136
_, err := conf.ParseTag("${a:=1,2,3")
137-
assert.Error(t, err, "parse tag .* error: invalid syntax")
137+
assert.ThatError(t, err).Matches("parse tag .* error: invalid syntax")
138138
})
139139

140140
t.Run("error - 3", func(t *testing.T) {
141141
_, err := conf.ParseTag("{a:=1,2,3}")
142-
assert.Error(t, err, "parse tag .* error: invalid syntax")
142+
assert.ThatError(t, err).Matches("parse tag .* error: invalid syntax")
143143
})
144144
}
145145

@@ -149,14 +149,14 @@ func TestBindParam(t *testing.T) {
149149
var param conf.BindParam
150150
err := param.BindTag("${ROOT}", "")
151151
assert.Nil(t, err)
152-
assert.Equal(t, param, conf.BindParam{})
152+
assert.That(t, param).Equal(conf.BindParam{})
153153
})
154154

155155
t.Run("normal", func(t *testing.T) {
156156
var param conf.BindParam
157157
err := param.BindTag("${a:=1,2,3}>>splitter", "")
158158
assert.Nil(t, err)
159-
assert.Equal(t, param, conf.BindParam{
159+
assert.That(t, param).Equal(conf.BindParam{
160160
Key: "a",
161161
Path: "",
162162
Tag: conf.ParsedTag{
@@ -176,7 +176,7 @@ func TestBindParam(t *testing.T) {
176176
}
177177
err := param.BindTag("${a:=1,2,3}>>splitter", "")
178178
assert.Nil(t, err)
179-
assert.Equal(t, param, conf.BindParam{
179+
assert.That(t, param).Equal(conf.BindParam{
180180
Key: "s.a",
181181
Path: "Struct",
182182
Tag: conf.ParsedTag{
@@ -193,7 +193,7 @@ func TestBindParam(t *testing.T) {
193193
var param conf.BindParam
194194
err := param.BindTag("${:=1,2,3}>>splitter", "")
195195
assert.Nil(t, err)
196-
assert.Equal(t, param, conf.BindParam{
196+
assert.That(t, param).Equal(conf.BindParam{
197197
Key: "",
198198
Path: "",
199199
Tag: conf.ParsedTag{
@@ -209,13 +209,13 @@ func TestBindParam(t *testing.T) {
209209
t.Run("error - 1", func(t *testing.T) {
210210
var param conf.BindParam
211211
err := param.BindTag("a:=123", "")
212-
assert.Error(t, err, "parse tag .* error: invalid syntax")
212+
assert.ThatError(t, err).Matches("parse tag .* error: invalid syntax")
213213
})
214214

215215
t.Run("error - 2", func(t *testing.T) {
216216
var param conf.BindParam
217217
err := param.BindTag("${}", "")
218-
assert.Error(t, err, "parse tag .* error: invalid syntax")
218+
assert.ThatError(t, err).Matches("parse tag .* error: invalid syntax")
219219
})
220220
}
221221

@@ -277,7 +277,7 @@ func TestProperties_Bind(t *testing.T) {
277277
var s UnnamedDefault
278278
err := conf.New().Bind(&s)
279279
assert.Nil(t, err)
280-
assert.Equal(t, s, UnnamedDefault{
280+
assert.That(t, s).Equal(UnnamedDefault{
281281
Strs: []string{"1", "2", "3"},
282282
Ints: []int{},
283283
Map: map[string]int{},
@@ -287,17 +287,17 @@ func TestProperties_Bind(t *testing.T) {
287287
t.Run("BindTag error", func(t *testing.T) {
288288
var i int
289289
err := conf.New().Bind(&i, "$")
290-
assert.Error(t, err, "parse tag '\\$' error: invalid syntax")
290+
assert.ThatError(t, err).Matches("parse tag '\\$' error: invalid syntax")
291291
})
292292

293293
t.Run("target error - 1", func(t *testing.T) {
294294
err := conf.New().Bind(5)
295-
assert.Error(t, err, "should be a ptr")
295+
assert.ThatError(t, err).Matches("should be a ptr")
296296
})
297297

298298
t.Run("target error - 1", func(t *testing.T) {
299299
err := conf.New().Bind(new(*int))
300-
assert.Error(t, err, "target should be value type")
300+
assert.ThatError(t, err).Matches("target should be value type")
301301
})
302302

303303
t.Run("validate error", func(t *testing.T) {
@@ -307,14 +307,14 @@ func TestProperties_Bind(t *testing.T) {
307307
err := conf.Map(map[string]interface{}{
308308
"v": "1",
309309
}).Bind(&s)
310-
assert.Error(t, err, "validate failed on .* for value 1")
310+
assert.ThatError(t, err).Matches("validate failed on .* for value 1")
311311
})
312312

313313
t.Run("array error", func(t *testing.T) {
314314
err := conf.New().Bind(new(struct {
315315
Arr [3]string `value:"${arr:=1,2,3}"`
316316
}))
317-
assert.Error(t, err, "use slice instead of array")
317+
assert.ThatError(t, err).Matches("use slice instead of array")
318318
})
319319

320320
t.Run("type error - 1", func(t *testing.T) {
@@ -324,7 +324,7 @@ func TestProperties_Bind(t *testing.T) {
324324
err := conf.Map(map[string]interface{}{
325325
"v": "abc",
326326
}).Bind(&s)
327-
assert.Error(t, err, "strconv.ParseInt: parsing .*: invalid syntax")
327+
assert.ThatError(t, err).Matches("strconv.ParseInt: parsing .*: invalid syntax")
328328
})
329329

330330
t.Run("type error - 2", func(t *testing.T) {
@@ -334,7 +334,7 @@ func TestProperties_Bind(t *testing.T) {
334334
err := conf.Map(map[string]interface{}{
335335
"v": "abc",
336336
}).Bind(&s)
337-
assert.Error(t, err, "strconv.ParseUint: parsing .*: invalid syntax")
337+
assert.ThatError(t, err).Matches("strconv.ParseUint: parsing .*: invalid syntax")
338338
})
339339

340340
t.Run("type error - 3", func(t *testing.T) {
@@ -344,7 +344,7 @@ func TestProperties_Bind(t *testing.T) {
344344
err := conf.Map(map[string]interface{}{
345345
"v": "abc",
346346
}).Bind(&s)
347-
assert.Error(t, err, "strconv.ParseFloat: parsing .*: invalid syntax")
347+
assert.ThatError(t, err).Matches("strconv.ParseFloat: parsing .*: invalid syntax")
348348
})
349349

350350
t.Run("type error - 4", func(t *testing.T) {
@@ -354,7 +354,7 @@ func TestProperties_Bind(t *testing.T) {
354354
err := conf.Map(map[string]interface{}{
355355
"v": "abc",
356356
}).Bind(&s)
357-
assert.Error(t, err, "strconv.ParseBool: parsing .*: invalid syntax")
357+
assert.ThatError(t, err).Matches("strconv.ParseBool: parsing .*: invalid syntax")
358358
})
359359

360360
t.Run("slice error - 1", func(t *testing.T) {
@@ -366,31 +366,31 @@ func TestProperties_Bind(t *testing.T) {
366366
"1", "2", "a",
367367
},
368368
}).Bind(&s)
369-
assert.Error(t, err, "strconv.ParseInt: parsing .*: invalid syntax")
369+
assert.ThatError(t, err).Matches("strconv.ParseInt: parsing .*: invalid syntax")
370370
})
371371

372372
t.Run("slice error - 2", func(t *testing.T) {
373373
var s struct {
374374
Value []int `value:"${v}"`
375375
}
376376
err := conf.New().Bind(&s)
377-
assert.Error(t, err, "property \"v\" not exist")
377+
assert.ThatError(t, err).Matches("property \"v\" not exist")
378378
})
379379

380380
t.Run("slice error - 3", func(t *testing.T) {
381381
var s struct {
382382
Value []image.Rectangle `value:"${v:={(1,2)(3,4)}"`
383383
}
384384
err := conf.New().Bind(&s)
385-
assert.Error(t, err, "can't find converter for image.Rectangle")
385+
assert.ThatError(t, err).Matches("can't find converter for image.Rectangle")
386386
})
387387

388388
t.Run("map error - 1", func(t *testing.T) {
389389
var s struct {
390390
Value map[string]int `value:"${v:=a:b,1:2}"`
391391
}
392392
err := conf.New().Bind(&s)
393-
assert.Error(t, err, "map can't have a non-empty default value")
393+
assert.ThatError(t, err).Matches("map can't have a non-empty default value")
394394
})
395395

396396
t.Run("map error - 2", func(t *testing.T) {
@@ -402,7 +402,7 @@ func TestProperties_Bind(t *testing.T) {
402402
"1", "2", "3",
403403
},
404404
}).Bind(&s)
405-
assert.Error(t, err, "property v.0 not exist")
405+
assert.ThatError(t, err).Matches("property v.0 not exist")
406406
})
407407

408408
t.Run("map error - 3", func(t *testing.T) {
@@ -412,15 +412,15 @@ func TestProperties_Bind(t *testing.T) {
412412
err := conf.Map(map[string]interface{}{
413413
"v": "a:b,1:2",
414414
}).Bind(&s)
415-
assert.Error(t, err, "property conflict at path v")
415+
assert.ThatError(t, err).Matches("property conflict at path v")
416416
})
417417

418418
t.Run("map error - 4", func(t *testing.T) {
419419
var s struct {
420420
Value map[string]int `value:"${v}"`
421421
}
422422
err := conf.New().Bind(&s)
423-
assert.Error(t, err, "property \"v\" not exist")
423+
assert.ThatError(t, err).Matches("property \"v\" not exist")
424424
})
425425

426426
t.Run("struct error - 1", func(t *testing.T) {
@@ -430,7 +430,7 @@ func TestProperties_Bind(t *testing.T) {
430430
} `value:"${v:={123}}"`
431431
}
432432
err := conf.New().Bind(&s)
433-
assert.Error(t, err, "struct can't have a non-empty default value")
433+
assert.ThatError(t, err).Matches("struct can't have a non-empty default value")
434434
})
435435

436436
t.Run("struct error - 2", func(t *testing.T) {
@@ -441,15 +441,15 @@ func TestProperties_Bind(t *testing.T) {
441441
"v": "123",
442442
}).Bind(&s)
443443
assert.Nil(t, err)
444-
assert.Equal(t, s.int, 0)
444+
assert.That(t, s.int).Equal(0)
445445
})
446446

447447
t.Run("struct error - 3", func(t *testing.T) {
448448
var s struct {
449449
Value int `value:"v"`
450450
}
451451
err := conf.New().Bind(&s)
452-
assert.Error(t, err, "parse tag 'v' error: invalid syntax")
452+
assert.ThatError(t, err).Matches("parse tag 'v' error: invalid syntax")
453453
})
454454

455455
t.Run("struct error - 4", func(t *testing.T) {
@@ -465,7 +465,7 @@ func TestProperties_Bind(t *testing.T) {
465465
v := reflect.ValueOf(&i).Elem()
466466
err := conf.New().Bind(v, "${:=3}")
467467
assert.Nil(t, err)
468-
assert.Equal(t, i, 3)
468+
assert.That(t, i).Equal(3)
469469
})
470470

471471
t.Run("success", func(t *testing.T) {
@@ -556,11 +556,11 @@ func TestProperties_Bind(t *testing.T) {
556556
var c DBConfig
557557
err = p.Bind(&c)
558558
assert.Nil(t, err)
559-
assert.Equal(t, c, expect)
559+
assert.That(t, c).Equal(expect)
560560

561561
err = p.Bind(&c, "${prefix}")
562562
assert.Nil(t, err)
563-
assert.Equal(t, c, expect)
563+
assert.That(t, c).Equal(expect)
564564
})
565565

566566
t.Run("filter false", func(t *testing.T) {
@@ -578,7 +578,7 @@ func TestProperties_Bind(t *testing.T) {
578578
return false, nil
579579
}))
580580
assert.Nil(t, err)
581-
assert.Equal(t, s.Value, 3)
581+
assert.That(t, s.Value).Equal(3)
582582
})
583583

584584
t.Run("filter true", func(t *testing.T) {
@@ -596,7 +596,7 @@ func TestProperties_Bind(t *testing.T) {
596596
return true, nil
597597
}))
598598
assert.Nil(t, err)
599-
assert.Equal(t, s.Value, 0)
599+
assert.That(t, s.Value).Equal(0)
600600
})
601601

602602
t.Run("filter error", func(t *testing.T) {
@@ -613,7 +613,7 @@ func TestProperties_Bind(t *testing.T) {
613613
funcFilter(func(i interface{}, param conf.BindParam) (bool, error) {
614614
return false, errors.New("filter error")
615615
}))
616-
assert.Error(t, err, "filter error")
617-
assert.Equal(t, s.Value, 0)
616+
assert.ThatError(t, err).Matches("filter error")
617+
assert.That(t, s.Value).Equal(0)
618618
})
619619
}

0 commit comments

Comments
 (0)