diff --git a/decorators_test.go b/decorators_test.go index 1342785..356a992 100644 --- a/decorators_test.go +++ b/decorators_test.go @@ -68,11 +68,35 @@ p.Stop() - out := buf.String() - out = out[:strings.IndexRune(out, '[')] - want := fmt.Sprintf("%[1]db / %[1]db", total) - if out != want { - t.Errorf("Expected: %s, got %s\n", want, out) + barOut := buf.String() + want := fmt.Sprintf("%[1]db / %[1]db[", total) + if !strings.Contains(barOut, want) { + t.Errorf("%q not found in bar: %s\n", want, barOut) + } +} + +func TestPrependCountersDindentRight(t *testing.T) { + var buf bytes.Buffer + p := mpb.New().SetOut(&buf) + + reader := strings.NewReader(content) + + total := int64(len(content)) + bar := p.AddBar(total).TrimLeftSpace().TrimRightSpace(). + PrependCounters("%3s / %3s", mpb.UnitBytes, 12, mpb.DidentRight) + preader := bar.ProxyReader(reader) + + _, err := io.Copy(ioutil.Discard, preader) + if err != nil { + t.Errorf("Error copying from reader: %+v\n", err) + } + + p.Stop() + + barOut := buf.String() + want := fmt.Sprintf("%[1]db / %[1]db [", total) + if !strings.Contains(barOut, want) { + t.Errorf("%q not found in bar: %s\n", want, barOut) } }