diff options
| -rw-r--r-- | spew/internal_test.go | 36 |
1 files changed, 19 insertions, 17 deletions
diff --git a/spew/internal_test.go b/spew/internal_test.go index 8e6e54d..7a872e4 100644 --- a/spew/internal_test.go +++ b/spew/internal_test.go @@ -36,6 +36,9 @@ type dummyFmtState struct { } func (dfs *dummyFmtState) Flag(f int) bool { + if f == int('+') { + return true + } return false } @@ -47,10 +50,14 @@ func (dfs *dummyFmtState) Width() (int, bool) { return 0, false } -// TestDumpInvalidReflectValue ensures the dump code handles an invalid reflect -// value properly. This needs access to internal state since it should never -// happen in real code and therefore can't be tested via the public API. -func TestDumpInvalidReflectValue(t *testing.T) { +// TestInvalidReflectValue ensures the dump and formatter code handles an +// invalid reflect value properly. This needs access to internal state since it +// should never happen in real code and therefore can't be tested via the public +// API. +func TestInvalidReflectValue(t *testing.T) { + i := 1 + + // Dump invalid reflect value. v := new(reflect.Value) buf := new(bytes.Buffer) d := dumpState{w: buf, cs: &Config} @@ -58,22 +65,17 @@ func TestDumpInvalidReflectValue(t *testing.T) { s := buf.String() want := "<invalid>" if s != want { - t.Errorf("DumpInvalidReflectValue\n got: %s want: %s", s, want) + t.Errorf("InvalidReflectValue #%d\n got: %s want: %s", i, s, want) } -} + i++ -// TestFormatterInvalidReflectValue ensures the formatter code handles an -// invalid reflect value properly. This needs access to internal state since it -// should never happen in real code and therefore can't be tested via the public -// API. -func TestFormatterInvalidReflectValue(t *testing.T) { - v := new(reflect.Value) - buf := new(dummyFmtState) - f := formatState{value: *v, cs: &Config, fs: buf} + // Formatter invalid reflect value. + buf2 := new(dummyFmtState) + f := formatState{value: *v, cs: &Config, fs: buf2} f.format(*v) - s := buf.String() - want := "<invalid>" + s = buf2.String() + want = "<invalid>" if s != want { - t.Errorf("FormatterInvalidReflectValue\n got: %s want: %s", s, want) + t.Errorf("InvalidReflectValue #%d got: %s want: %s", i, s, want) } } |
