Package for equality of Go values
![GoDev][godev] ![Build Status][actions]
This package is intended to be a more powerful and safer alternative to
reflect.DeepEqual for comparing whether two values are semantically equal.
The primary features of cmp are:
- When the default behavior of equality does not suit the needs of the test,
- Types that have an
Equalmethod may use that method to determine equality.
- If no custom equality functions are used and no
Equalmethod is defined,
reflect.DeepEqual. Unlike reflect.DeepEqual, unexported
fields are not compared by default; they result in panics unless suppressed
by using an Ignore option (see cmpopts.IgnoreUnexported) or explicitly
compared using the AllowUnexported option.
See the [documentation][godev] for more information.
This is not an official Google product.
[godev]: https://pkg.go.dev/github.com/google/go-cmp/cmp [actions]: https://github.com/google/go-cmp/actions
Install
go get -u github.com/google/go-cmp/cmp
License
BSD - See [LICENSE][license] file
[license]: https://github.com/google/go-cmp/blob/master/LICENSE