github.com/tursom/GoCollections@v0.3.10/concurrent/collections/Park_test.go (about) 1 package collections 2 3 import ( 4 "testing" 5 6 "github.com/tursom/GoCollections/util/time" 7 ) 8 9 func TestPark_Park(t *testing.T) { 10 var p Park 11 t1 := time.Now() 12 go func() { 13 <-time.After(time.Second) 14 15 p.Unpark() 16 }() 17 18 p.Park() 19 t2 := time.Now() 20 21 sub := t2.Sub(t1) 22 if sub > time.Duration(float64(time.Second)*1.01) || 23 sub < time.Duration(float64(time.Second)*0.09) { 24 t.Fatal(sub) 25 } 26 } 27 28 func TestPark_ParkT(t *testing.T) { 29 var p Park 30 t1 := time.Now() 31 p.ParkT(time.Second) 32 t2 := time.Now() 33 34 sub := t2.Sub(t1) 35 if sub > time.Duration(float64(time.Second)*1.01) || 36 sub < time.Duration(float64(time.Second)*0.09) { 37 t.Fatal(sub) 38 } 39 }