@@ -6,33 +6,46 @@ import (
66 "time"
77
88 "github.com/obsidiandynamics/libstdgo/check"
9+ "github.com/obsidiandynamics/libstdgo/scribe"
910 "github.com/stretchr/testify/require"
1011)
1112
1213func TestPerformTimed_noError (t * testing.T ) {
13- done , err := performTimed (void (func () {}), 10 * time .Second )
14+ m := scribe .NewMock ()
15+ scr := scribe .New (m .Factories ())
16+ done , err := performTimed (scr .W (), "some-op" , void (func () {}), 10 * time .Second )
1417 require .True (t , done )
1518 require .Nil (t , err )
19+ m .Entries ().Assert (t , scribe .Count (0 ))
1620}
1721
1822func TestPerformTimed_withError (t * testing.T ) {
19- done , err := performTimed (func () error {
23+ m := scribe .NewMock ()
24+ scr := scribe .New (m .Factories ())
25+ done , err := performTimed (scr .W (), "some-op" , func () error {
2026 return check .ErrSimulated
2127 }, 10 * time .Second )
2228 require .True (t , done )
2329 require .Equal (t , check .ErrSimulated , err )
30+ m .Entries ().Assert (t , scribe .Count (0 ))
2431}
2532
2633func TestPerformTimed_withTimeout (t * testing.T ) {
34+ m := scribe .NewMock ()
35+ scr := scribe .New (m .Factories ())
2736 wg := sync.WaitGroup {}
2837 wg .Add (1 )
2938
30- done , err := performTimed (func () error {
39+ done , err := performTimed (scr . W (), "some-op" , func () error {
3140 wg .Wait ()
3241 return nil
3342 }, 1 * time .Millisecond )
3443 require .False (t , done )
3544 require .Nil (t , err )
45+ m .Entries ().
46+ Having (scribe .LogLevel (scribe .Warn )).
47+ Having (scribe .MessageEqual ("Operation 'some-op' failed to complete within 1ms" )).
48+ Assert (t , scribe .Count (1 ))
3649
3750 wg .Done ()
3851}
0 commit comments