gopass/pkg/termio/progress_test.go
Dominik Schulz f58454452f
Increase test coverage (#2461)
RELEASE_NOTES=n/a

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>

Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
2022-12-10 23:05:33 +01:00

55 lines
828 B
Go

package termio
import (
"testing"
"time"
"github.com/stretchr/testify/assert"
)
func ExampleProgressBar() { //nolint:testableexamples
max := 100
pb := NewProgressBar(int64(max))
for i := 0; i < max+20; i++ {
pb.Inc()
pb.Add(23)
pb.Set(42)
time.Sleep(150 * time.Millisecond)
}
time.Sleep(5 * time.Second)
pb.Done()
}
func TestProgress(t *testing.T) {
max := 2
pb := NewProgressBar(int64(max))
pb.Hidden = true
pb.Inc()
assert.Equal(t, int64(1), pb.current)
}
func TestProgressNil(t *testing.T) {
t.Parallel()
var pb *ProgressBar
pb.Inc()
pb.Add(4)
pb.Done()
}
func TestProgressBytes(t *testing.T) {
max := 2 << 24
pb := NewProgressBar(int64(max))
pb.Hidden = true
pb.Bytes = true
for i := 0; i < 24; i++ {
pb.Set(2 << (i + 1))
}
assert.Equal(t, int64(max), pb.current)
pb.Done()
}