stats icon indicating copy to clipboard operation
stats copied to clipboard

Add GoString for Value

Open f2prateek opened this issue 7 years ago • 0 comments

This came up recently when I was trying to test some code that calls the stats package like this: eng.Add("foo", uint64(1)).

// test

handler := &statstest.Handler{}
eng := stats.NewEngine("test", handler)

runCode(eng)

assert.Equal(t, []stats.Measure{
{
            Name: "test.foo",
            Fields: []stats.Field{
                stats.MakeField("", 1, stats.Counter),
            },
            Tags: []stats.Tag{},
        }
}, handler.Measures())

This test failed with a cryptic error: assert.go:24: ! [0].Fields[0].Value.typ: 2 != 3.

The error was that my code is using uint, but the test is using an `int.

If the value type had a GoString method, the error could have been more obvious.

f2prateek avatar Apr 10 '18 21:04 f2prateek