Update hcsshim tag to v0.10.0-rc.9
Signed-off-by: Kirtana Ashok <kiashok@microsoft.com>
This commit is contained in:
		
							
								
								
									
										36
									
								
								vendor/github.com/stretchr/testify/assert/assertion_compare.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										36
									
								
								vendor/github.com/stretchr/testify/assert/assertion_compare.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -352,9 +352,9 @@ func compare(obj1, obj2 interface{}, kind reflect.Kind) (CompareType, bool) {
 | 
			
		||||
 | 
			
		||||
// Greater asserts that the first element is greater than the second
 | 
			
		||||
//
 | 
			
		||||
//    assert.Greater(t, 2, 1)
 | 
			
		||||
//    assert.Greater(t, float64(2), float64(1))
 | 
			
		||||
//    assert.Greater(t, "b", "a")
 | 
			
		||||
//	assert.Greater(t, 2, 1)
 | 
			
		||||
//	assert.Greater(t, float64(2), float64(1))
 | 
			
		||||
//	assert.Greater(t, "b", "a")
 | 
			
		||||
func Greater(t TestingT, e1 interface{}, e2 interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -364,10 +364,10 @@ func Greater(t TestingT, e1 interface{}, e2 interface{}, msgAndArgs ...interface
 | 
			
		||||
 | 
			
		||||
// GreaterOrEqual asserts that the first element is greater than or equal to the second
 | 
			
		||||
//
 | 
			
		||||
//    assert.GreaterOrEqual(t, 2, 1)
 | 
			
		||||
//    assert.GreaterOrEqual(t, 2, 2)
 | 
			
		||||
//    assert.GreaterOrEqual(t, "b", "a")
 | 
			
		||||
//    assert.GreaterOrEqual(t, "b", "b")
 | 
			
		||||
//	assert.GreaterOrEqual(t, 2, 1)
 | 
			
		||||
//	assert.GreaterOrEqual(t, 2, 2)
 | 
			
		||||
//	assert.GreaterOrEqual(t, "b", "a")
 | 
			
		||||
//	assert.GreaterOrEqual(t, "b", "b")
 | 
			
		||||
func GreaterOrEqual(t TestingT, e1 interface{}, e2 interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -377,9 +377,9 @@ func GreaterOrEqual(t TestingT, e1 interface{}, e2 interface{}, msgAndArgs ...in
 | 
			
		||||
 | 
			
		||||
// Less asserts that the first element is less than the second
 | 
			
		||||
//
 | 
			
		||||
//    assert.Less(t, 1, 2)
 | 
			
		||||
//    assert.Less(t, float64(1), float64(2))
 | 
			
		||||
//    assert.Less(t, "a", "b")
 | 
			
		||||
//	assert.Less(t, 1, 2)
 | 
			
		||||
//	assert.Less(t, float64(1), float64(2))
 | 
			
		||||
//	assert.Less(t, "a", "b")
 | 
			
		||||
func Less(t TestingT, e1 interface{}, e2 interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -389,10 +389,10 @@ func Less(t TestingT, e1 interface{}, e2 interface{}, msgAndArgs ...interface{})
 | 
			
		||||
 | 
			
		||||
// LessOrEqual asserts that the first element is less than or equal to the second
 | 
			
		||||
//
 | 
			
		||||
//    assert.LessOrEqual(t, 1, 2)
 | 
			
		||||
//    assert.LessOrEqual(t, 2, 2)
 | 
			
		||||
//    assert.LessOrEqual(t, "a", "b")
 | 
			
		||||
//    assert.LessOrEqual(t, "b", "b")
 | 
			
		||||
//	assert.LessOrEqual(t, 1, 2)
 | 
			
		||||
//	assert.LessOrEqual(t, 2, 2)
 | 
			
		||||
//	assert.LessOrEqual(t, "a", "b")
 | 
			
		||||
//	assert.LessOrEqual(t, "b", "b")
 | 
			
		||||
func LessOrEqual(t TestingT, e1 interface{}, e2 interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -402,8 +402,8 @@ func LessOrEqual(t TestingT, e1 interface{}, e2 interface{}, msgAndArgs ...inter
 | 
			
		||||
 | 
			
		||||
// Positive asserts that the specified element is positive
 | 
			
		||||
//
 | 
			
		||||
//    assert.Positive(t, 1)
 | 
			
		||||
//    assert.Positive(t, 1.23)
 | 
			
		||||
//	assert.Positive(t, 1)
 | 
			
		||||
//	assert.Positive(t, 1.23)
 | 
			
		||||
func Positive(t TestingT, e interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -414,8 +414,8 @@ func Positive(t TestingT, e interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
 | 
			
		||||
// Negative asserts that the specified element is negative
 | 
			
		||||
//
 | 
			
		||||
//    assert.Negative(t, -1)
 | 
			
		||||
//    assert.Negative(t, -1.23)
 | 
			
		||||
//	assert.Negative(t, -1)
 | 
			
		||||
//	assert.Negative(t, -1.23)
 | 
			
		||||
func Negative(t TestingT, e interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										216
									
								
								vendor/github.com/stretchr/testify/assert/assertion_format.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										216
									
								
								vendor/github.com/stretchr/testify/assert/assertion_format.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -22,9 +22,9 @@ func Conditionf(t TestingT, comp Comparison, msg string, args ...interface{}) bo
 | 
			
		||||
// Containsf asserts that the specified string, list(array, slice...) or map contains the
 | 
			
		||||
// specified substring or element.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Containsf(t, "Hello World", "World", "error message %s", "formatted")
 | 
			
		||||
//    assert.Containsf(t, ["Hello", "World"], "World", "error message %s", "formatted")
 | 
			
		||||
//    assert.Containsf(t, {"Hello": "World"}, "Hello", "error message %s", "formatted")
 | 
			
		||||
//	assert.Containsf(t, "Hello World", "World", "error message %s", "formatted")
 | 
			
		||||
//	assert.Containsf(t, ["Hello", "World"], "World", "error message %s", "formatted")
 | 
			
		||||
//	assert.Containsf(t, {"Hello": "World"}, "Hello", "error message %s", "formatted")
 | 
			
		||||
func Containsf(t TestingT, s interface{}, contains interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -56,7 +56,7 @@ func ElementsMatchf(t TestingT, listA interface{}, listB interface{}, msg string
 | 
			
		||||
// Emptyf asserts that the specified object is empty.  I.e. nil, "", false, 0 or either
 | 
			
		||||
// a slice or a channel with len == 0.
 | 
			
		||||
//
 | 
			
		||||
//  assert.Emptyf(t, obj, "error message %s", "formatted")
 | 
			
		||||
//	assert.Emptyf(t, obj, "error message %s", "formatted")
 | 
			
		||||
func Emptyf(t TestingT, object interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -66,7 +66,7 @@ func Emptyf(t TestingT, object interface{}, msg string, args ...interface{}) boo
 | 
			
		||||
 | 
			
		||||
// Equalf asserts that two objects are equal.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Equalf(t, 123, 123, "error message %s", "formatted")
 | 
			
		||||
//	assert.Equalf(t, 123, 123, "error message %s", "formatted")
 | 
			
		||||
//
 | 
			
		||||
// Pointer variable equality is determined based on the equality of the
 | 
			
		||||
// referenced values (as opposed to the memory addresses). Function equality
 | 
			
		||||
@@ -81,8 +81,8 @@ func Equalf(t TestingT, expected interface{}, actual interface{}, msg string, ar
 | 
			
		||||
// EqualErrorf asserts that a function returned an error (i.e. not `nil`)
 | 
			
		||||
// and that it is equal to the provided error.
 | 
			
		||||
//
 | 
			
		||||
//   actualObj, err := SomeFunction()
 | 
			
		||||
//   assert.EqualErrorf(t, err,  expectedErrorString, "error message %s", "formatted")
 | 
			
		||||
//	actualObj, err := SomeFunction()
 | 
			
		||||
//	assert.EqualErrorf(t, err,  expectedErrorString, "error message %s", "formatted")
 | 
			
		||||
func EqualErrorf(t TestingT, theError error, errString string, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -90,10 +90,27 @@ func EqualErrorf(t TestingT, theError error, errString string, msg string, args
 | 
			
		||||
	return EqualError(t, theError, errString, append([]interface{}{msg}, args...)...)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// EqualExportedValuesf asserts that the types of two objects are equal and their public
 | 
			
		||||
// fields are also equal. This is useful for comparing structs that have private fields
 | 
			
		||||
// that could potentially differ.
 | 
			
		||||
//
 | 
			
		||||
//	 type S struct {
 | 
			
		||||
//		Exported     	int
 | 
			
		||||
//		notExported   	int
 | 
			
		||||
//	 }
 | 
			
		||||
//	 assert.EqualExportedValuesf(t, S{1, 2}, S{1, 3}, "error message %s", "formatted") => true
 | 
			
		||||
//	 assert.EqualExportedValuesf(t, S{1, 2}, S{2, 3}, "error message %s", "formatted") => false
 | 
			
		||||
func EqualExportedValuesf(t TestingT, expected interface{}, actual interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
	}
 | 
			
		||||
	return EqualExportedValues(t, expected, actual, append([]interface{}{msg}, args...)...)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// EqualValuesf asserts that two objects are equal or convertable to the same types
 | 
			
		||||
// and equal.
 | 
			
		||||
//
 | 
			
		||||
//    assert.EqualValuesf(t, uint32(123), int32(123), "error message %s", "formatted")
 | 
			
		||||
//	assert.EqualValuesf(t, uint32(123), int32(123), "error message %s", "formatted")
 | 
			
		||||
func EqualValuesf(t TestingT, expected interface{}, actual interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -103,10 +120,10 @@ func EqualValuesf(t TestingT, expected interface{}, actual interface{}, msg stri
 | 
			
		||||
 | 
			
		||||
// Errorf asserts that a function returned an error (i.e. not `nil`).
 | 
			
		||||
//
 | 
			
		||||
//   actualObj, err := SomeFunction()
 | 
			
		||||
//   if assert.Errorf(t, err, "error message %s", "formatted") {
 | 
			
		||||
// 	   assert.Equal(t, expectedErrorf, err)
 | 
			
		||||
//   }
 | 
			
		||||
//	  actualObj, err := SomeFunction()
 | 
			
		||||
//	  if assert.Errorf(t, err, "error message %s", "formatted") {
 | 
			
		||||
//		   assert.Equal(t, expectedErrorf, err)
 | 
			
		||||
//	  }
 | 
			
		||||
func Errorf(t TestingT, err error, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -126,8 +143,8 @@ func ErrorAsf(t TestingT, err error, target interface{}, msg string, args ...int
 | 
			
		||||
// ErrorContainsf asserts that a function returned an error (i.e. not `nil`)
 | 
			
		||||
// and that the error contains the specified substring.
 | 
			
		||||
//
 | 
			
		||||
//   actualObj, err := SomeFunction()
 | 
			
		||||
//   assert.ErrorContainsf(t, err,  expectedErrorSubString, "error message %s", "formatted")
 | 
			
		||||
//	actualObj, err := SomeFunction()
 | 
			
		||||
//	assert.ErrorContainsf(t, err,  expectedErrorSubString, "error message %s", "formatted")
 | 
			
		||||
func ErrorContainsf(t TestingT, theError error, contains string, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -147,7 +164,7 @@ func ErrorIsf(t TestingT, err error, target error, msg string, args ...interface
 | 
			
		||||
// Eventuallyf asserts that given condition will be met in waitFor time,
 | 
			
		||||
// periodically checking target function each tick.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Eventuallyf(t, func() bool { return true; }, time.Second, 10*time.Millisecond, "error message %s", "formatted")
 | 
			
		||||
//	assert.Eventuallyf(t, func() bool { return true; }, time.Second, 10*time.Millisecond, "error message %s", "formatted")
 | 
			
		||||
func Eventuallyf(t TestingT, condition func() bool, waitFor time.Duration, tick time.Duration, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -155,9 +172,34 @@ func Eventuallyf(t TestingT, condition func() bool, waitFor time.Duration, tick
 | 
			
		||||
	return Eventually(t, condition, waitFor, tick, append([]interface{}{msg}, args...)...)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// EventuallyWithTf asserts that given condition will be met in waitFor time,
 | 
			
		||||
// periodically checking target function each tick. In contrast to Eventually,
 | 
			
		||||
// it supplies a CollectT to the condition function, so that the condition
 | 
			
		||||
// function can use the CollectT to call other assertions.
 | 
			
		||||
// The condition is considered "met" if no errors are raised in a tick.
 | 
			
		||||
// The supplied CollectT collects all errors from one tick (if there are any).
 | 
			
		||||
// If the condition is not met before waitFor, the collected errors of
 | 
			
		||||
// the last tick are copied to t.
 | 
			
		||||
//
 | 
			
		||||
//	externalValue := false
 | 
			
		||||
//	go func() {
 | 
			
		||||
//		time.Sleep(8*time.Second)
 | 
			
		||||
//		externalValue = true
 | 
			
		||||
//	}()
 | 
			
		||||
//	assert.EventuallyWithTf(t, func(c *assert.CollectT, "error message %s", "formatted") {
 | 
			
		||||
//		// add assertions as needed; any assertion failure will fail the current tick
 | 
			
		||||
//		assert.True(c, externalValue, "expected 'externalValue' to be true")
 | 
			
		||||
//	}, 1*time.Second, 10*time.Second, "external state has not changed to 'true'; still false")
 | 
			
		||||
func EventuallyWithTf(t TestingT, condition func(collect *CollectT), waitFor time.Duration, tick time.Duration, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
	}
 | 
			
		||||
	return EventuallyWithT(t, condition, waitFor, tick, append([]interface{}{msg}, args...)...)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Exactlyf asserts that two objects are equal in value and type.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Exactlyf(t, int32(123), int64(123), "error message %s", "formatted")
 | 
			
		||||
//	assert.Exactlyf(t, int32(123), int64(123), "error message %s", "formatted")
 | 
			
		||||
func Exactlyf(t TestingT, expected interface{}, actual interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -183,7 +225,7 @@ func FailNowf(t TestingT, failureMessage string, msg string, args ...interface{}
 | 
			
		||||
 | 
			
		||||
// Falsef asserts that the specified value is false.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Falsef(t, myBool, "error message %s", "formatted")
 | 
			
		||||
//	assert.Falsef(t, myBool, "error message %s", "formatted")
 | 
			
		||||
func Falsef(t TestingT, value bool, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -202,9 +244,9 @@ func FileExistsf(t TestingT, path string, msg string, args ...interface{}) bool
 | 
			
		||||
 | 
			
		||||
// Greaterf asserts that the first element is greater than the second
 | 
			
		||||
//
 | 
			
		||||
//    assert.Greaterf(t, 2, 1, "error message %s", "formatted")
 | 
			
		||||
//    assert.Greaterf(t, float64(2), float64(1), "error message %s", "formatted")
 | 
			
		||||
//    assert.Greaterf(t, "b", "a", "error message %s", "formatted")
 | 
			
		||||
//	assert.Greaterf(t, 2, 1, "error message %s", "formatted")
 | 
			
		||||
//	assert.Greaterf(t, float64(2), float64(1), "error message %s", "formatted")
 | 
			
		||||
//	assert.Greaterf(t, "b", "a", "error message %s", "formatted")
 | 
			
		||||
func Greaterf(t TestingT, e1 interface{}, e2 interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -214,10 +256,10 @@ func Greaterf(t TestingT, e1 interface{}, e2 interface{}, msg string, args ...in
 | 
			
		||||
 | 
			
		||||
// GreaterOrEqualf asserts that the first element is greater than or equal to the second
 | 
			
		||||
//
 | 
			
		||||
//    assert.GreaterOrEqualf(t, 2, 1, "error message %s", "formatted")
 | 
			
		||||
//    assert.GreaterOrEqualf(t, 2, 2, "error message %s", "formatted")
 | 
			
		||||
//    assert.GreaterOrEqualf(t, "b", "a", "error message %s", "formatted")
 | 
			
		||||
//    assert.GreaterOrEqualf(t, "b", "b", "error message %s", "formatted")
 | 
			
		||||
//	assert.GreaterOrEqualf(t, 2, 1, "error message %s", "formatted")
 | 
			
		||||
//	assert.GreaterOrEqualf(t, 2, 2, "error message %s", "formatted")
 | 
			
		||||
//	assert.GreaterOrEqualf(t, "b", "a", "error message %s", "formatted")
 | 
			
		||||
//	assert.GreaterOrEqualf(t, "b", "b", "error message %s", "formatted")
 | 
			
		||||
func GreaterOrEqualf(t TestingT, e1 interface{}, e2 interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -228,7 +270,7 @@ func GreaterOrEqualf(t TestingT, e1 interface{}, e2 interface{}, msg string, arg
 | 
			
		||||
// HTTPBodyContainsf asserts that a specified handler returns a
 | 
			
		||||
// body that contains a string.
 | 
			
		||||
//
 | 
			
		||||
//  assert.HTTPBodyContainsf(t, myHandler, "GET", "www.google.com", nil, "I'm Feeling Lucky", "error message %s", "formatted")
 | 
			
		||||
//	assert.HTTPBodyContainsf(t, myHandler, "GET", "www.google.com", nil, "I'm Feeling Lucky", "error message %s", "formatted")
 | 
			
		||||
//
 | 
			
		||||
// Returns whether the assertion was successful (true) or not (false).
 | 
			
		||||
func HTTPBodyContainsf(t TestingT, handler http.HandlerFunc, method string, url string, values url.Values, str interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
@@ -241,7 +283,7 @@ func HTTPBodyContainsf(t TestingT, handler http.HandlerFunc, method string, url
 | 
			
		||||
// HTTPBodyNotContainsf asserts that a specified handler returns a
 | 
			
		||||
// body that does not contain a string.
 | 
			
		||||
//
 | 
			
		||||
//  assert.HTTPBodyNotContainsf(t, myHandler, "GET", "www.google.com", nil, "I'm Feeling Lucky", "error message %s", "formatted")
 | 
			
		||||
//	assert.HTTPBodyNotContainsf(t, myHandler, "GET", "www.google.com", nil, "I'm Feeling Lucky", "error message %s", "formatted")
 | 
			
		||||
//
 | 
			
		||||
// Returns whether the assertion was successful (true) or not (false).
 | 
			
		||||
func HTTPBodyNotContainsf(t TestingT, handler http.HandlerFunc, method string, url string, values url.Values, str interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
@@ -253,7 +295,7 @@ func HTTPBodyNotContainsf(t TestingT, handler http.HandlerFunc, method string, u
 | 
			
		||||
 | 
			
		||||
// HTTPErrorf asserts that a specified handler returns an error status code.
 | 
			
		||||
//
 | 
			
		||||
//  assert.HTTPErrorf(t, myHandler, "POST", "/a/b/c", url.Values{"a": []string{"b", "c"}}
 | 
			
		||||
//	assert.HTTPErrorf(t, myHandler, "POST", "/a/b/c", url.Values{"a": []string{"b", "c"}}
 | 
			
		||||
//
 | 
			
		||||
// Returns whether the assertion was successful (true) or not (false).
 | 
			
		||||
func HTTPErrorf(t TestingT, handler http.HandlerFunc, method string, url string, values url.Values, msg string, args ...interface{}) bool {
 | 
			
		||||
@@ -265,7 +307,7 @@ func HTTPErrorf(t TestingT, handler http.HandlerFunc, method string, url string,
 | 
			
		||||
 | 
			
		||||
// HTTPRedirectf asserts that a specified handler returns a redirect status code.
 | 
			
		||||
//
 | 
			
		||||
//  assert.HTTPRedirectf(t, myHandler, "GET", "/a/b/c", url.Values{"a": []string{"b", "c"}}
 | 
			
		||||
//	assert.HTTPRedirectf(t, myHandler, "GET", "/a/b/c", url.Values{"a": []string{"b", "c"}}
 | 
			
		||||
//
 | 
			
		||||
// Returns whether the assertion was successful (true) or not (false).
 | 
			
		||||
func HTTPRedirectf(t TestingT, handler http.HandlerFunc, method string, url string, values url.Values, msg string, args ...interface{}) bool {
 | 
			
		||||
@@ -277,7 +319,7 @@ func HTTPRedirectf(t TestingT, handler http.HandlerFunc, method string, url stri
 | 
			
		||||
 | 
			
		||||
// HTTPStatusCodef asserts that a specified handler returns a specified status code.
 | 
			
		||||
//
 | 
			
		||||
//  assert.HTTPStatusCodef(t, myHandler, "GET", "/notImplemented", nil, 501, "error message %s", "formatted")
 | 
			
		||||
//	assert.HTTPStatusCodef(t, myHandler, "GET", "/notImplemented", nil, 501, "error message %s", "formatted")
 | 
			
		||||
//
 | 
			
		||||
// Returns whether the assertion was successful (true) or not (false).
 | 
			
		||||
func HTTPStatusCodef(t TestingT, handler http.HandlerFunc, method string, url string, values url.Values, statuscode int, msg string, args ...interface{}) bool {
 | 
			
		||||
@@ -289,7 +331,7 @@ func HTTPStatusCodef(t TestingT, handler http.HandlerFunc, method string, url st
 | 
			
		||||
 | 
			
		||||
// HTTPSuccessf asserts that a specified handler returns a success status code.
 | 
			
		||||
//
 | 
			
		||||
//  assert.HTTPSuccessf(t, myHandler, "POST", "http://www.google.com", nil, "error message %s", "formatted")
 | 
			
		||||
//	assert.HTTPSuccessf(t, myHandler, "POST", "http://www.google.com", nil, "error message %s", "formatted")
 | 
			
		||||
//
 | 
			
		||||
// Returns whether the assertion was successful (true) or not (false).
 | 
			
		||||
func HTTPSuccessf(t TestingT, handler http.HandlerFunc, method string, url string, values url.Values, msg string, args ...interface{}) bool {
 | 
			
		||||
@@ -301,7 +343,7 @@ func HTTPSuccessf(t TestingT, handler http.HandlerFunc, method string, url strin
 | 
			
		||||
 | 
			
		||||
// Implementsf asserts that an object is implemented by the specified interface.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Implementsf(t, (*MyInterface)(nil), new(MyObject), "error message %s", "formatted")
 | 
			
		||||
//	assert.Implementsf(t, (*MyInterface)(nil), new(MyObject), "error message %s", "formatted")
 | 
			
		||||
func Implementsf(t TestingT, interfaceObject interface{}, object interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -311,7 +353,7 @@ func Implementsf(t TestingT, interfaceObject interface{}, object interface{}, ms
 | 
			
		||||
 | 
			
		||||
// InDeltaf asserts that the two numerals are within delta of each other.
 | 
			
		||||
//
 | 
			
		||||
// 	 assert.InDeltaf(t, math.Pi, 22/7.0, 0.01, "error message %s", "formatted")
 | 
			
		||||
//	assert.InDeltaf(t, math.Pi, 22/7.0, 0.01, "error message %s", "formatted")
 | 
			
		||||
func InDeltaf(t TestingT, expected interface{}, actual interface{}, delta float64, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -353,9 +395,9 @@ func InEpsilonSlicef(t TestingT, expected interface{}, actual interface{}, epsil
 | 
			
		||||
 | 
			
		||||
// IsDecreasingf asserts that the collection is decreasing
 | 
			
		||||
//
 | 
			
		||||
//    assert.IsDecreasingf(t, []int{2, 1, 0}, "error message %s", "formatted")
 | 
			
		||||
//    assert.IsDecreasingf(t, []float{2, 1}, "error message %s", "formatted")
 | 
			
		||||
//    assert.IsDecreasingf(t, []string{"b", "a"}, "error message %s", "formatted")
 | 
			
		||||
//	assert.IsDecreasingf(t, []int{2, 1, 0}, "error message %s", "formatted")
 | 
			
		||||
//	assert.IsDecreasingf(t, []float{2, 1}, "error message %s", "formatted")
 | 
			
		||||
//	assert.IsDecreasingf(t, []string{"b", "a"}, "error message %s", "formatted")
 | 
			
		||||
func IsDecreasingf(t TestingT, object interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -365,9 +407,9 @@ func IsDecreasingf(t TestingT, object interface{}, msg string, args ...interface
 | 
			
		||||
 | 
			
		||||
// IsIncreasingf asserts that the collection is increasing
 | 
			
		||||
//
 | 
			
		||||
//    assert.IsIncreasingf(t, []int{1, 2, 3}, "error message %s", "formatted")
 | 
			
		||||
//    assert.IsIncreasingf(t, []float{1, 2}, "error message %s", "formatted")
 | 
			
		||||
//    assert.IsIncreasingf(t, []string{"a", "b"}, "error message %s", "formatted")
 | 
			
		||||
//	assert.IsIncreasingf(t, []int{1, 2, 3}, "error message %s", "formatted")
 | 
			
		||||
//	assert.IsIncreasingf(t, []float{1, 2}, "error message %s", "formatted")
 | 
			
		||||
//	assert.IsIncreasingf(t, []string{"a", "b"}, "error message %s", "formatted")
 | 
			
		||||
func IsIncreasingf(t TestingT, object interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -377,9 +419,9 @@ func IsIncreasingf(t TestingT, object interface{}, msg string, args ...interface
 | 
			
		||||
 | 
			
		||||
// IsNonDecreasingf asserts that the collection is not decreasing
 | 
			
		||||
//
 | 
			
		||||
//    assert.IsNonDecreasingf(t, []int{1, 1, 2}, "error message %s", "formatted")
 | 
			
		||||
//    assert.IsNonDecreasingf(t, []float{1, 2}, "error message %s", "formatted")
 | 
			
		||||
//    assert.IsNonDecreasingf(t, []string{"a", "b"}, "error message %s", "formatted")
 | 
			
		||||
//	assert.IsNonDecreasingf(t, []int{1, 1, 2}, "error message %s", "formatted")
 | 
			
		||||
//	assert.IsNonDecreasingf(t, []float{1, 2}, "error message %s", "formatted")
 | 
			
		||||
//	assert.IsNonDecreasingf(t, []string{"a", "b"}, "error message %s", "formatted")
 | 
			
		||||
func IsNonDecreasingf(t TestingT, object interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -389,9 +431,9 @@ func IsNonDecreasingf(t TestingT, object interface{}, msg string, args ...interf
 | 
			
		||||
 | 
			
		||||
// IsNonIncreasingf asserts that the collection is not increasing
 | 
			
		||||
//
 | 
			
		||||
//    assert.IsNonIncreasingf(t, []int{2, 1, 1}, "error message %s", "formatted")
 | 
			
		||||
//    assert.IsNonIncreasingf(t, []float{2, 1}, "error message %s", "formatted")
 | 
			
		||||
//    assert.IsNonIncreasingf(t, []string{"b", "a"}, "error message %s", "formatted")
 | 
			
		||||
//	assert.IsNonIncreasingf(t, []int{2, 1, 1}, "error message %s", "formatted")
 | 
			
		||||
//	assert.IsNonIncreasingf(t, []float{2, 1}, "error message %s", "formatted")
 | 
			
		||||
//	assert.IsNonIncreasingf(t, []string{"b", "a"}, "error message %s", "formatted")
 | 
			
		||||
func IsNonIncreasingf(t TestingT, object interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -409,7 +451,7 @@ func IsTypef(t TestingT, expectedType interface{}, object interface{}, msg strin
 | 
			
		||||
 | 
			
		||||
// JSONEqf asserts that two JSON strings are equivalent.
 | 
			
		||||
//
 | 
			
		||||
//  assert.JSONEqf(t, `{"hello": "world", "foo": "bar"}`, `{"foo": "bar", "hello": "world"}`, "error message %s", "formatted")
 | 
			
		||||
//	assert.JSONEqf(t, `{"hello": "world", "foo": "bar"}`, `{"foo": "bar", "hello": "world"}`, "error message %s", "formatted")
 | 
			
		||||
func JSONEqf(t TestingT, expected string, actual string, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -420,7 +462,7 @@ func JSONEqf(t TestingT, expected string, actual string, msg string, args ...int
 | 
			
		||||
// Lenf asserts that the specified object has specific length.
 | 
			
		||||
// Lenf also fails if the object has a type that len() not accept.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Lenf(t, mySlice, 3, "error message %s", "formatted")
 | 
			
		||||
//	assert.Lenf(t, mySlice, 3, "error message %s", "formatted")
 | 
			
		||||
func Lenf(t TestingT, object interface{}, length int, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -430,9 +472,9 @@ func Lenf(t TestingT, object interface{}, length int, msg string, args ...interf
 | 
			
		||||
 | 
			
		||||
// Lessf asserts that the first element is less than the second
 | 
			
		||||
//
 | 
			
		||||
//    assert.Lessf(t, 1, 2, "error message %s", "formatted")
 | 
			
		||||
//    assert.Lessf(t, float64(1), float64(2), "error message %s", "formatted")
 | 
			
		||||
//    assert.Lessf(t, "a", "b", "error message %s", "formatted")
 | 
			
		||||
//	assert.Lessf(t, 1, 2, "error message %s", "formatted")
 | 
			
		||||
//	assert.Lessf(t, float64(1), float64(2), "error message %s", "formatted")
 | 
			
		||||
//	assert.Lessf(t, "a", "b", "error message %s", "formatted")
 | 
			
		||||
func Lessf(t TestingT, e1 interface{}, e2 interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -442,10 +484,10 @@ func Lessf(t TestingT, e1 interface{}, e2 interface{}, msg string, args ...inter
 | 
			
		||||
 | 
			
		||||
// LessOrEqualf asserts that the first element is less than or equal to the second
 | 
			
		||||
//
 | 
			
		||||
//    assert.LessOrEqualf(t, 1, 2, "error message %s", "formatted")
 | 
			
		||||
//    assert.LessOrEqualf(t, 2, 2, "error message %s", "formatted")
 | 
			
		||||
//    assert.LessOrEqualf(t, "a", "b", "error message %s", "formatted")
 | 
			
		||||
//    assert.LessOrEqualf(t, "b", "b", "error message %s", "formatted")
 | 
			
		||||
//	assert.LessOrEqualf(t, 1, 2, "error message %s", "formatted")
 | 
			
		||||
//	assert.LessOrEqualf(t, 2, 2, "error message %s", "formatted")
 | 
			
		||||
//	assert.LessOrEqualf(t, "a", "b", "error message %s", "formatted")
 | 
			
		||||
//	assert.LessOrEqualf(t, "b", "b", "error message %s", "formatted")
 | 
			
		||||
func LessOrEqualf(t TestingT, e1 interface{}, e2 interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -455,8 +497,8 @@ func LessOrEqualf(t TestingT, e1 interface{}, e2 interface{}, msg string, args .
 | 
			
		||||
 | 
			
		||||
// Negativef asserts that the specified element is negative
 | 
			
		||||
//
 | 
			
		||||
//    assert.Negativef(t, -1, "error message %s", "formatted")
 | 
			
		||||
//    assert.Negativef(t, -1.23, "error message %s", "formatted")
 | 
			
		||||
//	assert.Negativef(t, -1, "error message %s", "formatted")
 | 
			
		||||
//	assert.Negativef(t, -1.23, "error message %s", "formatted")
 | 
			
		||||
func Negativef(t TestingT, e interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -467,7 +509,7 @@ func Negativef(t TestingT, e interface{}, msg string, args ...interface{}) bool
 | 
			
		||||
// Neverf asserts that the given condition doesn't satisfy in waitFor time,
 | 
			
		||||
// periodically checking the target function each tick.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Neverf(t, func() bool { return false; }, time.Second, 10*time.Millisecond, "error message %s", "formatted")
 | 
			
		||||
//	assert.Neverf(t, func() bool { return false; }, time.Second, 10*time.Millisecond, "error message %s", "formatted")
 | 
			
		||||
func Neverf(t TestingT, condition func() bool, waitFor time.Duration, tick time.Duration, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -477,7 +519,7 @@ func Neverf(t TestingT, condition func() bool, waitFor time.Duration, tick time.
 | 
			
		||||
 | 
			
		||||
// Nilf asserts that the specified object is nil.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Nilf(t, err, "error message %s", "formatted")
 | 
			
		||||
//	assert.Nilf(t, err, "error message %s", "formatted")
 | 
			
		||||
func Nilf(t TestingT, object interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -496,10 +538,10 @@ func NoDirExistsf(t TestingT, path string, msg string, args ...interface{}) bool
 | 
			
		||||
 | 
			
		||||
// NoErrorf asserts that a function returned no error (i.e. `nil`).
 | 
			
		||||
//
 | 
			
		||||
//   actualObj, err := SomeFunction()
 | 
			
		||||
//   if assert.NoErrorf(t, err, "error message %s", "formatted") {
 | 
			
		||||
// 	   assert.Equal(t, expectedObj, actualObj)
 | 
			
		||||
//   }
 | 
			
		||||
//	  actualObj, err := SomeFunction()
 | 
			
		||||
//	  if assert.NoErrorf(t, err, "error message %s", "formatted") {
 | 
			
		||||
//		   assert.Equal(t, expectedObj, actualObj)
 | 
			
		||||
//	  }
 | 
			
		||||
func NoErrorf(t TestingT, err error, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -519,9 +561,9 @@ func NoFileExistsf(t TestingT, path string, msg string, args ...interface{}) boo
 | 
			
		||||
// NotContainsf asserts that the specified string, list(array, slice...) or map does NOT contain the
 | 
			
		||||
// specified substring or element.
 | 
			
		||||
//
 | 
			
		||||
//    assert.NotContainsf(t, "Hello World", "Earth", "error message %s", "formatted")
 | 
			
		||||
//    assert.NotContainsf(t, ["Hello", "World"], "Earth", "error message %s", "formatted")
 | 
			
		||||
//    assert.NotContainsf(t, {"Hello": "World"}, "Earth", "error message %s", "formatted")
 | 
			
		||||
//	assert.NotContainsf(t, "Hello World", "Earth", "error message %s", "formatted")
 | 
			
		||||
//	assert.NotContainsf(t, ["Hello", "World"], "Earth", "error message %s", "formatted")
 | 
			
		||||
//	assert.NotContainsf(t, {"Hello": "World"}, "Earth", "error message %s", "formatted")
 | 
			
		||||
func NotContainsf(t TestingT, s interface{}, contains interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -532,9 +574,9 @@ func NotContainsf(t TestingT, s interface{}, contains interface{}, msg string, a
 | 
			
		||||
// NotEmptyf asserts that the specified object is NOT empty.  I.e. not nil, "", false, 0 or either
 | 
			
		||||
// a slice or a channel with len == 0.
 | 
			
		||||
//
 | 
			
		||||
//  if assert.NotEmptyf(t, obj, "error message %s", "formatted") {
 | 
			
		||||
//    assert.Equal(t, "two", obj[1])
 | 
			
		||||
//  }
 | 
			
		||||
//	if assert.NotEmptyf(t, obj, "error message %s", "formatted") {
 | 
			
		||||
//	  assert.Equal(t, "two", obj[1])
 | 
			
		||||
//	}
 | 
			
		||||
func NotEmptyf(t TestingT, object interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -544,7 +586,7 @@ func NotEmptyf(t TestingT, object interface{}, msg string, args ...interface{})
 | 
			
		||||
 | 
			
		||||
// NotEqualf asserts that the specified values are NOT equal.
 | 
			
		||||
//
 | 
			
		||||
//    assert.NotEqualf(t, obj1, obj2, "error message %s", "formatted")
 | 
			
		||||
//	assert.NotEqualf(t, obj1, obj2, "error message %s", "formatted")
 | 
			
		||||
//
 | 
			
		||||
// Pointer variable equality is determined based on the equality of the
 | 
			
		||||
// referenced values (as opposed to the memory addresses).
 | 
			
		||||
@@ -557,7 +599,7 @@ func NotEqualf(t TestingT, expected interface{}, actual interface{}, msg string,
 | 
			
		||||
 | 
			
		||||
// NotEqualValuesf asserts that two objects are not equal even when converted to the same type
 | 
			
		||||
//
 | 
			
		||||
//    assert.NotEqualValuesf(t, obj1, obj2, "error message %s", "formatted")
 | 
			
		||||
//	assert.NotEqualValuesf(t, obj1, obj2, "error message %s", "formatted")
 | 
			
		||||
func NotEqualValuesf(t TestingT, expected interface{}, actual interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -576,7 +618,7 @@ func NotErrorIsf(t TestingT, err error, target error, msg string, args ...interf
 | 
			
		||||
 | 
			
		||||
// NotNilf asserts that the specified object is not nil.
 | 
			
		||||
//
 | 
			
		||||
//    assert.NotNilf(t, err, "error message %s", "formatted")
 | 
			
		||||
//	assert.NotNilf(t, err, "error message %s", "formatted")
 | 
			
		||||
func NotNilf(t TestingT, object interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -586,7 +628,7 @@ func NotNilf(t TestingT, object interface{}, msg string, args ...interface{}) bo
 | 
			
		||||
 | 
			
		||||
// NotPanicsf asserts that the code inside the specified PanicTestFunc does NOT panic.
 | 
			
		||||
//
 | 
			
		||||
//   assert.NotPanicsf(t, func(){ RemainCalm() }, "error message %s", "formatted")
 | 
			
		||||
//	assert.NotPanicsf(t, func(){ RemainCalm() }, "error message %s", "formatted")
 | 
			
		||||
func NotPanicsf(t TestingT, f PanicTestFunc, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -596,8 +638,8 @@ func NotPanicsf(t TestingT, f PanicTestFunc, msg string, args ...interface{}) bo
 | 
			
		||||
 | 
			
		||||
// NotRegexpf asserts that a specified regexp does not match a string.
 | 
			
		||||
//
 | 
			
		||||
//  assert.NotRegexpf(t, regexp.MustCompile("starts"), "it's starting", "error message %s", "formatted")
 | 
			
		||||
//  assert.NotRegexpf(t, "^start", "it's not starting", "error message %s", "formatted")
 | 
			
		||||
//	assert.NotRegexpf(t, regexp.MustCompile("starts"), "it's starting", "error message %s", "formatted")
 | 
			
		||||
//	assert.NotRegexpf(t, "^start", "it's not starting", "error message %s", "formatted")
 | 
			
		||||
func NotRegexpf(t TestingT, rx interface{}, str interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -607,7 +649,7 @@ func NotRegexpf(t TestingT, rx interface{}, str interface{}, msg string, args ..
 | 
			
		||||
 | 
			
		||||
// NotSamef asserts that two pointers do not reference the same object.
 | 
			
		||||
//
 | 
			
		||||
//    assert.NotSamef(t, ptr1, ptr2, "error message %s", "formatted")
 | 
			
		||||
//	assert.NotSamef(t, ptr1, ptr2, "error message %s", "formatted")
 | 
			
		||||
//
 | 
			
		||||
// Both arguments must be pointer variables. Pointer variable sameness is
 | 
			
		||||
// determined based on the equality of both type and value.
 | 
			
		||||
@@ -621,7 +663,7 @@ func NotSamef(t TestingT, expected interface{}, actual interface{}, msg string,
 | 
			
		||||
// NotSubsetf asserts that the specified list(array, slice...) contains not all
 | 
			
		||||
// elements given in the specified subset(array, slice...).
 | 
			
		||||
//
 | 
			
		||||
//    assert.NotSubsetf(t, [1, 3, 4], [1, 2], "But [1, 3, 4] does not contain [1, 2]", "error message %s", "formatted")
 | 
			
		||||
//	assert.NotSubsetf(t, [1, 3, 4], [1, 2], "But [1, 3, 4] does not contain [1, 2]", "error message %s", "formatted")
 | 
			
		||||
func NotSubsetf(t TestingT, list interface{}, subset interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -639,7 +681,7 @@ func NotZerof(t TestingT, i interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
 | 
			
		||||
// Panicsf asserts that the code inside the specified PanicTestFunc panics.
 | 
			
		||||
//
 | 
			
		||||
//   assert.Panicsf(t, func(){ GoCrazy() }, "error message %s", "formatted")
 | 
			
		||||
//	assert.Panicsf(t, func(){ GoCrazy() }, "error message %s", "formatted")
 | 
			
		||||
func Panicsf(t TestingT, f PanicTestFunc, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -651,7 +693,7 @@ func Panicsf(t TestingT, f PanicTestFunc, msg string, args ...interface{}) bool
 | 
			
		||||
// panics, and that the recovered panic value is an error that satisfies the
 | 
			
		||||
// EqualError comparison.
 | 
			
		||||
//
 | 
			
		||||
//   assert.PanicsWithErrorf(t, "crazy error", func(){ GoCrazy() }, "error message %s", "formatted")
 | 
			
		||||
//	assert.PanicsWithErrorf(t, "crazy error", func(){ GoCrazy() }, "error message %s", "formatted")
 | 
			
		||||
func PanicsWithErrorf(t TestingT, errString string, f PanicTestFunc, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -662,7 +704,7 @@ func PanicsWithErrorf(t TestingT, errString string, f PanicTestFunc, msg string,
 | 
			
		||||
// PanicsWithValuef asserts that the code inside the specified PanicTestFunc panics, and that
 | 
			
		||||
// the recovered panic value equals the expected panic value.
 | 
			
		||||
//
 | 
			
		||||
//   assert.PanicsWithValuef(t, "crazy error", func(){ GoCrazy() }, "error message %s", "formatted")
 | 
			
		||||
//	assert.PanicsWithValuef(t, "crazy error", func(){ GoCrazy() }, "error message %s", "formatted")
 | 
			
		||||
func PanicsWithValuef(t TestingT, expected interface{}, f PanicTestFunc, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -672,8 +714,8 @@ func PanicsWithValuef(t TestingT, expected interface{}, f PanicTestFunc, msg str
 | 
			
		||||
 | 
			
		||||
// Positivef asserts that the specified element is positive
 | 
			
		||||
//
 | 
			
		||||
//    assert.Positivef(t, 1, "error message %s", "formatted")
 | 
			
		||||
//    assert.Positivef(t, 1.23, "error message %s", "formatted")
 | 
			
		||||
//	assert.Positivef(t, 1, "error message %s", "formatted")
 | 
			
		||||
//	assert.Positivef(t, 1.23, "error message %s", "formatted")
 | 
			
		||||
func Positivef(t TestingT, e interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -683,8 +725,8 @@ func Positivef(t TestingT, e interface{}, msg string, args ...interface{}) bool
 | 
			
		||||
 | 
			
		||||
// Regexpf asserts that a specified regexp matches a string.
 | 
			
		||||
//
 | 
			
		||||
//  assert.Regexpf(t, regexp.MustCompile("start"), "it's starting", "error message %s", "formatted")
 | 
			
		||||
//  assert.Regexpf(t, "start...$", "it's not starting", "error message %s", "formatted")
 | 
			
		||||
//	assert.Regexpf(t, regexp.MustCompile("start"), "it's starting", "error message %s", "formatted")
 | 
			
		||||
//	assert.Regexpf(t, "start...$", "it's not starting", "error message %s", "formatted")
 | 
			
		||||
func Regexpf(t TestingT, rx interface{}, str interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -694,7 +736,7 @@ func Regexpf(t TestingT, rx interface{}, str interface{}, msg string, args ...in
 | 
			
		||||
 | 
			
		||||
// Samef asserts that two pointers reference the same object.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Samef(t, ptr1, ptr2, "error message %s", "formatted")
 | 
			
		||||
//	assert.Samef(t, ptr1, ptr2, "error message %s", "formatted")
 | 
			
		||||
//
 | 
			
		||||
// Both arguments must be pointer variables. Pointer variable sameness is
 | 
			
		||||
// determined based on the equality of both type and value.
 | 
			
		||||
@@ -708,7 +750,7 @@ func Samef(t TestingT, expected interface{}, actual interface{}, msg string, arg
 | 
			
		||||
// Subsetf asserts that the specified list(array, slice...) contains all
 | 
			
		||||
// elements given in the specified subset(array, slice...).
 | 
			
		||||
//
 | 
			
		||||
//    assert.Subsetf(t, [1, 2, 3], [1, 2], "But [1, 2, 3] does contain [1, 2]", "error message %s", "formatted")
 | 
			
		||||
//	assert.Subsetf(t, [1, 2, 3], [1, 2], "But [1, 2, 3] does contain [1, 2]", "error message %s", "formatted")
 | 
			
		||||
func Subsetf(t TestingT, list interface{}, subset interface{}, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -718,7 +760,7 @@ func Subsetf(t TestingT, list interface{}, subset interface{}, msg string, args
 | 
			
		||||
 | 
			
		||||
// Truef asserts that the specified value is true.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Truef(t, myBool, "error message %s", "formatted")
 | 
			
		||||
//	assert.Truef(t, myBool, "error message %s", "formatted")
 | 
			
		||||
func Truef(t TestingT, value bool, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -728,7 +770,7 @@ func Truef(t TestingT, value bool, msg string, args ...interface{}) bool {
 | 
			
		||||
 | 
			
		||||
// WithinDurationf asserts that the two times are within duration delta of each other.
 | 
			
		||||
//
 | 
			
		||||
//   assert.WithinDurationf(t, time.Now(), time.Now(), 10*time.Second, "error message %s", "formatted")
 | 
			
		||||
//	assert.WithinDurationf(t, time.Now(), time.Now(), 10*time.Second, "error message %s", "formatted")
 | 
			
		||||
func WithinDurationf(t TestingT, expected time.Time, actual time.Time, delta time.Duration, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -738,7 +780,7 @@ func WithinDurationf(t TestingT, expected time.Time, actual time.Time, delta tim
 | 
			
		||||
 | 
			
		||||
// WithinRangef asserts that a time is within a time range (inclusive).
 | 
			
		||||
//
 | 
			
		||||
//   assert.WithinRangef(t, time.Now(), time.Now().Add(-time.Second), time.Now().Add(time.Second), "error message %s", "formatted")
 | 
			
		||||
//	assert.WithinRangef(t, time.Now(), time.Now().Add(-time.Second), time.Now().Add(time.Second), "error message %s", "formatted")
 | 
			
		||||
func WithinRangef(t TestingT, actual time.Time, start time.Time, end time.Time, msg string, args ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										432
									
								
								vendor/github.com/stretchr/testify/assert/assertion_forward.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										432
									
								
								vendor/github.com/stretchr/testify/assert/assertion_forward.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										24
									
								
								vendor/github.com/stretchr/testify/assert/assertion_order.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										24
									
								
								vendor/github.com/stretchr/testify/assert/assertion_order.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -46,36 +46,36 @@ func isOrdered(t TestingT, object interface{}, allowedComparesResults []CompareT
 | 
			
		||||
 | 
			
		||||
// IsIncreasing asserts that the collection is increasing
 | 
			
		||||
//
 | 
			
		||||
//    assert.IsIncreasing(t, []int{1, 2, 3})
 | 
			
		||||
//    assert.IsIncreasing(t, []float{1, 2})
 | 
			
		||||
//    assert.IsIncreasing(t, []string{"a", "b"})
 | 
			
		||||
//	assert.IsIncreasing(t, []int{1, 2, 3})
 | 
			
		||||
//	assert.IsIncreasing(t, []float{1, 2})
 | 
			
		||||
//	assert.IsIncreasing(t, []string{"a", "b"})
 | 
			
		||||
func IsIncreasing(t TestingT, object interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	return isOrdered(t, object, []CompareType{compareLess}, "\"%v\" is not less than \"%v\"", msgAndArgs...)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// IsNonIncreasing asserts that the collection is not increasing
 | 
			
		||||
//
 | 
			
		||||
//    assert.IsNonIncreasing(t, []int{2, 1, 1})
 | 
			
		||||
//    assert.IsNonIncreasing(t, []float{2, 1})
 | 
			
		||||
//    assert.IsNonIncreasing(t, []string{"b", "a"})
 | 
			
		||||
//	assert.IsNonIncreasing(t, []int{2, 1, 1})
 | 
			
		||||
//	assert.IsNonIncreasing(t, []float{2, 1})
 | 
			
		||||
//	assert.IsNonIncreasing(t, []string{"b", "a"})
 | 
			
		||||
func IsNonIncreasing(t TestingT, object interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	return isOrdered(t, object, []CompareType{compareEqual, compareGreater}, "\"%v\" is not greater than or equal to \"%v\"", msgAndArgs...)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// IsDecreasing asserts that the collection is decreasing
 | 
			
		||||
//
 | 
			
		||||
//    assert.IsDecreasing(t, []int{2, 1, 0})
 | 
			
		||||
//    assert.IsDecreasing(t, []float{2, 1})
 | 
			
		||||
//    assert.IsDecreasing(t, []string{"b", "a"})
 | 
			
		||||
//	assert.IsDecreasing(t, []int{2, 1, 0})
 | 
			
		||||
//	assert.IsDecreasing(t, []float{2, 1})
 | 
			
		||||
//	assert.IsDecreasing(t, []string{"b", "a"})
 | 
			
		||||
func IsDecreasing(t TestingT, object interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	return isOrdered(t, object, []CompareType{compareGreater}, "\"%v\" is not greater than \"%v\"", msgAndArgs...)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// IsNonDecreasing asserts that the collection is not decreasing
 | 
			
		||||
//
 | 
			
		||||
//    assert.IsNonDecreasing(t, []int{1, 1, 2})
 | 
			
		||||
//    assert.IsNonDecreasing(t, []float{1, 2})
 | 
			
		||||
//    assert.IsNonDecreasing(t, []string{"a", "b"})
 | 
			
		||||
//	assert.IsNonDecreasing(t, []int{1, 1, 2})
 | 
			
		||||
//	assert.IsNonDecreasing(t, []float{1, 2})
 | 
			
		||||
//	assert.IsNonDecreasing(t, []string{"a", "b"})
 | 
			
		||||
func IsNonDecreasing(t TestingT, object interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	return isOrdered(t, object, []CompareType{compareLess, compareEqual}, "\"%v\" is not less than or equal to \"%v\"", msgAndArgs...)
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										306
									
								
								vendor/github.com/stretchr/testify/assert/assertions.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										306
									
								
								vendor/github.com/stretchr/testify/assert/assertions.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -75,6 +75,77 @@ func ObjectsAreEqual(expected, actual interface{}) bool {
 | 
			
		||||
	return bytes.Equal(exp, act)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// copyExportedFields iterates downward through nested data structures and creates a copy
 | 
			
		||||
// that only contains the exported struct fields.
 | 
			
		||||
func copyExportedFields(expected interface{}) interface{} {
 | 
			
		||||
	if isNil(expected) {
 | 
			
		||||
		return expected
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	expectedType := reflect.TypeOf(expected)
 | 
			
		||||
	expectedKind := expectedType.Kind()
 | 
			
		||||
	expectedValue := reflect.ValueOf(expected)
 | 
			
		||||
 | 
			
		||||
	switch expectedKind {
 | 
			
		||||
	case reflect.Struct:
 | 
			
		||||
		result := reflect.New(expectedType).Elem()
 | 
			
		||||
		for i := 0; i < expectedType.NumField(); i++ {
 | 
			
		||||
			field := expectedType.Field(i)
 | 
			
		||||
			isExported := field.IsExported()
 | 
			
		||||
			if isExported {
 | 
			
		||||
				fieldValue := expectedValue.Field(i)
 | 
			
		||||
				if isNil(fieldValue) || isNil(fieldValue.Interface()) {
 | 
			
		||||
					continue
 | 
			
		||||
				}
 | 
			
		||||
				newValue := copyExportedFields(fieldValue.Interface())
 | 
			
		||||
				result.Field(i).Set(reflect.ValueOf(newValue))
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		return result.Interface()
 | 
			
		||||
 | 
			
		||||
	case reflect.Ptr:
 | 
			
		||||
		result := reflect.New(expectedType.Elem())
 | 
			
		||||
		unexportedRemoved := copyExportedFields(expectedValue.Elem().Interface())
 | 
			
		||||
		result.Elem().Set(reflect.ValueOf(unexportedRemoved))
 | 
			
		||||
		return result.Interface()
 | 
			
		||||
 | 
			
		||||
	case reflect.Array, reflect.Slice:
 | 
			
		||||
		result := reflect.MakeSlice(expectedType, expectedValue.Len(), expectedValue.Len())
 | 
			
		||||
		for i := 0; i < expectedValue.Len(); i++ {
 | 
			
		||||
			index := expectedValue.Index(i)
 | 
			
		||||
			if isNil(index) {
 | 
			
		||||
				continue
 | 
			
		||||
			}
 | 
			
		||||
			unexportedRemoved := copyExportedFields(index.Interface())
 | 
			
		||||
			result.Index(i).Set(reflect.ValueOf(unexportedRemoved))
 | 
			
		||||
		}
 | 
			
		||||
		return result.Interface()
 | 
			
		||||
 | 
			
		||||
	case reflect.Map:
 | 
			
		||||
		result := reflect.MakeMap(expectedType)
 | 
			
		||||
		for _, k := range expectedValue.MapKeys() {
 | 
			
		||||
			index := expectedValue.MapIndex(k)
 | 
			
		||||
			unexportedRemoved := copyExportedFields(index.Interface())
 | 
			
		||||
			result.SetMapIndex(k, reflect.ValueOf(unexportedRemoved))
 | 
			
		||||
		}
 | 
			
		||||
		return result.Interface()
 | 
			
		||||
 | 
			
		||||
	default:
 | 
			
		||||
		return expected
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// ObjectsExportedFieldsAreEqual determines if the exported (public) fields of two objects are
 | 
			
		||||
// considered equal. This comparison of only exported fields is applied recursively to nested data
 | 
			
		||||
// structures.
 | 
			
		||||
//
 | 
			
		||||
// This function does no assertion of any kind.
 | 
			
		||||
func ObjectsExportedFieldsAreEqual(expected, actual interface{}) bool {
 | 
			
		||||
	expectedCleaned := copyExportedFields(expected)
 | 
			
		||||
	actualCleaned := copyExportedFields(actual)
 | 
			
		||||
	return ObjectsAreEqualValues(expectedCleaned, actualCleaned)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// ObjectsAreEqualValues gets whether two objects are equal, or if their
 | 
			
		||||
// values are equal.
 | 
			
		||||
func ObjectsAreEqualValues(expected, actual interface{}) bool {
 | 
			
		||||
@@ -271,7 +342,7 @@ type labeledContent struct {
 | 
			
		||||
 | 
			
		||||
// labeledOutput returns a string consisting of the provided labeledContent. Each labeled output is appended in the following manner:
 | 
			
		||||
//
 | 
			
		||||
//   \t{{label}}:{{align_spaces}}\t{{content}}\n
 | 
			
		||||
//	\t{{label}}:{{align_spaces}}\t{{content}}\n
 | 
			
		||||
//
 | 
			
		||||
// The initial carriage return is required to undo/erase any padding added by testing.T.Errorf. The "\t{{label}}:" is for the label.
 | 
			
		||||
// If a label is shorter than the longest label provided, padding spaces are added to make all the labels match in length. Once this
 | 
			
		||||
@@ -294,7 +365,7 @@ func labeledOutput(content ...labeledContent) string {
 | 
			
		||||
 | 
			
		||||
// Implements asserts that an object is implemented by the specified interface.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Implements(t, (*MyInterface)(nil), new(MyObject))
 | 
			
		||||
//	assert.Implements(t, (*MyInterface)(nil), new(MyObject))
 | 
			
		||||
func Implements(t TestingT, interfaceObject interface{}, object interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -326,7 +397,7 @@ func IsType(t TestingT, expectedType interface{}, object interface{}, msgAndArgs
 | 
			
		||||
 | 
			
		||||
// Equal asserts that two objects are equal.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Equal(t, 123, 123)
 | 
			
		||||
//	assert.Equal(t, 123, 123)
 | 
			
		||||
//
 | 
			
		||||
// Pointer variable equality is determined based on the equality of the
 | 
			
		||||
// referenced values (as opposed to the memory addresses). Function equality
 | 
			
		||||
@@ -367,7 +438,7 @@ func validateEqualArgs(expected, actual interface{}) error {
 | 
			
		||||
 | 
			
		||||
// Same asserts that two pointers reference the same object.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Same(t, ptr1, ptr2)
 | 
			
		||||
//	assert.Same(t, ptr1, ptr2)
 | 
			
		||||
//
 | 
			
		||||
// Both arguments must be pointer variables. Pointer variable sameness is
 | 
			
		||||
// determined based on the equality of both type and value.
 | 
			
		||||
@@ -387,7 +458,7 @@ func Same(t TestingT, expected, actual interface{}, msgAndArgs ...interface{}) b
 | 
			
		||||
 | 
			
		||||
// NotSame asserts that two pointers do not reference the same object.
 | 
			
		||||
//
 | 
			
		||||
//    assert.NotSame(t, ptr1, ptr2)
 | 
			
		||||
//	assert.NotSame(t, ptr1, ptr2)
 | 
			
		||||
//
 | 
			
		||||
// Both arguments must be pointer variables. Pointer variable sameness is
 | 
			
		||||
// determined based on the equality of both type and value.
 | 
			
		||||
@@ -455,7 +526,7 @@ func truncatingFormat(data interface{}) string {
 | 
			
		||||
// EqualValues asserts that two objects are equal or convertable to the same types
 | 
			
		||||
// and equal.
 | 
			
		||||
//
 | 
			
		||||
//    assert.EqualValues(t, uint32(123), int32(123))
 | 
			
		||||
//	assert.EqualValues(t, uint32(123), int32(123))
 | 
			
		||||
func EqualValues(t TestingT, expected, actual interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -473,9 +544,53 @@ func EqualValues(t TestingT, expected, actual interface{}, msgAndArgs ...interfa
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// EqualExportedValues asserts that the types of two objects are equal and their public
 | 
			
		||||
// fields are also equal. This is useful for comparing structs that have private fields
 | 
			
		||||
// that could potentially differ.
 | 
			
		||||
//
 | 
			
		||||
//	 type S struct {
 | 
			
		||||
//		Exported     	int
 | 
			
		||||
//		notExported   	int
 | 
			
		||||
//	 }
 | 
			
		||||
//	 assert.EqualExportedValues(t, S{1, 2}, S{1, 3}) => true
 | 
			
		||||
//	 assert.EqualExportedValues(t, S{1, 2}, S{2, 3}) => false
 | 
			
		||||
func EqualExportedValues(t TestingT, expected, actual interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	aType := reflect.TypeOf(expected)
 | 
			
		||||
	bType := reflect.TypeOf(actual)
 | 
			
		||||
 | 
			
		||||
	if aType != bType {
 | 
			
		||||
		return Fail(t, fmt.Sprintf("Types expected to match exactly\n\t%v != %v", aType, bType), msgAndArgs...)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if aType.Kind() != reflect.Struct {
 | 
			
		||||
		return Fail(t, fmt.Sprintf("Types expected to both be struct \n\t%v != %v", aType.Kind(), reflect.Struct), msgAndArgs...)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if bType.Kind() != reflect.Struct {
 | 
			
		||||
		return Fail(t, fmt.Sprintf("Types expected to both be struct \n\t%v != %v", bType.Kind(), reflect.Struct), msgAndArgs...)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	expected = copyExportedFields(expected)
 | 
			
		||||
	actual = copyExportedFields(actual)
 | 
			
		||||
 | 
			
		||||
	if !ObjectsAreEqualValues(expected, actual) {
 | 
			
		||||
		diff := diff(expected, actual)
 | 
			
		||||
		expected, actual = formatUnequalValues(expected, actual)
 | 
			
		||||
		return Fail(t, fmt.Sprintf("Not equal (comparing only exported fields): \n"+
 | 
			
		||||
			"expected: %s\n"+
 | 
			
		||||
			"actual  : %s%s", expected, actual, diff), msgAndArgs...)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return true
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Exactly asserts that two objects are equal in value and type.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Exactly(t, int32(123), int64(123))
 | 
			
		||||
//	assert.Exactly(t, int32(123), int64(123))
 | 
			
		||||
func Exactly(t TestingT, expected, actual interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -494,7 +609,7 @@ func Exactly(t TestingT, expected, actual interface{}, msgAndArgs ...interface{}
 | 
			
		||||
 | 
			
		||||
// NotNil asserts that the specified object is not nil.
 | 
			
		||||
//
 | 
			
		||||
//    assert.NotNil(t, err)
 | 
			
		||||
//	assert.NotNil(t, err)
 | 
			
		||||
func NotNil(t TestingT, object interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if !isNil(object) {
 | 
			
		||||
		return true
 | 
			
		||||
@@ -540,7 +655,7 @@ func isNil(object interface{}) bool {
 | 
			
		||||
 | 
			
		||||
// Nil asserts that the specified object is nil.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Nil(t, err)
 | 
			
		||||
//	assert.Nil(t, err)
 | 
			
		||||
func Nil(t TestingT, object interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if isNil(object) {
 | 
			
		||||
		return true
 | 
			
		||||
@@ -583,7 +698,7 @@ func isEmpty(object interface{}) bool {
 | 
			
		||||
// Empty asserts that the specified object is empty.  I.e. nil, "", false, 0 or either
 | 
			
		||||
// a slice or a channel with len == 0.
 | 
			
		||||
//
 | 
			
		||||
//  assert.Empty(t, obj)
 | 
			
		||||
//	assert.Empty(t, obj)
 | 
			
		||||
func Empty(t TestingT, object interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	pass := isEmpty(object)
 | 
			
		||||
	if !pass {
 | 
			
		||||
@@ -600,9 +715,9 @@ func Empty(t TestingT, object interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
// NotEmpty asserts that the specified object is NOT empty.  I.e. not nil, "", false, 0 or either
 | 
			
		||||
// a slice or a channel with len == 0.
 | 
			
		||||
//
 | 
			
		||||
//  if assert.NotEmpty(t, obj) {
 | 
			
		||||
//    assert.Equal(t, "two", obj[1])
 | 
			
		||||
//  }
 | 
			
		||||
//	if assert.NotEmpty(t, obj) {
 | 
			
		||||
//	  assert.Equal(t, "two", obj[1])
 | 
			
		||||
//	}
 | 
			
		||||
func NotEmpty(t TestingT, object interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	pass := !isEmpty(object)
 | 
			
		||||
	if !pass {
 | 
			
		||||
@@ -631,7 +746,7 @@ func getLen(x interface{}) (ok bool, length int) {
 | 
			
		||||
// Len asserts that the specified object has specific length.
 | 
			
		||||
// Len also fails if the object has a type that len() not accept.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Len(t, mySlice, 3)
 | 
			
		||||
//	assert.Len(t, mySlice, 3)
 | 
			
		||||
func Len(t TestingT, object interface{}, length int, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -649,7 +764,7 @@ func Len(t TestingT, object interface{}, length int, msgAndArgs ...interface{})
 | 
			
		||||
 | 
			
		||||
// True asserts that the specified value is true.
 | 
			
		||||
//
 | 
			
		||||
//    assert.True(t, myBool)
 | 
			
		||||
//	assert.True(t, myBool)
 | 
			
		||||
func True(t TestingT, value bool, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if !value {
 | 
			
		||||
		if h, ok := t.(tHelper); ok {
 | 
			
		||||
@@ -664,7 +779,7 @@ func True(t TestingT, value bool, msgAndArgs ...interface{}) bool {
 | 
			
		||||
 | 
			
		||||
// False asserts that the specified value is false.
 | 
			
		||||
//
 | 
			
		||||
//    assert.False(t, myBool)
 | 
			
		||||
//	assert.False(t, myBool)
 | 
			
		||||
func False(t TestingT, value bool, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if value {
 | 
			
		||||
		if h, ok := t.(tHelper); ok {
 | 
			
		||||
@@ -679,7 +794,7 @@ func False(t TestingT, value bool, msgAndArgs ...interface{}) bool {
 | 
			
		||||
 | 
			
		||||
// NotEqual asserts that the specified values are NOT equal.
 | 
			
		||||
//
 | 
			
		||||
//    assert.NotEqual(t, obj1, obj2)
 | 
			
		||||
//	assert.NotEqual(t, obj1, obj2)
 | 
			
		||||
//
 | 
			
		||||
// Pointer variable equality is determined based on the equality of the
 | 
			
		||||
// referenced values (as opposed to the memory addresses).
 | 
			
		||||
@@ -702,7 +817,7 @@ func NotEqual(t TestingT, expected, actual interface{}, msgAndArgs ...interface{
 | 
			
		||||
 | 
			
		||||
// NotEqualValues asserts that two objects are not equal even when converted to the same type
 | 
			
		||||
//
 | 
			
		||||
//    assert.NotEqualValues(t, obj1, obj2)
 | 
			
		||||
//	assert.NotEqualValues(t, obj1, obj2)
 | 
			
		||||
func NotEqualValues(t TestingT, expected, actual interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -761,9 +876,9 @@ func containsElement(list interface{}, element interface{}) (ok, found bool) {
 | 
			
		||||
// Contains asserts that the specified string, list(array, slice...) or map contains the
 | 
			
		||||
// specified substring or element.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Contains(t, "Hello World", "World")
 | 
			
		||||
//    assert.Contains(t, ["Hello", "World"], "World")
 | 
			
		||||
//    assert.Contains(t, {"Hello": "World"}, "Hello")
 | 
			
		||||
//	assert.Contains(t, "Hello World", "World")
 | 
			
		||||
//	assert.Contains(t, ["Hello", "World"], "World")
 | 
			
		||||
//	assert.Contains(t, {"Hello": "World"}, "Hello")
 | 
			
		||||
func Contains(t TestingT, s, contains interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -784,9 +899,9 @@ func Contains(t TestingT, s, contains interface{}, msgAndArgs ...interface{}) bo
 | 
			
		||||
// NotContains asserts that the specified string, list(array, slice...) or map does NOT contain the
 | 
			
		||||
// specified substring or element.
 | 
			
		||||
//
 | 
			
		||||
//    assert.NotContains(t, "Hello World", "Earth")
 | 
			
		||||
//    assert.NotContains(t, ["Hello", "World"], "Earth")
 | 
			
		||||
//    assert.NotContains(t, {"Hello": "World"}, "Earth")
 | 
			
		||||
//	assert.NotContains(t, "Hello World", "Earth")
 | 
			
		||||
//	assert.NotContains(t, ["Hello", "World"], "Earth")
 | 
			
		||||
//	assert.NotContains(t, {"Hello": "World"}, "Earth")
 | 
			
		||||
func NotContains(t TestingT, s, contains interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -794,10 +909,10 @@ func NotContains(t TestingT, s, contains interface{}, msgAndArgs ...interface{})
 | 
			
		||||
 | 
			
		||||
	ok, found := containsElement(s, contains)
 | 
			
		||||
	if !ok {
 | 
			
		||||
		return Fail(t, fmt.Sprintf("\"%s\" could not be applied builtin len()", s), msgAndArgs...)
 | 
			
		||||
		return Fail(t, fmt.Sprintf("%#v could not be applied builtin len()", s), msgAndArgs...)
 | 
			
		||||
	}
 | 
			
		||||
	if found {
 | 
			
		||||
		return Fail(t, fmt.Sprintf("\"%s\" should not contain \"%s\"", s, contains), msgAndArgs...)
 | 
			
		||||
		return Fail(t, fmt.Sprintf("%#v should not contain %#v", s, contains), msgAndArgs...)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return true
 | 
			
		||||
@@ -807,7 +922,7 @@ func NotContains(t TestingT, s, contains interface{}, msgAndArgs ...interface{})
 | 
			
		||||
// Subset asserts that the specified list(array, slice...) contains all
 | 
			
		||||
// elements given in the specified subset(array, slice...).
 | 
			
		||||
//
 | 
			
		||||
//    assert.Subset(t, [1, 2, 3], [1, 2], "But [1, 2, 3] does contain [1, 2]")
 | 
			
		||||
//	assert.Subset(t, [1, 2, 3], [1, 2], "But [1, 2, 3] does contain [1, 2]")
 | 
			
		||||
func Subset(t TestingT, list, subset interface{}, msgAndArgs ...interface{}) (ok bool) {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -863,7 +978,7 @@ func Subset(t TestingT, list, subset interface{}, msgAndArgs ...interface{}) (ok
 | 
			
		||||
// NotSubset asserts that the specified list(array, slice...) contains not all
 | 
			
		||||
// elements given in the specified subset(array, slice...).
 | 
			
		||||
//
 | 
			
		||||
//    assert.NotSubset(t, [1, 3, 4], [1, 2], "But [1, 3, 4] does not contain [1, 2]")
 | 
			
		||||
//	assert.NotSubset(t, [1, 3, 4], [1, 2], "But [1, 3, 4] does not contain [1, 2]")
 | 
			
		||||
func NotSubset(t TestingT, list, subset interface{}, msgAndArgs ...interface{}) (ok bool) {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -1048,7 +1163,7 @@ func didPanic(f PanicTestFunc) (didPanic bool, message interface{}, stack string
 | 
			
		||||
 | 
			
		||||
// Panics asserts that the code inside the specified PanicTestFunc panics.
 | 
			
		||||
//
 | 
			
		||||
//   assert.Panics(t, func(){ GoCrazy() })
 | 
			
		||||
//	assert.Panics(t, func(){ GoCrazy() })
 | 
			
		||||
func Panics(t TestingT, f PanicTestFunc, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -1064,7 +1179,7 @@ func Panics(t TestingT, f PanicTestFunc, msgAndArgs ...interface{}) bool {
 | 
			
		||||
// PanicsWithValue asserts that the code inside the specified PanicTestFunc panics, and that
 | 
			
		||||
// the recovered panic value equals the expected panic value.
 | 
			
		||||
//
 | 
			
		||||
//   assert.PanicsWithValue(t, "crazy error", func(){ GoCrazy() })
 | 
			
		||||
//	assert.PanicsWithValue(t, "crazy error", func(){ GoCrazy() })
 | 
			
		||||
func PanicsWithValue(t TestingT, expected interface{}, f PanicTestFunc, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -1085,7 +1200,7 @@ func PanicsWithValue(t TestingT, expected interface{}, f PanicTestFunc, msgAndAr
 | 
			
		||||
// panics, and that the recovered panic value is an error that satisfies the
 | 
			
		||||
// EqualError comparison.
 | 
			
		||||
//
 | 
			
		||||
//   assert.PanicsWithError(t, "crazy error", func(){ GoCrazy() })
 | 
			
		||||
//	assert.PanicsWithError(t, "crazy error", func(){ GoCrazy() })
 | 
			
		||||
func PanicsWithError(t TestingT, errString string, f PanicTestFunc, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -1105,7 +1220,7 @@ func PanicsWithError(t TestingT, errString string, f PanicTestFunc, msgAndArgs .
 | 
			
		||||
 | 
			
		||||
// NotPanics asserts that the code inside the specified PanicTestFunc does NOT panic.
 | 
			
		||||
//
 | 
			
		||||
//   assert.NotPanics(t, func(){ RemainCalm() })
 | 
			
		||||
//	assert.NotPanics(t, func(){ RemainCalm() })
 | 
			
		||||
func NotPanics(t TestingT, f PanicTestFunc, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -1120,7 +1235,7 @@ func NotPanics(t TestingT, f PanicTestFunc, msgAndArgs ...interface{}) bool {
 | 
			
		||||
 | 
			
		||||
// WithinDuration asserts that the two times are within duration delta of each other.
 | 
			
		||||
//
 | 
			
		||||
//   assert.WithinDuration(t, time.Now(), time.Now(), 10*time.Second)
 | 
			
		||||
//	assert.WithinDuration(t, time.Now(), time.Now(), 10*time.Second)
 | 
			
		||||
func WithinDuration(t TestingT, expected, actual time.Time, delta time.Duration, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -1136,7 +1251,7 @@ func WithinDuration(t TestingT, expected, actual time.Time, delta time.Duration,
 | 
			
		||||
 | 
			
		||||
// WithinRange asserts that a time is within a time range (inclusive).
 | 
			
		||||
//
 | 
			
		||||
//   assert.WithinRange(t, time.Now(), time.Now().Add(-time.Second), time.Now().Add(time.Second))
 | 
			
		||||
//	assert.WithinRange(t, time.Now(), time.Now().Add(-time.Second), time.Now().Add(time.Second))
 | 
			
		||||
func WithinRange(t TestingT, actual, start, end time.Time, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -1195,7 +1310,7 @@ func toFloat(x interface{}) (float64, bool) {
 | 
			
		||||
 | 
			
		||||
// InDelta asserts that the two numerals are within delta of each other.
 | 
			
		||||
//
 | 
			
		||||
// 	 assert.InDelta(t, math.Pi, 22/7.0, 0.01)
 | 
			
		||||
//	assert.InDelta(t, math.Pi, 22/7.0, 0.01)
 | 
			
		||||
func InDelta(t TestingT, expected, actual interface{}, delta float64, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -1368,10 +1483,10 @@ func InEpsilonSlice(t TestingT, expected, actual interface{}, epsilon float64, m
 | 
			
		||||
 | 
			
		||||
// NoError asserts that a function returned no error (i.e. `nil`).
 | 
			
		||||
//
 | 
			
		||||
//   actualObj, err := SomeFunction()
 | 
			
		||||
//   if assert.NoError(t, err) {
 | 
			
		||||
//	   assert.Equal(t, expectedObj, actualObj)
 | 
			
		||||
//   }
 | 
			
		||||
//	  actualObj, err := SomeFunction()
 | 
			
		||||
//	  if assert.NoError(t, err) {
 | 
			
		||||
//		   assert.Equal(t, expectedObj, actualObj)
 | 
			
		||||
//	  }
 | 
			
		||||
func NoError(t TestingT, err error, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		if h, ok := t.(tHelper); ok {
 | 
			
		||||
@@ -1385,10 +1500,10 @@ func NoError(t TestingT, err error, msgAndArgs ...interface{}) bool {
 | 
			
		||||
 | 
			
		||||
// Error asserts that a function returned an error (i.e. not `nil`).
 | 
			
		||||
//
 | 
			
		||||
//   actualObj, err := SomeFunction()
 | 
			
		||||
//   if assert.Error(t, err) {
 | 
			
		||||
//	   assert.Equal(t, expectedError, err)
 | 
			
		||||
//   }
 | 
			
		||||
//	  actualObj, err := SomeFunction()
 | 
			
		||||
//	  if assert.Error(t, err) {
 | 
			
		||||
//		   assert.Equal(t, expectedError, err)
 | 
			
		||||
//	  }
 | 
			
		||||
func Error(t TestingT, err error, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if err == nil {
 | 
			
		||||
		if h, ok := t.(tHelper); ok {
 | 
			
		||||
@@ -1403,8 +1518,8 @@ func Error(t TestingT, err error, msgAndArgs ...interface{}) bool {
 | 
			
		||||
// EqualError asserts that a function returned an error (i.e. not `nil`)
 | 
			
		||||
// and that it is equal to the provided error.
 | 
			
		||||
//
 | 
			
		||||
//   actualObj, err := SomeFunction()
 | 
			
		||||
//   assert.EqualError(t, err,  expectedErrorString)
 | 
			
		||||
//	actualObj, err := SomeFunction()
 | 
			
		||||
//	assert.EqualError(t, err,  expectedErrorString)
 | 
			
		||||
func EqualError(t TestingT, theError error, errString string, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -1426,8 +1541,8 @@ func EqualError(t TestingT, theError error, errString string, msgAndArgs ...inte
 | 
			
		||||
// ErrorContains asserts that a function returned an error (i.e. not `nil`)
 | 
			
		||||
// and that the error contains the specified substring.
 | 
			
		||||
//
 | 
			
		||||
//   actualObj, err := SomeFunction()
 | 
			
		||||
//   assert.ErrorContains(t, err,  expectedErrorSubString)
 | 
			
		||||
//	actualObj, err := SomeFunction()
 | 
			
		||||
//	assert.ErrorContains(t, err,  expectedErrorSubString)
 | 
			
		||||
func ErrorContains(t TestingT, theError error, contains string, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -1460,8 +1575,8 @@ func matchRegexp(rx interface{}, str interface{}) bool {
 | 
			
		||||
 | 
			
		||||
// Regexp asserts that a specified regexp matches a string.
 | 
			
		||||
//
 | 
			
		||||
//  assert.Regexp(t, regexp.MustCompile("start"), "it's starting")
 | 
			
		||||
//  assert.Regexp(t, "start...$", "it's not starting")
 | 
			
		||||
//	assert.Regexp(t, regexp.MustCompile("start"), "it's starting")
 | 
			
		||||
//	assert.Regexp(t, "start...$", "it's not starting")
 | 
			
		||||
func Regexp(t TestingT, rx interface{}, str interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -1478,8 +1593,8 @@ func Regexp(t TestingT, rx interface{}, str interface{}, msgAndArgs ...interface
 | 
			
		||||
 | 
			
		||||
// NotRegexp asserts that a specified regexp does not match a string.
 | 
			
		||||
//
 | 
			
		||||
//  assert.NotRegexp(t, regexp.MustCompile("starts"), "it's starting")
 | 
			
		||||
//  assert.NotRegexp(t, "^start", "it's not starting")
 | 
			
		||||
//	assert.NotRegexp(t, regexp.MustCompile("starts"), "it's starting")
 | 
			
		||||
//	assert.NotRegexp(t, "^start", "it's not starting")
 | 
			
		||||
func NotRegexp(t TestingT, rx interface{}, str interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -1591,7 +1706,7 @@ func NoDirExists(t TestingT, path string, msgAndArgs ...interface{}) bool {
 | 
			
		||||
 | 
			
		||||
// JSONEq asserts that two JSON strings are equivalent.
 | 
			
		||||
//
 | 
			
		||||
//  assert.JSONEq(t, `{"hello": "world", "foo": "bar"}`, `{"foo": "bar", "hello": "world"}`)
 | 
			
		||||
//	assert.JSONEq(t, `{"hello": "world", "foo": "bar"}`, `{"foo": "bar", "hello": "world"}`)
 | 
			
		||||
func JSONEq(t TestingT, expected string, actual string, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -1714,7 +1829,7 @@ type tHelper interface {
 | 
			
		||||
// Eventually asserts that given condition will be met in waitFor time,
 | 
			
		||||
// periodically checking target function each tick.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Eventually(t, func() bool { return true; }, time.Second, 10*time.Millisecond)
 | 
			
		||||
//	assert.Eventually(t, func() bool { return true; }, time.Second, 10*time.Millisecond)
 | 
			
		||||
func Eventually(t TestingT, condition func() bool, waitFor time.Duration, tick time.Duration, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
@@ -1744,10 +1859,93 @@ func Eventually(t TestingT, condition func() bool, waitFor time.Duration, tick t
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// CollectT implements the TestingT interface and collects all errors.
 | 
			
		||||
type CollectT struct {
 | 
			
		||||
	errors []error
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Errorf collects the error.
 | 
			
		||||
func (c *CollectT) Errorf(format string, args ...interface{}) {
 | 
			
		||||
	c.errors = append(c.errors, fmt.Errorf(format, args...))
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// FailNow panics.
 | 
			
		||||
func (c *CollectT) FailNow() {
 | 
			
		||||
	panic("Assertion failed")
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Reset clears the collected errors.
 | 
			
		||||
func (c *CollectT) Reset() {
 | 
			
		||||
	c.errors = nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Copy copies the collected errors to the supplied t.
 | 
			
		||||
func (c *CollectT) Copy(t TestingT) {
 | 
			
		||||
	if tt, ok := t.(tHelper); ok {
 | 
			
		||||
		tt.Helper()
 | 
			
		||||
	}
 | 
			
		||||
	for _, err := range c.errors {
 | 
			
		||||
		t.Errorf("%v", err)
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// EventuallyWithT asserts that given condition will be met in waitFor time,
 | 
			
		||||
// periodically checking target function each tick. In contrast to Eventually,
 | 
			
		||||
// it supplies a CollectT to the condition function, so that the condition
 | 
			
		||||
// function can use the CollectT to call other assertions.
 | 
			
		||||
// The condition is considered "met" if no errors are raised in a tick.
 | 
			
		||||
// The supplied CollectT collects all errors from one tick (if there are any).
 | 
			
		||||
// If the condition is not met before waitFor, the collected errors of
 | 
			
		||||
// the last tick are copied to t.
 | 
			
		||||
//
 | 
			
		||||
//	externalValue := false
 | 
			
		||||
//	go func() {
 | 
			
		||||
//		time.Sleep(8*time.Second)
 | 
			
		||||
//		externalValue = true
 | 
			
		||||
//	}()
 | 
			
		||||
//	assert.EventuallyWithT(t, func(c *assert.CollectT) {
 | 
			
		||||
//		// add assertions as needed; any assertion failure will fail the current tick
 | 
			
		||||
//		assert.True(c, externalValue, "expected 'externalValue' to be true")
 | 
			
		||||
//	}, 1*time.Second, 10*time.Second, "external state has not changed to 'true'; still false")
 | 
			
		||||
func EventuallyWithT(t TestingT, condition func(collect *CollectT), waitFor time.Duration, tick time.Duration, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	collect := new(CollectT)
 | 
			
		||||
	ch := make(chan bool, 1)
 | 
			
		||||
 | 
			
		||||
	timer := time.NewTimer(waitFor)
 | 
			
		||||
	defer timer.Stop()
 | 
			
		||||
 | 
			
		||||
	ticker := time.NewTicker(tick)
 | 
			
		||||
	defer ticker.Stop()
 | 
			
		||||
 | 
			
		||||
	for tick := ticker.C; ; {
 | 
			
		||||
		select {
 | 
			
		||||
		case <-timer.C:
 | 
			
		||||
			collect.Copy(t)
 | 
			
		||||
			return Fail(t, "Condition never satisfied", msgAndArgs...)
 | 
			
		||||
		case <-tick:
 | 
			
		||||
			tick = nil
 | 
			
		||||
			collect.Reset()
 | 
			
		||||
			go func() {
 | 
			
		||||
				condition(collect)
 | 
			
		||||
				ch <- len(collect.errors) == 0
 | 
			
		||||
			}()
 | 
			
		||||
		case v := <-ch:
 | 
			
		||||
			if v {
 | 
			
		||||
				return true
 | 
			
		||||
			}
 | 
			
		||||
			tick = ticker.C
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Never asserts that the given condition doesn't satisfy in waitFor time,
 | 
			
		||||
// periodically checking the target function each tick.
 | 
			
		||||
//
 | 
			
		||||
//    assert.Never(t, func() bool { return false; }, time.Second, 10*time.Millisecond)
 | 
			
		||||
//	assert.Never(t, func() bool { return false; }, time.Second, 10*time.Millisecond)
 | 
			
		||||
func Never(t TestingT, condition func() bool, waitFor time.Duration, tick time.Duration, msgAndArgs ...interface{}) bool {
 | 
			
		||||
	if h, ok := t.(tHelper); ok {
 | 
			
		||||
		h.Helper()
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										43
									
								
								vendor/github.com/stretchr/testify/assert/doc.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										43
									
								
								vendor/github.com/stretchr/testify/assert/doc.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,39 +1,40 @@
 | 
			
		||||
// Package assert provides a set of comprehensive testing tools for use with the normal Go testing system.
 | 
			
		||||
//
 | 
			
		||||
// Example Usage
 | 
			
		||||
// # Example Usage
 | 
			
		||||
//
 | 
			
		||||
// The following is a complete example using assert in a standard test function:
 | 
			
		||||
//    import (
 | 
			
		||||
//      "testing"
 | 
			
		||||
//      "github.com/stretchr/testify/assert"
 | 
			
		||||
//    )
 | 
			
		||||
//
 | 
			
		||||
//    func TestSomething(t *testing.T) {
 | 
			
		||||
//	import (
 | 
			
		||||
//	  "testing"
 | 
			
		||||
//	  "github.com/stretchr/testify/assert"
 | 
			
		||||
//	)
 | 
			
		||||
//
 | 
			
		||||
//      var a string = "Hello"
 | 
			
		||||
//      var b string = "Hello"
 | 
			
		||||
//	func TestSomething(t *testing.T) {
 | 
			
		||||
//
 | 
			
		||||
//      assert.Equal(t, a, b, "The two words should be the same.")
 | 
			
		||||
//	  var a string = "Hello"
 | 
			
		||||
//	  var b string = "Hello"
 | 
			
		||||
//
 | 
			
		||||
//    }
 | 
			
		||||
//	  assert.Equal(t, a, b, "The two words should be the same.")
 | 
			
		||||
//
 | 
			
		||||
//	}
 | 
			
		||||
//
 | 
			
		||||
// if you assert many times, use the format below:
 | 
			
		||||
//
 | 
			
		||||
//    import (
 | 
			
		||||
//      "testing"
 | 
			
		||||
//      "github.com/stretchr/testify/assert"
 | 
			
		||||
//    )
 | 
			
		||||
//	import (
 | 
			
		||||
//	  "testing"
 | 
			
		||||
//	  "github.com/stretchr/testify/assert"
 | 
			
		||||
//	)
 | 
			
		||||
//
 | 
			
		||||
//    func TestSomething(t *testing.T) {
 | 
			
		||||
//      assert := assert.New(t)
 | 
			
		||||
//	func TestSomething(t *testing.T) {
 | 
			
		||||
//	  assert := assert.New(t)
 | 
			
		||||
//
 | 
			
		||||
//      var a string = "Hello"
 | 
			
		||||
//      var b string = "Hello"
 | 
			
		||||
//	  var a string = "Hello"
 | 
			
		||||
//	  var b string = "Hello"
 | 
			
		||||
//
 | 
			
		||||
//      assert.Equal(a, b, "The two words should be the same.")
 | 
			
		||||
//    }
 | 
			
		||||
//	  assert.Equal(a, b, "The two words should be the same.")
 | 
			
		||||
//	}
 | 
			
		||||
//
 | 
			
		||||
// Assertions
 | 
			
		||||
// # Assertions
 | 
			
		||||
//
 | 
			
		||||
// Assertions allow you to easily write test code, and are global funcs in the `assert` package.
 | 
			
		||||
// All assertion functions take, as the first argument, the `*testing.T` object provided by the
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										12
									
								
								vendor/github.com/stretchr/testify/assert/http_assertions.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										12
									
								
								vendor/github.com/stretchr/testify/assert/http_assertions.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -23,7 +23,7 @@ func httpCode(handler http.HandlerFunc, method, url string, values url.Values) (
 | 
			
		||||
 | 
			
		||||
// HTTPSuccess asserts that a specified handler returns a success status code.
 | 
			
		||||
//
 | 
			
		||||
//  assert.HTTPSuccess(t, myHandler, "POST", "http://www.google.com", nil)
 | 
			
		||||
//	assert.HTTPSuccess(t, myHandler, "POST", "http://www.google.com", nil)
 | 
			
		||||
//
 | 
			
		||||
// Returns whether the assertion was successful (true) or not (false).
 | 
			
		||||
func HTTPSuccess(t TestingT, handler http.HandlerFunc, method, url string, values url.Values, msgAndArgs ...interface{}) bool {
 | 
			
		||||
@@ -45,7 +45,7 @@ func HTTPSuccess(t TestingT, handler http.HandlerFunc, method, url string, value
 | 
			
		||||
 | 
			
		||||
// HTTPRedirect asserts that a specified handler returns a redirect status code.
 | 
			
		||||
//
 | 
			
		||||
//  assert.HTTPRedirect(t, myHandler, "GET", "/a/b/c", url.Values{"a": []string{"b", "c"}}
 | 
			
		||||
//	assert.HTTPRedirect(t, myHandler, "GET", "/a/b/c", url.Values{"a": []string{"b", "c"}}
 | 
			
		||||
//
 | 
			
		||||
// Returns whether the assertion was successful (true) or not (false).
 | 
			
		||||
func HTTPRedirect(t TestingT, handler http.HandlerFunc, method, url string, values url.Values, msgAndArgs ...interface{}) bool {
 | 
			
		||||
@@ -67,7 +67,7 @@ func HTTPRedirect(t TestingT, handler http.HandlerFunc, method, url string, valu
 | 
			
		||||
 | 
			
		||||
// HTTPError asserts that a specified handler returns an error status code.
 | 
			
		||||
//
 | 
			
		||||
//  assert.HTTPError(t, myHandler, "POST", "/a/b/c", url.Values{"a": []string{"b", "c"}}
 | 
			
		||||
//	assert.HTTPError(t, myHandler, "POST", "/a/b/c", url.Values{"a": []string{"b", "c"}}
 | 
			
		||||
//
 | 
			
		||||
// Returns whether the assertion was successful (true) or not (false).
 | 
			
		||||
func HTTPError(t TestingT, handler http.HandlerFunc, method, url string, values url.Values, msgAndArgs ...interface{}) bool {
 | 
			
		||||
@@ -89,7 +89,7 @@ func HTTPError(t TestingT, handler http.HandlerFunc, method, url string, values
 | 
			
		||||
 | 
			
		||||
// HTTPStatusCode asserts that a specified handler returns a specified status code.
 | 
			
		||||
//
 | 
			
		||||
//  assert.HTTPStatusCode(t, myHandler, "GET", "/notImplemented", nil, 501)
 | 
			
		||||
//	assert.HTTPStatusCode(t, myHandler, "GET", "/notImplemented", nil, 501)
 | 
			
		||||
//
 | 
			
		||||
// Returns whether the assertion was successful (true) or not (false).
 | 
			
		||||
func HTTPStatusCode(t TestingT, handler http.HandlerFunc, method, url string, values url.Values, statuscode int, msgAndArgs ...interface{}) bool {
 | 
			
		||||
@@ -124,7 +124,7 @@ func HTTPBody(handler http.HandlerFunc, method, url string, values url.Values) s
 | 
			
		||||
// HTTPBodyContains asserts that a specified handler returns a
 | 
			
		||||
// body that contains a string.
 | 
			
		||||
//
 | 
			
		||||
//  assert.HTTPBodyContains(t, myHandler, "GET", "www.google.com", nil, "I'm Feeling Lucky")
 | 
			
		||||
//	assert.HTTPBodyContains(t, myHandler, "GET", "www.google.com", nil, "I'm Feeling Lucky")
 | 
			
		||||
//
 | 
			
		||||
// Returns whether the assertion was successful (true) or not (false).
 | 
			
		||||
func HTTPBodyContains(t TestingT, handler http.HandlerFunc, method, url string, values url.Values, str interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
@@ -144,7 +144,7 @@ func HTTPBodyContains(t TestingT, handler http.HandlerFunc, method, url string,
 | 
			
		||||
// HTTPBodyNotContains asserts that a specified handler returns a
 | 
			
		||||
// body that does not contain a string.
 | 
			
		||||
//
 | 
			
		||||
//  assert.HTTPBodyNotContains(t, myHandler, "GET", "www.google.com", nil, "I'm Feeling Lucky")
 | 
			
		||||
//	assert.HTTPBodyNotContains(t, myHandler, "GET", "www.google.com", nil, "I'm Feeling Lucky")
 | 
			
		||||
//
 | 
			
		||||
// Returns whether the assertion was successful (true) or not (false).
 | 
			
		||||
func HTTPBodyNotContains(t TestingT, handler http.HandlerFunc, method, url string, values url.Values, str interface{}, msgAndArgs ...interface{}) bool {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user