bump gotest.tools v2.3.0, google/go-cmp v0.2.0
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This commit is contained in:
		
							
								
								
									
										37
									
								
								vendor/github.com/google/go-cmp/cmp/options.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										37
									
								
								vendor/github.com/google/go-cmp/cmp/options.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -38,9 +38,8 @@ type Option interface {
 | 
			
		||||
type applicableOption interface {
 | 
			
		||||
	Option
 | 
			
		||||
 | 
			
		||||
	// apply executes the option and reports whether the option was applied.
 | 
			
		||||
	// Each option may mutate s.
 | 
			
		||||
	apply(s *state, vx, vy reflect.Value) bool
 | 
			
		||||
	// apply executes the option, which may mutate s or panic.
 | 
			
		||||
	apply(s *state, vx, vy reflect.Value)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// coreOption represents the following types:
 | 
			
		||||
@@ -85,7 +84,7 @@ func (opts Options) filter(s *state, vx, vy reflect.Value, t reflect.Type) (out
 | 
			
		||||
	return out
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (opts Options) apply(s *state, _, _ reflect.Value) bool {
 | 
			
		||||
func (opts Options) apply(s *state, _, _ reflect.Value) {
 | 
			
		||||
	const warning = "ambiguous set of applicable options"
 | 
			
		||||
	const help = "consider using filters to ensure at most one Comparer or Transformer may apply"
 | 
			
		||||
	var ss []string
 | 
			
		||||
@@ -196,7 +195,7 @@ type ignore struct{ core }
 | 
			
		||||
 | 
			
		||||
func (ignore) isFiltered() bool                                                     { return false }
 | 
			
		||||
func (ignore) filter(_ *state, _, _ reflect.Value, _ reflect.Type) applicableOption { return ignore{} }
 | 
			
		||||
func (ignore) apply(_ *state, _, _ reflect.Value) bool                              { return true }
 | 
			
		||||
func (ignore) apply(_ *state, _, _ reflect.Value)                                   { return }
 | 
			
		||||
func (ignore) String() string                                                       { return "Ignore()" }
 | 
			
		||||
 | 
			
		||||
// invalid is a sentinel Option type to indicate that some options could not
 | 
			
		||||
@@ -204,7 +203,7 @@ func (ignore) String() string
 | 
			
		||||
type invalid struct{ core }
 | 
			
		||||
 | 
			
		||||
func (invalid) filter(_ *state, _, _ reflect.Value, _ reflect.Type) applicableOption { return invalid{} }
 | 
			
		||||
func (invalid) apply(s *state, _, _ reflect.Value) bool {
 | 
			
		||||
func (invalid) apply(s *state, _, _ reflect.Value) {
 | 
			
		||||
	const help = "consider using AllowUnexported or cmpopts.IgnoreUnexported"
 | 
			
		||||
	panic(fmt.Sprintf("cannot handle unexported field: %#v\n%s", s.curPath, help))
 | 
			
		||||
}
 | 
			
		||||
@@ -215,9 +214,12 @@ func (invalid) apply(s *state, _, _ reflect.Value) bool {
 | 
			
		||||
// The transformer f must be a function "func(T) R" that converts values of
 | 
			
		||||
// type T to those of type R and is implicitly filtered to input values
 | 
			
		||||
// assignable to T. The transformer must not mutate T in any way.
 | 
			
		||||
// If T and R are the same type, an additional filter must be applied to
 | 
			
		||||
// act as the base case to prevent an infinite recursion applying the same
 | 
			
		||||
// transform to itself (see the SortedSlice example).
 | 
			
		||||
//
 | 
			
		||||
// To help prevent some cases of infinite recursive cycles applying the
 | 
			
		||||
// same transform to the output of itself (e.g., in the case where the
 | 
			
		||||
// input and output types are the same), an implicit filter is added such that
 | 
			
		||||
// a transformer is applicable only if that exact transformer is not already
 | 
			
		||||
// in the tail of the Path since the last non-Transform step.
 | 
			
		||||
//
 | 
			
		||||
// The name is a user provided label that is used as the Transform.Name in the
 | 
			
		||||
// transformation PathStep. If empty, an arbitrary name is used.
 | 
			
		||||
@@ -248,14 +250,21 @@ type transformer struct {
 | 
			
		||||
 | 
			
		||||
func (tr *transformer) isFiltered() bool { return tr.typ != nil }
 | 
			
		||||
 | 
			
		||||
func (tr *transformer) filter(_ *state, _, _ reflect.Value, t reflect.Type) applicableOption {
 | 
			
		||||
func (tr *transformer) filter(s *state, _, _ reflect.Value, t reflect.Type) applicableOption {
 | 
			
		||||
	for i := len(s.curPath) - 1; i >= 0; i-- {
 | 
			
		||||
		if t, ok := s.curPath[i].(*transform); !ok {
 | 
			
		||||
			break // Hit most recent non-Transform step
 | 
			
		||||
		} else if tr == t.trans {
 | 
			
		||||
			return nil // Cannot directly use same Transform
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	if tr.typ == nil || t.AssignableTo(tr.typ) {
 | 
			
		||||
		return tr
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (tr *transformer) apply(s *state, vx, vy reflect.Value) bool {
 | 
			
		||||
func (tr *transformer) apply(s *state, vx, vy reflect.Value) {
 | 
			
		||||
	// Update path before calling the Transformer so that dynamic checks
 | 
			
		||||
	// will use the updated path.
 | 
			
		||||
	s.curPath.push(&transform{pathStep{tr.fnc.Type().Out(0)}, tr})
 | 
			
		||||
@@ -264,7 +273,6 @@ func (tr *transformer) apply(s *state, vx, vy reflect.Value) bool {
 | 
			
		||||
	vx = s.callTRFunc(tr.fnc, vx)
 | 
			
		||||
	vy = s.callTRFunc(tr.fnc, vy)
 | 
			
		||||
	s.compareAny(vx, vy)
 | 
			
		||||
	return true
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (tr transformer) String() string {
 | 
			
		||||
@@ -310,10 +318,9 @@ func (cm *comparer) filter(_ *state, _, _ reflect.Value, t reflect.Type) applica
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (cm *comparer) apply(s *state, vx, vy reflect.Value) bool {
 | 
			
		||||
func (cm *comparer) apply(s *state, vx, vy reflect.Value) {
 | 
			
		||||
	eq := s.callTTBFunc(cm.fnc, vx, vy)
 | 
			
		||||
	s.report(eq, vx, vy)
 | 
			
		||||
	return true
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (cm comparer) String() string {
 | 
			
		||||
@@ -348,7 +355,7 @@ func (cm comparer) String() string {
 | 
			
		||||
// all unexported fields on specified struct types.
 | 
			
		||||
func AllowUnexported(types ...interface{}) Option {
 | 
			
		||||
	if !supportAllowUnexported {
 | 
			
		||||
		panic("AllowUnexported is not supported on App Engine Classic or GopherJS")
 | 
			
		||||
		panic("AllowUnexported is not supported on purego builds, Google App Engine Standard, or GopherJS")
 | 
			
		||||
	}
 | 
			
		||||
	m := make(map[reflect.Type]bool)
 | 
			
		||||
	for _, typ := range types {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user