Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/jimeh/go-golden

Yet another Go package for working with *.golden test files, with a focus on simplicity.
https://github.com/jimeh/go-golden

go go-golden go-test go-test-helper go-testing golang golden-file

Last synced: about 2 months ago
JSON representation

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

Awesome Lists containing this project

README

        


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

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

## Usage

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

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

assert.Equal(t, want, got)
}
```

The above example will read/write to:

- `testdata/TestExampleMyStruct.golden`

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](https://pkg.go.dev/github.com/jimeh/go-golden#section-documentation)
for documentation and examples.

## License

[MIT](https://github.com/jimeh/go-golden/blob/master/LICENSE)