github.com/talwat/gobar@v1.0.2/gobar_test.go (about) 1 package gobar_test 2 3 import ( 4 "io" 5 "net/http" 6 "testing" 7 "time" 8 9 "github.com/talwat/gobar" 10 ) 11 12 func BenchmarkRender(b *testing.B) { 13 bar := gobar.NewBar(0, 10000, "benchmark") 14 15 for i := 0; i < int(bar.Total); i++ { 16 bar.Increment(1) 17 } 18 } 19 20 func TestBasic(t *testing.T) { 21 t.Parallel() 22 23 bar := gobar.NewBar(0, 10, "basic") 24 25 for i := 0; i < int(bar.Total); i++ { 26 time.Sleep(10 * time.Millisecond) 27 bar.Increment(1) 28 } 29 } 30 31 func TestIO(t *testing.T) { 32 t.Parallel() 33 34 req, _ := http.NewRequest("GET", "https://dl.google.com/go/go1.14.2.src.tar.gz", nil) 35 resp, _ := http.DefaultClient.Do(req) 36 37 bar := gobar.NewBar(0, resp.ContentLength, "io") 38 39 defer resp.Body.Close() 40 41 io.Copy(io.MultiWriter(bar), resp.Body) 42 }