[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#927909: ITP: golang-github-gcla-deep -- Golang deep variable equality test that returns human-readable differences

Package: wnpp
Severity: wishlist
Owner: Dawid Dziurla <dawidd0811@gmail.com>

* Package name    : golang-github-gcla-deep
  Version         : 1.0.2-1
  Upstream Author : Graham Clark, Daniel Nichter
* URL             : https://github.com/gcla/deep
* License         : Expat
  Programming Lang: Go
  Description     : Golang deep variable equality test that returns human-readable differences

 Deep Variable Equality for Humans.
 This package provides a single function: deep.Equal. It's like
 reflect.DeepEqual (http://golang.org/pkg/reflect/#DeepEqual) but
 much friendlier to humans (or any sentient being) for two reason:
  • deep.Equal returns a list of differences
  • deep.Equal does not compare unexported fields (by default)
 This is a fork of go-test/deep package with an additional feature.
 Message from author about changes made in fork:
 Some packages may require Equal()'s parameters to be set in a
 particular way that is incompatible with other users within
 the same program. The global configuration parameters can be
 changed and restored, but this could lead to bugs due to race
 conditions. This commit makes the parameters that control
 Equal()'s operation part of a structure, Comparer, for which
 Equal() is now a method. Users can configure their own
 Comparer struct if desired. To preserve the existing package
 interface, the package-level Equals() method will use a
 default Comparer object that relies on pointers to the current
 global configuration parameters (pointers so that the
 operation of the global Equals() function will change
 immediately upon changing the value of any global
 configuration setting).

This package in the dependency tree of upcoming "termshark" package (#927799).

Reply to: