snaps

package
v0.4.10 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 5, 2023 License: MIT Imports: 28 Imported by: 13

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Clean added in v0.1.3

func Clean(t *testing.M)

Clean runs checks for identifying obsolete snapshots and prints a Test Summary.

Must be called in a TestMain

func TestMain(t *testing.M) {
 v := t.Run()

 // After all tests have run `go-snaps` can check for not used snapshots
 snaps.Clean(t)

 os.Exit(v)
}

func Dir added in v0.4.5

func Dir(dir string) func(*config)

Specify folder name where snapshots are stored

default: __snapshots__

Accepts absolute paths

func Filename added in v0.4.5

func Filename(name string) func(*config)

Specify folder name where snapshots are stored

default: __snapshots__

this doesn't change the file extension

func MatchJSON added in v0.4.1

func MatchJSON(t testingT, input interface{}, matchers ...match.JSONMatcher)

MatchJSON verifies the input matches the most recent snap file. Input can be a valid json string or []byte or whatever value can be passed successfully on `json.Marshal`.

MatchJSON(t, `{"user":"mock-user","age":10,"email":"mock@email.com"}`)
MatchJSON(t, []byte(`{"user":"mock-user","age":10,"email":"mock@email.com"}`))
MatchJSON(t, User{10, "mock-email"})

MatchJSON also supports passing matchers as a third argument. Those matchers can act either as validators or placeholders for data that might change on each invocation e.g. dates.

MatchJSON(t, User{created: time.Now(), email: "mock-email"}, match.Any("created"))

func MatchSnapshot

func MatchSnapshot(t testingT, values ...interface{})

MatchSnapshot verifies the values match the most recent snap file You can pass multiple values

MatchSnapshot(t, 10, "hello world")

or call MatchSnapshot multiples times inside a test

MatchSnapshot(t, 10)
MatchSnapshot(t, "hello world")

The difference is the latter will create multiple entries.

func Skip added in v0.1.3

func Skip(t testingT, args ...interface{})

Wrapper of testing.Skip

Keeps track which snapshots are getting skipped and not marked as obsolete.

func SkipNow added in v0.1.3

func SkipNow(t testingT)

Wrapper of testing.SkipNow

Keeps track which snapshots are getting skipped and not marked as obsolete.

func Skipf added in v0.1.3

func Skipf(t testingT, format string, args ...interface{})

Wrapper of testing.Skipf

Keeps track which snapshots are getting skipped and not marked as obsolete.

func WithConfig added in v0.4.5

func WithConfig(args ...func(*config)) *config

Create snaps with configuration

e.g WithConfig(Filename("my_test")).MatchSnapshot(t, "hello world")

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL