Skip to content

jimeh/go-golden

Repository files navigation

go-golden

Yet another Go package for working with *.golden test files, with a focus on simplicity.

Go Reference Actions Status Coverage GitHub issues GitHub pull requests License Status

Import

import "github.com/jimeh/go-golden"

Usage

func TestExampleMyStruct(t *testing.T) {
    got, err := json.Marshal(&MyStruct{Foo: "Bar"})
    require.NoError(t, err)

    want := golden.Do(t, got)

    assert.Equal(t, want, got)
}

The above example will read/write to:

  • testdata/TestExampleMyStruct.golden

The call to golden.Do() is equivalent to:

if golden.Update() {
    golden.Set(t, got)
}
want := golden.Get(t)

To update the golden file (have golden.Update() return true), simply set the GOLDEN_UPDATE environment variable to one of 1, y, t, yes, on, or true when running tests.

Documentation

Please see the Go Reference for documentation and examples.

License

MIT

About

Yet another Go package for working with *.golden test files, with a focus on simplicity.

Topics

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •