blob: 75ecdcaa2f3e9bb45c332222ffd8ff42f5beadda [file] [log] [blame]
Matteo Scandolo75ed5b92020-09-03 09:03:16 -07001/*
2* CODE GENERATED AUTOMATICALLY WITH github.com/stretchr/testify/_codegen
3* THIS FILE MUST NOT BE EDITED BY HAND
4 */
5
6package assert
7
8import (
9 http "net/http"
10 url "net/url"
11 time "time"
12)
13
14// Condition uses a Comparison to assert a complex condition.
15func (a *Assertions) Condition(comp Comparison, msgAndArgs ...interface{}) bool {
16 if h, ok := a.t.(tHelper); ok {
17 h.Helper()
18 }
19 return Condition(a.t, comp, msgAndArgs...)
20}
21
22// Conditionf uses a Comparison to assert a complex condition.
23func (a *Assertions) Conditionf(comp Comparison, msg string, args ...interface{}) bool {
24 if h, ok := a.t.(tHelper); ok {
25 h.Helper()
26 }
27 return Conditionf(a.t, comp, msg, args...)
28}
29
30// Contains asserts that the specified string, list(array, slice...) or map contains the
31// specified substring or element.
32//
33// a.Contains("Hello World", "World")
34// a.Contains(["Hello", "World"], "World")
35// a.Contains({"Hello": "World"}, "Hello")
36func (a *Assertions) Contains(s interface{}, contains interface{}, msgAndArgs ...interface{}) bool {
37 if h, ok := a.t.(tHelper); ok {
38 h.Helper()
39 }
40 return Contains(a.t, s, contains, msgAndArgs...)
41}
42
43// Containsf asserts that the specified string, list(array, slice...) or map contains the
44// specified substring or element.
45//
46// a.Containsf("Hello World", "World", "error message %s", "formatted")
47// a.Containsf(["Hello", "World"], "World", "error message %s", "formatted")
48// a.Containsf({"Hello": "World"}, "Hello", "error message %s", "formatted")
49func (a *Assertions) Containsf(s interface{}, contains interface{}, msg string, args ...interface{}) bool {
50 if h, ok := a.t.(tHelper); ok {
51 h.Helper()
52 }
53 return Containsf(a.t, s, contains, msg, args...)
54}
55
Matteo Scandolof9d43412021-01-12 11:11:34 -080056// DirExists checks whether a directory exists in the given path. It also fails
57// if the path is a file rather a directory or there is an error checking whether it exists.
Matteo Scandolo75ed5b92020-09-03 09:03:16 -070058func (a *Assertions) DirExists(path string, msgAndArgs ...interface{}) bool {
59 if h, ok := a.t.(tHelper); ok {
60 h.Helper()
61 }
62 return DirExists(a.t, path, msgAndArgs...)
63}
64
Matteo Scandolof9d43412021-01-12 11:11:34 -080065// DirExistsf checks whether a directory exists in the given path. It also fails
66// if the path is a file rather a directory or there is an error checking whether it exists.
Matteo Scandolo75ed5b92020-09-03 09:03:16 -070067func (a *Assertions) DirExistsf(path string, msg string, args ...interface{}) bool {
68 if h, ok := a.t.(tHelper); ok {
69 h.Helper()
70 }
71 return DirExistsf(a.t, path, msg, args...)
72}
73
74// ElementsMatch asserts that the specified listA(array, slice...) is equal to specified
75// listB(array, slice...) ignoring the order of the elements. If there are duplicate elements,
76// the number of appearances of each of them in both lists should match.
77//
78// a.ElementsMatch([1, 3, 2, 3], [1, 3, 3, 2])
79func (a *Assertions) ElementsMatch(listA interface{}, listB interface{}, msgAndArgs ...interface{}) bool {
80 if h, ok := a.t.(tHelper); ok {
81 h.Helper()
82 }
83 return ElementsMatch(a.t, listA, listB, msgAndArgs...)
84}
85
86// ElementsMatchf asserts that the specified listA(array, slice...) is equal to specified
87// listB(array, slice...) ignoring the order of the elements. If there are duplicate elements,
88// the number of appearances of each of them in both lists should match.
89//
90// a.ElementsMatchf([1, 3, 2, 3], [1, 3, 3, 2], "error message %s", "formatted")
91func (a *Assertions) ElementsMatchf(listA interface{}, listB interface{}, msg string, args ...interface{}) bool {
92 if h, ok := a.t.(tHelper); ok {
93 h.Helper()
94 }
95 return ElementsMatchf(a.t, listA, listB, msg, args...)
96}
97
98// Empty asserts that the specified object is empty. I.e. nil, "", false, 0 or either
99// a slice or a channel with len == 0.
100//
101// a.Empty(obj)
102func (a *Assertions) Empty(object interface{}, msgAndArgs ...interface{}) bool {
103 if h, ok := a.t.(tHelper); ok {
104 h.Helper()
105 }
106 return Empty(a.t, object, msgAndArgs...)
107}
108
109// Emptyf asserts that the specified object is empty. I.e. nil, "", false, 0 or either
110// a slice or a channel with len == 0.
111//
112// a.Emptyf(obj, "error message %s", "formatted")
113func (a *Assertions) Emptyf(object interface{}, msg string, args ...interface{}) bool {
114 if h, ok := a.t.(tHelper); ok {
115 h.Helper()
116 }
117 return Emptyf(a.t, object, msg, args...)
118}
119
120// Equal asserts that two objects are equal.
121//
122// a.Equal(123, 123)
123//
124// Pointer variable equality is determined based on the equality of the
125// referenced values (as opposed to the memory addresses). Function equality
126// cannot be determined and will always fail.
127func (a *Assertions) Equal(expected interface{}, actual interface{}, msgAndArgs ...interface{}) bool {
128 if h, ok := a.t.(tHelper); ok {
129 h.Helper()
130 }
131 return Equal(a.t, expected, actual, msgAndArgs...)
132}
133
134// EqualError asserts that a function returned an error (i.e. not `nil`)
135// and that it is equal to the provided error.
136//
137// actualObj, err := SomeFunction()
138// a.EqualError(err, expectedErrorString)
139func (a *Assertions) EqualError(theError error, errString string, msgAndArgs ...interface{}) bool {
140 if h, ok := a.t.(tHelper); ok {
141 h.Helper()
142 }
143 return EqualError(a.t, theError, errString, msgAndArgs...)
144}
145
146// EqualErrorf asserts that a function returned an error (i.e. not `nil`)
147// and that it is equal to the provided error.
148//
149// actualObj, err := SomeFunction()
150// a.EqualErrorf(err, expectedErrorString, "error message %s", "formatted")
151func (a *Assertions) EqualErrorf(theError error, errString string, msg string, args ...interface{}) bool {
152 if h, ok := a.t.(tHelper); ok {
153 h.Helper()
154 }
155 return EqualErrorf(a.t, theError, errString, msg, args...)
156}
157
158// EqualValues asserts that two objects are equal or convertable to the same types
159// and equal.
160//
161// a.EqualValues(uint32(123), int32(123))
162func (a *Assertions) EqualValues(expected interface{}, actual interface{}, msgAndArgs ...interface{}) bool {
163 if h, ok := a.t.(tHelper); ok {
164 h.Helper()
165 }
166 return EqualValues(a.t, expected, actual, msgAndArgs...)
167}
168
169// EqualValuesf asserts that two objects are equal or convertable to the same types
170// and equal.
171//
172// a.EqualValuesf(uint32(123, "error message %s", "formatted"), int32(123))
173func (a *Assertions) EqualValuesf(expected interface{}, actual interface{}, msg string, args ...interface{}) bool {
174 if h, ok := a.t.(tHelper); ok {
175 h.Helper()
176 }
177 return EqualValuesf(a.t, expected, actual, msg, args...)
178}
179
180// Equalf asserts that two objects are equal.
181//
182// a.Equalf(123, 123, "error message %s", "formatted")
183//
184// Pointer variable equality is determined based on the equality of the
185// referenced values (as opposed to the memory addresses). Function equality
186// cannot be determined and will always fail.
187func (a *Assertions) Equalf(expected interface{}, actual interface{}, msg string, args ...interface{}) bool {
188 if h, ok := a.t.(tHelper); ok {
189 h.Helper()
190 }
191 return Equalf(a.t, expected, actual, msg, args...)
192}
193
194// Error asserts that a function returned an error (i.e. not `nil`).
195//
196// actualObj, err := SomeFunction()
197// if a.Error(err) {
198// assert.Equal(t, expectedError, err)
199// }
200func (a *Assertions) Error(err error, msgAndArgs ...interface{}) bool {
201 if h, ok := a.t.(tHelper); ok {
202 h.Helper()
203 }
204 return Error(a.t, err, msgAndArgs...)
205}
206
207// Errorf asserts that a function returned an error (i.e. not `nil`).
208//
209// actualObj, err := SomeFunction()
210// if a.Errorf(err, "error message %s", "formatted") {
211// assert.Equal(t, expectedErrorf, err)
212// }
213func (a *Assertions) Errorf(err error, msg string, args ...interface{}) bool {
214 if h, ok := a.t.(tHelper); ok {
215 h.Helper()
216 }
217 return Errorf(a.t, err, msg, args...)
218}
219
220// Eventually asserts that given condition will be met in waitFor time,
221// periodically checking target function each tick.
222//
223// a.Eventually(func() bool { return true; }, time.Second, 10*time.Millisecond)
224func (a *Assertions) Eventually(condition func() bool, waitFor time.Duration, tick time.Duration, msgAndArgs ...interface{}) bool {
225 if h, ok := a.t.(tHelper); ok {
226 h.Helper()
227 }
228 return Eventually(a.t, condition, waitFor, tick, msgAndArgs...)
229}
230
231// Eventuallyf asserts that given condition will be met in waitFor time,
232// periodically checking target function each tick.
233//
234// a.Eventuallyf(func() bool { return true; }, time.Second, 10*time.Millisecond, "error message %s", "formatted")
235func (a *Assertions) Eventuallyf(condition func() bool, waitFor time.Duration, tick time.Duration, msg string, args ...interface{}) bool {
236 if h, ok := a.t.(tHelper); ok {
237 h.Helper()
238 }
239 return Eventuallyf(a.t, condition, waitFor, tick, msg, args...)
240}
241
242// Exactly asserts that two objects are equal in value and type.
243//
244// a.Exactly(int32(123), int64(123))
245func (a *Assertions) Exactly(expected interface{}, actual interface{}, msgAndArgs ...interface{}) bool {
246 if h, ok := a.t.(tHelper); ok {
247 h.Helper()
248 }
249 return Exactly(a.t, expected, actual, msgAndArgs...)
250}
251
252// Exactlyf asserts that two objects are equal in value and type.
253//
254// a.Exactlyf(int32(123, "error message %s", "formatted"), int64(123))
255func (a *Assertions) Exactlyf(expected interface{}, actual interface{}, msg string, args ...interface{}) bool {
256 if h, ok := a.t.(tHelper); ok {
257 h.Helper()
258 }
259 return Exactlyf(a.t, expected, actual, msg, args...)
260}
261
262// Fail reports a failure through
263func (a *Assertions) Fail(failureMessage string, msgAndArgs ...interface{}) bool {
264 if h, ok := a.t.(tHelper); ok {
265 h.Helper()
266 }
267 return Fail(a.t, failureMessage, msgAndArgs...)
268}
269
270// FailNow fails test
271func (a *Assertions) FailNow(failureMessage string, msgAndArgs ...interface{}) bool {
272 if h, ok := a.t.(tHelper); ok {
273 h.Helper()
274 }
275 return FailNow(a.t, failureMessage, msgAndArgs...)
276}
277
278// FailNowf fails test
279func (a *Assertions) FailNowf(failureMessage string, msg string, args ...interface{}) bool {
280 if h, ok := a.t.(tHelper); ok {
281 h.Helper()
282 }
283 return FailNowf(a.t, failureMessage, msg, args...)
284}
285
286// Failf reports a failure through
287func (a *Assertions) Failf(failureMessage string, msg string, args ...interface{}) bool {
288 if h, ok := a.t.(tHelper); ok {
289 h.Helper()
290 }
291 return Failf(a.t, failureMessage, msg, args...)
292}
293
294// False asserts that the specified value is false.
295//
296// a.False(myBool)
297func (a *Assertions) False(value bool, msgAndArgs ...interface{}) bool {
298 if h, ok := a.t.(tHelper); ok {
299 h.Helper()
300 }
301 return False(a.t, value, msgAndArgs...)
302}
303
304// Falsef asserts that the specified value is false.
305//
306// a.Falsef(myBool, "error message %s", "formatted")
307func (a *Assertions) Falsef(value bool, msg string, args ...interface{}) bool {
308 if h, ok := a.t.(tHelper); ok {
309 h.Helper()
310 }
311 return Falsef(a.t, value, msg, args...)
312}
313
Matteo Scandolof9d43412021-01-12 11:11:34 -0800314// FileExists checks whether a file exists in the given path. It also fails if
315// the path points to a directory or there is an error when trying to check the file.
Matteo Scandolo75ed5b92020-09-03 09:03:16 -0700316func (a *Assertions) FileExists(path string, msgAndArgs ...interface{}) bool {
317 if h, ok := a.t.(tHelper); ok {
318 h.Helper()
319 }
320 return FileExists(a.t, path, msgAndArgs...)
321}
322
Matteo Scandolof9d43412021-01-12 11:11:34 -0800323// FileExistsf checks whether a file exists in the given path. It also fails if
324// the path points to a directory or there is an error when trying to check the file.
Matteo Scandolo75ed5b92020-09-03 09:03:16 -0700325func (a *Assertions) FileExistsf(path string, msg string, args ...interface{}) bool {
326 if h, ok := a.t.(tHelper); ok {
327 h.Helper()
328 }
329 return FileExistsf(a.t, path, msg, args...)
330}
331
332// Greater asserts that the first element is greater than the second
333//
334// a.Greater(2, 1)
335// a.Greater(float64(2), float64(1))
336// a.Greater("b", "a")
337func (a *Assertions) Greater(e1 interface{}, e2 interface{}, msgAndArgs ...interface{}) bool {
338 if h, ok := a.t.(tHelper); ok {
339 h.Helper()
340 }
341 return Greater(a.t, e1, e2, msgAndArgs...)
342}
343
344// GreaterOrEqual asserts that the first element is greater than or equal to the second
345//
346// a.GreaterOrEqual(2, 1)
347// a.GreaterOrEqual(2, 2)
348// a.GreaterOrEqual("b", "a")
349// a.GreaterOrEqual("b", "b")
350func (a *Assertions) GreaterOrEqual(e1 interface{}, e2 interface{}, msgAndArgs ...interface{}) bool {
351 if h, ok := a.t.(tHelper); ok {
352 h.Helper()
353 }
354 return GreaterOrEqual(a.t, e1, e2, msgAndArgs...)
355}
356
357// GreaterOrEqualf asserts that the first element is greater than or equal to the second
358//
359// a.GreaterOrEqualf(2, 1, "error message %s", "formatted")
360// a.GreaterOrEqualf(2, 2, "error message %s", "formatted")
361// a.GreaterOrEqualf("b", "a", "error message %s", "formatted")
362// a.GreaterOrEqualf("b", "b", "error message %s", "formatted")
363func (a *Assertions) GreaterOrEqualf(e1 interface{}, e2 interface{}, msg string, args ...interface{}) bool {
364 if h, ok := a.t.(tHelper); ok {
365 h.Helper()
366 }
367 return GreaterOrEqualf(a.t, e1, e2, msg, args...)
368}
369
370// Greaterf asserts that the first element is greater than the second
371//
372// a.Greaterf(2, 1, "error message %s", "formatted")
373// a.Greaterf(float64(2, "error message %s", "formatted"), float64(1))
374// a.Greaterf("b", "a", "error message %s", "formatted")
375func (a *Assertions) Greaterf(e1 interface{}, e2 interface{}, msg string, args ...interface{}) bool {
376 if h, ok := a.t.(tHelper); ok {
377 h.Helper()
378 }
379 return Greaterf(a.t, e1, e2, msg, args...)
380}
381
382// HTTPBodyContains asserts that a specified handler returns a
383// body that contains a string.
384//
385// a.HTTPBodyContains(myHandler, "GET", "www.google.com", nil, "I'm Feeling Lucky")
386//
387// Returns whether the assertion was successful (true) or not (false).
388func (a *Assertions) HTTPBodyContains(handler http.HandlerFunc, method string, url string, values url.Values, str interface{}, msgAndArgs ...interface{}) bool {
389 if h, ok := a.t.(tHelper); ok {
390 h.Helper()
391 }
392 return HTTPBodyContains(a.t, handler, method, url, values, str, msgAndArgs...)
393}
394
395// HTTPBodyContainsf asserts that a specified handler returns a
396// body that contains a string.
397//
398// a.HTTPBodyContainsf(myHandler, "GET", "www.google.com", nil, "I'm Feeling Lucky", "error message %s", "formatted")
399//
400// Returns whether the assertion was successful (true) or not (false).
401func (a *Assertions) HTTPBodyContainsf(handler http.HandlerFunc, method string, url string, values url.Values, str interface{}, msg string, args ...interface{}) bool {
402 if h, ok := a.t.(tHelper); ok {
403 h.Helper()
404 }
405 return HTTPBodyContainsf(a.t, handler, method, url, values, str, msg, args...)
406}
407
408// HTTPBodyNotContains asserts that a specified handler returns a
409// body that does not contain a string.
410//
411// a.HTTPBodyNotContains(myHandler, "GET", "www.google.com", nil, "I'm Feeling Lucky")
412//
413// Returns whether the assertion was successful (true) or not (false).
414func (a *Assertions) HTTPBodyNotContains(handler http.HandlerFunc, method string, url string, values url.Values, str interface{}, msgAndArgs ...interface{}) bool {
415 if h, ok := a.t.(tHelper); ok {
416 h.Helper()
417 }
418 return HTTPBodyNotContains(a.t, handler, method, url, values, str, msgAndArgs...)
419}
420
421// HTTPBodyNotContainsf asserts that a specified handler returns a
422// body that does not contain a string.
423//
424// a.HTTPBodyNotContainsf(myHandler, "GET", "www.google.com", nil, "I'm Feeling Lucky", "error message %s", "formatted")
425//
426// Returns whether the assertion was successful (true) or not (false).
427func (a *Assertions) HTTPBodyNotContainsf(handler http.HandlerFunc, method string, url string, values url.Values, str interface{}, msg string, args ...interface{}) bool {
428 if h, ok := a.t.(tHelper); ok {
429 h.Helper()
430 }
431 return HTTPBodyNotContainsf(a.t, handler, method, url, values, str, msg, args...)
432}
433
434// HTTPError asserts that a specified handler returns an error status code.
435//
436// a.HTTPError(myHandler, "POST", "/a/b/c", url.Values{"a": []string{"b", "c"}}
437//
438// Returns whether the assertion was successful (true) or not (false).
439func (a *Assertions) HTTPError(handler http.HandlerFunc, method string, url string, values url.Values, msgAndArgs ...interface{}) bool {
440 if h, ok := a.t.(tHelper); ok {
441 h.Helper()
442 }
443 return HTTPError(a.t, handler, method, url, values, msgAndArgs...)
444}
445
446// HTTPErrorf asserts that a specified handler returns an error status code.
447//
448// a.HTTPErrorf(myHandler, "POST", "/a/b/c", url.Values{"a": []string{"b", "c"}}
449//
450// Returns whether the assertion was successful (true, "error message %s", "formatted") or not (false).
451func (a *Assertions) HTTPErrorf(handler http.HandlerFunc, method string, url string, values url.Values, msg string, args ...interface{}) bool {
452 if h, ok := a.t.(tHelper); ok {
453 h.Helper()
454 }
455 return HTTPErrorf(a.t, handler, method, url, values, msg, args...)
456}
457
458// HTTPRedirect asserts that a specified handler returns a redirect status code.
459//
460// a.HTTPRedirect(myHandler, "GET", "/a/b/c", url.Values{"a": []string{"b", "c"}}
461//
462// Returns whether the assertion was successful (true) or not (false).
463func (a *Assertions) HTTPRedirect(handler http.HandlerFunc, method string, url string, values url.Values, msgAndArgs ...interface{}) bool {
464 if h, ok := a.t.(tHelper); ok {
465 h.Helper()
466 }
467 return HTTPRedirect(a.t, handler, method, url, values, msgAndArgs...)
468}
469
470// HTTPRedirectf asserts that a specified handler returns a redirect status code.
471//
472// a.HTTPRedirectf(myHandler, "GET", "/a/b/c", url.Values{"a": []string{"b", "c"}}
473//
474// Returns whether the assertion was successful (true, "error message %s", "formatted") or not (false).
475func (a *Assertions) HTTPRedirectf(handler http.HandlerFunc, method string, url string, values url.Values, msg string, args ...interface{}) bool {
476 if h, ok := a.t.(tHelper); ok {
477 h.Helper()
478 }
479 return HTTPRedirectf(a.t, handler, method, url, values, msg, args...)
480}
481
482// HTTPSuccess asserts that a specified handler returns a success status code.
483//
484// a.HTTPSuccess(myHandler, "POST", "http://www.google.com", nil)
485//
486// Returns whether the assertion was successful (true) or not (false).
487func (a *Assertions) HTTPSuccess(handler http.HandlerFunc, method string, url string, values url.Values, msgAndArgs ...interface{}) bool {
488 if h, ok := a.t.(tHelper); ok {
489 h.Helper()
490 }
491 return HTTPSuccess(a.t, handler, method, url, values, msgAndArgs...)
492}
493
494// HTTPSuccessf asserts that a specified handler returns a success status code.
495//
496// a.HTTPSuccessf(myHandler, "POST", "http://www.google.com", nil, "error message %s", "formatted")
497//
498// Returns whether the assertion was successful (true) or not (false).
499func (a *Assertions) HTTPSuccessf(handler http.HandlerFunc, method string, url string, values url.Values, msg string, args ...interface{}) bool {
500 if h, ok := a.t.(tHelper); ok {
501 h.Helper()
502 }
503 return HTTPSuccessf(a.t, handler, method, url, values, msg, args...)
504}
505
506// Implements asserts that an object is implemented by the specified interface.
507//
508// a.Implements((*MyInterface)(nil), new(MyObject))
509func (a *Assertions) Implements(interfaceObject interface{}, object interface{}, msgAndArgs ...interface{}) bool {
510 if h, ok := a.t.(tHelper); ok {
511 h.Helper()
512 }
513 return Implements(a.t, interfaceObject, object, msgAndArgs...)
514}
515
516// Implementsf asserts that an object is implemented by the specified interface.
517//
518// a.Implementsf((*MyInterface, "error message %s", "formatted")(nil), new(MyObject))
519func (a *Assertions) Implementsf(interfaceObject interface{}, object interface{}, msg string, args ...interface{}) bool {
520 if h, ok := a.t.(tHelper); ok {
521 h.Helper()
522 }
523 return Implementsf(a.t, interfaceObject, object, msg, args...)
524}
525
526// InDelta asserts that the two numerals are within delta of each other.
527//
Matteo Scandolof9d43412021-01-12 11:11:34 -0800528// a.InDelta(math.Pi, 22/7.0, 0.01)
Matteo Scandolo75ed5b92020-09-03 09:03:16 -0700529func (a *Assertions) InDelta(expected interface{}, actual interface{}, delta float64, msgAndArgs ...interface{}) bool {
530 if h, ok := a.t.(tHelper); ok {
531 h.Helper()
532 }
533 return InDelta(a.t, expected, actual, delta, msgAndArgs...)
534}
535
536// InDeltaMapValues is the same as InDelta, but it compares all values between two maps. Both maps must have exactly the same keys.
537func (a *Assertions) InDeltaMapValues(expected interface{}, actual interface{}, delta float64, msgAndArgs ...interface{}) bool {
538 if h, ok := a.t.(tHelper); ok {
539 h.Helper()
540 }
541 return InDeltaMapValues(a.t, expected, actual, delta, msgAndArgs...)
542}
543
544// InDeltaMapValuesf is the same as InDelta, but it compares all values between two maps. Both maps must have exactly the same keys.
545func (a *Assertions) InDeltaMapValuesf(expected interface{}, actual interface{}, delta float64, msg string, args ...interface{}) bool {
546 if h, ok := a.t.(tHelper); ok {
547 h.Helper()
548 }
549 return InDeltaMapValuesf(a.t, expected, actual, delta, msg, args...)
550}
551
552// InDeltaSlice is the same as InDelta, except it compares two slices.
553func (a *Assertions) InDeltaSlice(expected interface{}, actual interface{}, delta float64, msgAndArgs ...interface{}) bool {
554 if h, ok := a.t.(tHelper); ok {
555 h.Helper()
556 }
557 return InDeltaSlice(a.t, expected, actual, delta, msgAndArgs...)
558}
559
560// InDeltaSlicef is the same as InDelta, except it compares two slices.
561func (a *Assertions) InDeltaSlicef(expected interface{}, actual interface{}, delta float64, msg string, args ...interface{}) bool {
562 if h, ok := a.t.(tHelper); ok {
563 h.Helper()
564 }
565 return InDeltaSlicef(a.t, expected, actual, delta, msg, args...)
566}
567
568// InDeltaf asserts that the two numerals are within delta of each other.
569//
Matteo Scandolof9d43412021-01-12 11:11:34 -0800570// a.InDeltaf(math.Pi, 22/7.0, 0.01, "error message %s", "formatted")
Matteo Scandolo75ed5b92020-09-03 09:03:16 -0700571func (a *Assertions) InDeltaf(expected interface{}, actual interface{}, delta float64, msg string, args ...interface{}) bool {
572 if h, ok := a.t.(tHelper); ok {
573 h.Helper()
574 }
575 return InDeltaf(a.t, expected, actual, delta, msg, args...)
576}
577
578// InEpsilon asserts that expected and actual have a relative error less than epsilon
579func (a *Assertions) InEpsilon(expected interface{}, actual interface{}, epsilon float64, msgAndArgs ...interface{}) bool {
580 if h, ok := a.t.(tHelper); ok {
581 h.Helper()
582 }
583 return InEpsilon(a.t, expected, actual, epsilon, msgAndArgs...)
584}
585
586// InEpsilonSlice is the same as InEpsilon, except it compares each value from two slices.
587func (a *Assertions) InEpsilonSlice(expected interface{}, actual interface{}, epsilon float64, msgAndArgs ...interface{}) bool {
588 if h, ok := a.t.(tHelper); ok {
589 h.Helper()
590 }
591 return InEpsilonSlice(a.t, expected, actual, epsilon, msgAndArgs...)
592}
593
594// InEpsilonSlicef is the same as InEpsilon, except it compares each value from two slices.
595func (a *Assertions) InEpsilonSlicef(expected interface{}, actual interface{}, epsilon float64, msg string, args ...interface{}) bool {
596 if h, ok := a.t.(tHelper); ok {
597 h.Helper()
598 }
599 return InEpsilonSlicef(a.t, expected, actual, epsilon, msg, args...)
600}
601
602// InEpsilonf asserts that expected and actual have a relative error less than epsilon
603func (a *Assertions) InEpsilonf(expected interface{}, actual interface{}, epsilon float64, msg string, args ...interface{}) bool {
604 if h, ok := a.t.(tHelper); ok {
605 h.Helper()
606 }
607 return InEpsilonf(a.t, expected, actual, epsilon, msg, args...)
608}
609
610// IsType asserts that the specified objects are of the same type.
611func (a *Assertions) IsType(expectedType interface{}, object interface{}, msgAndArgs ...interface{}) bool {
612 if h, ok := a.t.(tHelper); ok {
613 h.Helper()
614 }
615 return IsType(a.t, expectedType, object, msgAndArgs...)
616}
617
618// IsTypef asserts that the specified objects are of the same type.
619func (a *Assertions) IsTypef(expectedType interface{}, object interface{}, msg string, args ...interface{}) bool {
620 if h, ok := a.t.(tHelper); ok {
621 h.Helper()
622 }
623 return IsTypef(a.t, expectedType, object, msg, args...)
624}
625
626// JSONEq asserts that two JSON strings are equivalent.
627//
628// a.JSONEq(`{"hello": "world", "foo": "bar"}`, `{"foo": "bar", "hello": "world"}`)
629func (a *Assertions) JSONEq(expected string, actual string, msgAndArgs ...interface{}) bool {
630 if h, ok := a.t.(tHelper); ok {
631 h.Helper()
632 }
633 return JSONEq(a.t, expected, actual, msgAndArgs...)
634}
635
636// JSONEqf asserts that two JSON strings are equivalent.
637//
638// a.JSONEqf(`{"hello": "world", "foo": "bar"}`, `{"foo": "bar", "hello": "world"}`, "error message %s", "formatted")
639func (a *Assertions) JSONEqf(expected string, actual string, msg string, args ...interface{}) bool {
640 if h, ok := a.t.(tHelper); ok {
641 h.Helper()
642 }
643 return JSONEqf(a.t, expected, actual, msg, args...)
644}
645
Matteo Scandolo75ed5b92020-09-03 09:03:16 -0700646// Len asserts that the specified object has specific length.
647// Len also fails if the object has a type that len() not accept.
648//
649// a.Len(mySlice, 3)
650func (a *Assertions) Len(object interface{}, length int, msgAndArgs ...interface{}) bool {
651 if h, ok := a.t.(tHelper); ok {
652 h.Helper()
653 }
654 return Len(a.t, object, length, msgAndArgs...)
655}
656
657// Lenf asserts that the specified object has specific length.
658// Lenf also fails if the object has a type that len() not accept.
659//
660// a.Lenf(mySlice, 3, "error message %s", "formatted")
661func (a *Assertions) Lenf(object interface{}, length int, msg string, args ...interface{}) bool {
662 if h, ok := a.t.(tHelper); ok {
663 h.Helper()
664 }
665 return Lenf(a.t, object, length, msg, args...)
666}
667
668// Less asserts that the first element is less than the second
669//
670// a.Less(1, 2)
671// a.Less(float64(1), float64(2))
672// a.Less("a", "b")
673func (a *Assertions) Less(e1 interface{}, e2 interface{}, msgAndArgs ...interface{}) bool {
674 if h, ok := a.t.(tHelper); ok {
675 h.Helper()
676 }
677 return Less(a.t, e1, e2, msgAndArgs...)
678}
679
680// LessOrEqual asserts that the first element is less than or equal to the second
681//
682// a.LessOrEqual(1, 2)
683// a.LessOrEqual(2, 2)
684// a.LessOrEqual("a", "b")
685// a.LessOrEqual("b", "b")
686func (a *Assertions) LessOrEqual(e1 interface{}, e2 interface{}, msgAndArgs ...interface{}) bool {
687 if h, ok := a.t.(tHelper); ok {
688 h.Helper()
689 }
690 return LessOrEqual(a.t, e1, e2, msgAndArgs...)
691}
692
693// LessOrEqualf asserts that the first element is less than or equal to the second
694//
695// a.LessOrEqualf(1, 2, "error message %s", "formatted")
696// a.LessOrEqualf(2, 2, "error message %s", "formatted")
697// a.LessOrEqualf("a", "b", "error message %s", "formatted")
698// a.LessOrEqualf("b", "b", "error message %s", "formatted")
699func (a *Assertions) LessOrEqualf(e1 interface{}, e2 interface{}, msg string, args ...interface{}) bool {
700 if h, ok := a.t.(tHelper); ok {
701 h.Helper()
702 }
703 return LessOrEqualf(a.t, e1, e2, msg, args...)
704}
705
706// Lessf asserts that the first element is less than the second
707//
708// a.Lessf(1, 2, "error message %s", "formatted")
709// a.Lessf(float64(1, "error message %s", "formatted"), float64(2))
710// a.Lessf("a", "b", "error message %s", "formatted")
711func (a *Assertions) Lessf(e1 interface{}, e2 interface{}, msg string, args ...interface{}) bool {
712 if h, ok := a.t.(tHelper); ok {
713 h.Helper()
714 }
715 return Lessf(a.t, e1, e2, msg, args...)
716}
717
Matteo Scandolof9d43412021-01-12 11:11:34 -0800718// Never asserts that the given condition doesn't satisfy in waitFor time,
719// periodically checking the target function each tick.
720//
721// a.Never(func() bool { return false; }, time.Second, 10*time.Millisecond)
722func (a *Assertions) Never(condition func() bool, waitFor time.Duration, tick time.Duration, msgAndArgs ...interface{}) bool {
723 if h, ok := a.t.(tHelper); ok {
724 h.Helper()
725 }
726 return Never(a.t, condition, waitFor, tick, msgAndArgs...)
727}
728
729// Neverf asserts that the given condition doesn't satisfy in waitFor time,
730// periodically checking the target function each tick.
731//
732// a.Neverf(func() bool { return false; }, time.Second, 10*time.Millisecond, "error message %s", "formatted")
733func (a *Assertions) Neverf(condition func() bool, waitFor time.Duration, tick time.Duration, msg string, args ...interface{}) bool {
734 if h, ok := a.t.(tHelper); ok {
735 h.Helper()
736 }
737 return Neverf(a.t, condition, waitFor, tick, msg, args...)
738}
739
Matteo Scandolo75ed5b92020-09-03 09:03:16 -0700740// Nil asserts that the specified object is nil.
741//
742// a.Nil(err)
743func (a *Assertions) Nil(object interface{}, msgAndArgs ...interface{}) bool {
744 if h, ok := a.t.(tHelper); ok {
745 h.Helper()
746 }
747 return Nil(a.t, object, msgAndArgs...)
748}
749
750// Nilf asserts that the specified object is nil.
751//
752// a.Nilf(err, "error message %s", "formatted")
753func (a *Assertions) Nilf(object interface{}, msg string, args ...interface{}) bool {
754 if h, ok := a.t.(tHelper); ok {
755 h.Helper()
756 }
757 return Nilf(a.t, object, msg, args...)
758}
759
Matteo Scandolof9d43412021-01-12 11:11:34 -0800760// NoDirExists checks whether a directory does not exist in the given path.
761// It fails if the path points to an existing _directory_ only.
762func (a *Assertions) NoDirExists(path string, msgAndArgs ...interface{}) bool {
763 if h, ok := a.t.(tHelper); ok {
764 h.Helper()
765 }
766 return NoDirExists(a.t, path, msgAndArgs...)
767}
768
769// NoDirExistsf checks whether a directory does not exist in the given path.
770// It fails if the path points to an existing _directory_ only.
771func (a *Assertions) NoDirExistsf(path string, msg string, args ...interface{}) bool {
772 if h, ok := a.t.(tHelper); ok {
773 h.Helper()
774 }
775 return NoDirExistsf(a.t, path, msg, args...)
776}
777
Matteo Scandolo75ed5b92020-09-03 09:03:16 -0700778// NoError asserts that a function returned no error (i.e. `nil`).
779//
780// actualObj, err := SomeFunction()
781// if a.NoError(err) {
782// assert.Equal(t, expectedObj, actualObj)
783// }
784func (a *Assertions) NoError(err error, msgAndArgs ...interface{}) bool {
785 if h, ok := a.t.(tHelper); ok {
786 h.Helper()
787 }
788 return NoError(a.t, err, msgAndArgs...)
789}
790
791// NoErrorf asserts that a function returned no error (i.e. `nil`).
792//
793// actualObj, err := SomeFunction()
794// if a.NoErrorf(err, "error message %s", "formatted") {
795// assert.Equal(t, expectedObj, actualObj)
796// }
797func (a *Assertions) NoErrorf(err error, msg string, args ...interface{}) bool {
798 if h, ok := a.t.(tHelper); ok {
799 h.Helper()
800 }
801 return NoErrorf(a.t, err, msg, args...)
802}
803
Matteo Scandolof9d43412021-01-12 11:11:34 -0800804// NoFileExists checks whether a file does not exist in a given path. It fails
805// if the path points to an existing _file_ only.
806func (a *Assertions) NoFileExists(path string, msgAndArgs ...interface{}) bool {
807 if h, ok := a.t.(tHelper); ok {
808 h.Helper()
809 }
810 return NoFileExists(a.t, path, msgAndArgs...)
811}
812
813// NoFileExistsf checks whether a file does not exist in a given path. It fails
814// if the path points to an existing _file_ only.
815func (a *Assertions) NoFileExistsf(path string, msg string, args ...interface{}) bool {
816 if h, ok := a.t.(tHelper); ok {
817 h.Helper()
818 }
819 return NoFileExistsf(a.t, path, msg, args...)
820}
821
Matteo Scandolo75ed5b92020-09-03 09:03:16 -0700822// NotContains asserts that the specified string, list(array, slice...) or map does NOT contain the
823// specified substring or element.
824//
825// a.NotContains("Hello World", "Earth")
826// a.NotContains(["Hello", "World"], "Earth")
827// a.NotContains({"Hello": "World"}, "Earth")
828func (a *Assertions) NotContains(s interface{}, contains interface{}, msgAndArgs ...interface{}) bool {
829 if h, ok := a.t.(tHelper); ok {
830 h.Helper()
831 }
832 return NotContains(a.t, s, contains, msgAndArgs...)
833}
834
835// NotContainsf asserts that the specified string, list(array, slice...) or map does NOT contain the
836// specified substring or element.
837//
838// a.NotContainsf("Hello World", "Earth", "error message %s", "formatted")
839// a.NotContainsf(["Hello", "World"], "Earth", "error message %s", "formatted")
840// a.NotContainsf({"Hello": "World"}, "Earth", "error message %s", "formatted")
841func (a *Assertions) NotContainsf(s interface{}, contains interface{}, msg string, args ...interface{}) bool {
842 if h, ok := a.t.(tHelper); ok {
843 h.Helper()
844 }
845 return NotContainsf(a.t, s, contains, msg, args...)
846}
847
848// NotEmpty asserts that the specified object is NOT empty. I.e. not nil, "", false, 0 or either
849// a slice or a channel with len == 0.
850//
851// if a.NotEmpty(obj) {
852// assert.Equal(t, "two", obj[1])
853// }
854func (a *Assertions) NotEmpty(object interface{}, msgAndArgs ...interface{}) bool {
855 if h, ok := a.t.(tHelper); ok {
856 h.Helper()
857 }
858 return NotEmpty(a.t, object, msgAndArgs...)
859}
860
861// NotEmptyf asserts that the specified object is NOT empty. I.e. not nil, "", false, 0 or either
862// a slice or a channel with len == 0.
863//
864// if a.NotEmptyf(obj, "error message %s", "formatted") {
865// assert.Equal(t, "two", obj[1])
866// }
867func (a *Assertions) NotEmptyf(object interface{}, msg string, args ...interface{}) bool {
868 if h, ok := a.t.(tHelper); ok {
869 h.Helper()
870 }
871 return NotEmptyf(a.t, object, msg, args...)
872}
873
874// NotEqual asserts that the specified values are NOT equal.
875//
876// a.NotEqual(obj1, obj2)
877//
878// Pointer variable equality is determined based on the equality of the
879// referenced values (as opposed to the memory addresses).
880func (a *Assertions) NotEqual(expected interface{}, actual interface{}, msgAndArgs ...interface{}) bool {
881 if h, ok := a.t.(tHelper); ok {
882 h.Helper()
883 }
884 return NotEqual(a.t, expected, actual, msgAndArgs...)
885}
886
887// NotEqualf asserts that the specified values are NOT equal.
888//
889// a.NotEqualf(obj1, obj2, "error message %s", "formatted")
890//
891// Pointer variable equality is determined based on the equality of the
892// referenced values (as opposed to the memory addresses).
893func (a *Assertions) NotEqualf(expected interface{}, actual interface{}, msg string, args ...interface{}) bool {
894 if h, ok := a.t.(tHelper); ok {
895 h.Helper()
896 }
897 return NotEqualf(a.t, expected, actual, msg, args...)
898}
899
900// NotNil asserts that the specified object is not nil.
901//
902// a.NotNil(err)
903func (a *Assertions) NotNil(object interface{}, msgAndArgs ...interface{}) bool {
904 if h, ok := a.t.(tHelper); ok {
905 h.Helper()
906 }
907 return NotNil(a.t, object, msgAndArgs...)
908}
909
910// NotNilf asserts that the specified object is not nil.
911//
912// a.NotNilf(err, "error message %s", "formatted")
913func (a *Assertions) NotNilf(object interface{}, msg string, args ...interface{}) bool {
914 if h, ok := a.t.(tHelper); ok {
915 h.Helper()
916 }
917 return NotNilf(a.t, object, msg, args...)
918}
919
920// NotPanics asserts that the code inside the specified PanicTestFunc does NOT panic.
921//
922// a.NotPanics(func(){ RemainCalm() })
923func (a *Assertions) NotPanics(f PanicTestFunc, msgAndArgs ...interface{}) bool {
924 if h, ok := a.t.(tHelper); ok {
925 h.Helper()
926 }
927 return NotPanics(a.t, f, msgAndArgs...)
928}
929
930// NotPanicsf asserts that the code inside the specified PanicTestFunc does NOT panic.
931//
932// a.NotPanicsf(func(){ RemainCalm() }, "error message %s", "formatted")
933func (a *Assertions) NotPanicsf(f PanicTestFunc, msg string, args ...interface{}) bool {
934 if h, ok := a.t.(tHelper); ok {
935 h.Helper()
936 }
937 return NotPanicsf(a.t, f, msg, args...)
938}
939
940// NotRegexp asserts that a specified regexp does not match a string.
941//
942// a.NotRegexp(regexp.MustCompile("starts"), "it's starting")
943// a.NotRegexp("^start", "it's not starting")
944func (a *Assertions) NotRegexp(rx interface{}, str interface{}, msgAndArgs ...interface{}) bool {
945 if h, ok := a.t.(tHelper); ok {
946 h.Helper()
947 }
948 return NotRegexp(a.t, rx, str, msgAndArgs...)
949}
950
951// NotRegexpf asserts that a specified regexp does not match a string.
952//
953// a.NotRegexpf(regexp.MustCompile("starts", "error message %s", "formatted"), "it's starting")
954// a.NotRegexpf("^start", "it's not starting", "error message %s", "formatted")
955func (a *Assertions) NotRegexpf(rx interface{}, str interface{}, msg string, args ...interface{}) bool {
956 if h, ok := a.t.(tHelper); ok {
957 h.Helper()
958 }
959 return NotRegexpf(a.t, rx, str, msg, args...)
960}
961
Matteo Scandolof9d43412021-01-12 11:11:34 -0800962// NotSame asserts that two pointers do not reference the same object.
963//
964// a.NotSame(ptr1, ptr2)
965//
966// Both arguments must be pointer variables. Pointer variable sameness is
967// determined based on the equality of both type and value.
968func (a *Assertions) NotSame(expected interface{}, actual interface{}, msgAndArgs ...interface{}) bool {
969 if h, ok := a.t.(tHelper); ok {
970 h.Helper()
971 }
972 return NotSame(a.t, expected, actual, msgAndArgs...)
973}
974
975// NotSamef asserts that two pointers do not reference the same object.
976//
977// a.NotSamef(ptr1, ptr2, "error message %s", "formatted")
978//
979// Both arguments must be pointer variables. Pointer variable sameness is
980// determined based on the equality of both type and value.
981func (a *Assertions) NotSamef(expected interface{}, actual interface{}, msg string, args ...interface{}) bool {
982 if h, ok := a.t.(tHelper); ok {
983 h.Helper()
984 }
985 return NotSamef(a.t, expected, actual, msg, args...)
986}
987
Matteo Scandolo75ed5b92020-09-03 09:03:16 -0700988// NotSubset asserts that the specified list(array, slice...) contains not all
989// elements given in the specified subset(array, slice...).
990//
991// a.NotSubset([1, 3, 4], [1, 2], "But [1, 3, 4] does not contain [1, 2]")
992func (a *Assertions) NotSubset(list interface{}, subset interface{}, msgAndArgs ...interface{}) bool {
993 if h, ok := a.t.(tHelper); ok {
994 h.Helper()
995 }
996 return NotSubset(a.t, list, subset, msgAndArgs...)
997}
998
999// NotSubsetf asserts that the specified list(array, slice...) contains not all
1000// elements given in the specified subset(array, slice...).
1001//
1002// a.NotSubsetf([1, 3, 4], [1, 2], "But [1, 3, 4] does not contain [1, 2]", "error message %s", "formatted")
1003func (a *Assertions) NotSubsetf(list interface{}, subset interface{}, msg string, args ...interface{}) bool {
1004 if h, ok := a.t.(tHelper); ok {
1005 h.Helper()
1006 }
1007 return NotSubsetf(a.t, list, subset, msg, args...)
1008}
1009
1010// NotZero asserts that i is not the zero value for its type.
1011func (a *Assertions) NotZero(i interface{}, msgAndArgs ...interface{}) bool {
1012 if h, ok := a.t.(tHelper); ok {
1013 h.Helper()
1014 }
1015 return NotZero(a.t, i, msgAndArgs...)
1016}
1017
1018// NotZerof asserts that i is not the zero value for its type.
1019func (a *Assertions) NotZerof(i interface{}, msg string, args ...interface{}) bool {
1020 if h, ok := a.t.(tHelper); ok {
1021 h.Helper()
1022 }
1023 return NotZerof(a.t, i, msg, args...)
1024}
1025
1026// Panics asserts that the code inside the specified PanicTestFunc panics.
1027//
1028// a.Panics(func(){ GoCrazy() })
1029func (a *Assertions) Panics(f PanicTestFunc, msgAndArgs ...interface{}) bool {
1030 if h, ok := a.t.(tHelper); ok {
1031 h.Helper()
1032 }
1033 return Panics(a.t, f, msgAndArgs...)
1034}
1035
Matteo Scandolof9d43412021-01-12 11:11:34 -08001036// PanicsWithError asserts that the code inside the specified PanicTestFunc
1037// panics, and that the recovered panic value is an error that satisfies the
1038// EqualError comparison.
1039//
1040// a.PanicsWithError("crazy error", func(){ GoCrazy() })
1041func (a *Assertions) PanicsWithError(errString string, f PanicTestFunc, msgAndArgs ...interface{}) bool {
1042 if h, ok := a.t.(tHelper); ok {
1043 h.Helper()
1044 }
1045 return PanicsWithError(a.t, errString, f, msgAndArgs...)
1046}
1047
1048// PanicsWithErrorf asserts that the code inside the specified PanicTestFunc
1049// panics, and that the recovered panic value is an error that satisfies the
1050// EqualError comparison.
1051//
1052// a.PanicsWithErrorf("crazy error", func(){ GoCrazy() }, "error message %s", "formatted")
1053func (a *Assertions) PanicsWithErrorf(errString string, f PanicTestFunc, msg string, args ...interface{}) bool {
1054 if h, ok := a.t.(tHelper); ok {
1055 h.Helper()
1056 }
1057 return PanicsWithErrorf(a.t, errString, f, msg, args...)
1058}
1059
Matteo Scandolo75ed5b92020-09-03 09:03:16 -07001060// PanicsWithValue asserts that the code inside the specified PanicTestFunc panics, and that
1061// the recovered panic value equals the expected panic value.
1062//
1063// a.PanicsWithValue("crazy error", func(){ GoCrazy() })
1064func (a *Assertions) PanicsWithValue(expected interface{}, f PanicTestFunc, msgAndArgs ...interface{}) bool {
1065 if h, ok := a.t.(tHelper); ok {
1066 h.Helper()
1067 }
1068 return PanicsWithValue(a.t, expected, f, msgAndArgs...)
1069}
1070
1071// PanicsWithValuef asserts that the code inside the specified PanicTestFunc panics, and that
1072// the recovered panic value equals the expected panic value.
1073//
1074// a.PanicsWithValuef("crazy error", func(){ GoCrazy() }, "error message %s", "formatted")
1075func (a *Assertions) PanicsWithValuef(expected interface{}, f PanicTestFunc, msg string, args ...interface{}) bool {
1076 if h, ok := a.t.(tHelper); ok {
1077 h.Helper()
1078 }
1079 return PanicsWithValuef(a.t, expected, f, msg, args...)
1080}
1081
1082// Panicsf asserts that the code inside the specified PanicTestFunc panics.
1083//
1084// a.Panicsf(func(){ GoCrazy() }, "error message %s", "formatted")
1085func (a *Assertions) Panicsf(f PanicTestFunc, msg string, args ...interface{}) bool {
1086 if h, ok := a.t.(tHelper); ok {
1087 h.Helper()
1088 }
1089 return Panicsf(a.t, f, msg, args...)
1090}
1091
1092// Regexp asserts that a specified regexp matches a string.
1093//
1094// a.Regexp(regexp.MustCompile("start"), "it's starting")
1095// a.Regexp("start...$", "it's not starting")
1096func (a *Assertions) Regexp(rx interface{}, str interface{}, msgAndArgs ...interface{}) bool {
1097 if h, ok := a.t.(tHelper); ok {
1098 h.Helper()
1099 }
1100 return Regexp(a.t, rx, str, msgAndArgs...)
1101}
1102
1103// Regexpf asserts that a specified regexp matches a string.
1104//
1105// a.Regexpf(regexp.MustCompile("start", "error message %s", "formatted"), "it's starting")
1106// a.Regexpf("start...$", "it's not starting", "error message %s", "formatted")
1107func (a *Assertions) Regexpf(rx interface{}, str interface{}, msg string, args ...interface{}) bool {
1108 if h, ok := a.t.(tHelper); ok {
1109 h.Helper()
1110 }
1111 return Regexpf(a.t, rx, str, msg, args...)
1112}
1113
1114// Same asserts that two pointers reference the same object.
1115//
1116// a.Same(ptr1, ptr2)
1117//
1118// Both arguments must be pointer variables. Pointer variable sameness is
1119// determined based on the equality of both type and value.
1120func (a *Assertions) Same(expected interface{}, actual interface{}, msgAndArgs ...interface{}) bool {
1121 if h, ok := a.t.(tHelper); ok {
1122 h.Helper()
1123 }
1124 return Same(a.t, expected, actual, msgAndArgs...)
1125}
1126
1127// Samef asserts that two pointers reference the same object.
1128//
1129// a.Samef(ptr1, ptr2, "error message %s", "formatted")
1130//
1131// Both arguments must be pointer variables. Pointer variable sameness is
1132// determined based on the equality of both type and value.
1133func (a *Assertions) Samef(expected interface{}, actual interface{}, msg string, args ...interface{}) bool {
1134 if h, ok := a.t.(tHelper); ok {
1135 h.Helper()
1136 }
1137 return Samef(a.t, expected, actual, msg, args...)
1138}
1139
1140// Subset asserts that the specified list(array, slice...) contains all
1141// elements given in the specified subset(array, slice...).
1142//
1143// a.Subset([1, 2, 3], [1, 2], "But [1, 2, 3] does contain [1, 2]")
1144func (a *Assertions) Subset(list interface{}, subset interface{}, msgAndArgs ...interface{}) bool {
1145 if h, ok := a.t.(tHelper); ok {
1146 h.Helper()
1147 }
1148 return Subset(a.t, list, subset, msgAndArgs...)
1149}
1150
1151// Subsetf asserts that the specified list(array, slice...) contains all
1152// elements given in the specified subset(array, slice...).
1153//
1154// a.Subsetf([1, 2, 3], [1, 2], "But [1, 2, 3] does contain [1, 2]", "error message %s", "formatted")
1155func (a *Assertions) Subsetf(list interface{}, subset interface{}, msg string, args ...interface{}) bool {
1156 if h, ok := a.t.(tHelper); ok {
1157 h.Helper()
1158 }
1159 return Subsetf(a.t, list, subset, msg, args...)
1160}
1161
1162// True asserts that the specified value is true.
1163//
1164// a.True(myBool)
1165func (a *Assertions) True(value bool, msgAndArgs ...interface{}) bool {
1166 if h, ok := a.t.(tHelper); ok {
1167 h.Helper()
1168 }
1169 return True(a.t, value, msgAndArgs...)
1170}
1171
1172// Truef asserts that the specified value is true.
1173//
1174// a.Truef(myBool, "error message %s", "formatted")
1175func (a *Assertions) Truef(value bool, msg string, args ...interface{}) bool {
1176 if h, ok := a.t.(tHelper); ok {
1177 h.Helper()
1178 }
1179 return Truef(a.t, value, msg, args...)
1180}
1181
1182// WithinDuration asserts that the two times are within duration delta of each other.
1183//
1184// a.WithinDuration(time.Now(), time.Now(), 10*time.Second)
1185func (a *Assertions) WithinDuration(expected time.Time, actual time.Time, delta time.Duration, msgAndArgs ...interface{}) bool {
1186 if h, ok := a.t.(tHelper); ok {
1187 h.Helper()
1188 }
1189 return WithinDuration(a.t, expected, actual, delta, msgAndArgs...)
1190}
1191
1192// WithinDurationf asserts that the two times are within duration delta of each other.
1193//
1194// a.WithinDurationf(time.Now(), time.Now(), 10*time.Second, "error message %s", "formatted")
1195func (a *Assertions) WithinDurationf(expected time.Time, actual time.Time, delta time.Duration, msg string, args ...interface{}) bool {
1196 if h, ok := a.t.(tHelper); ok {
1197 h.Helper()
1198 }
1199 return WithinDurationf(a.t, expected, actual, delta, msg, args...)
1200}
1201
Matteo Scandolof9d43412021-01-12 11:11:34 -08001202// YAMLEq asserts that two YAML strings are equivalent.
1203func (a *Assertions) YAMLEq(expected string, actual string, msgAndArgs ...interface{}) bool {
1204 if h, ok := a.t.(tHelper); ok {
1205 h.Helper()
1206 }
1207 return YAMLEq(a.t, expected, actual, msgAndArgs...)
1208}
1209
1210// YAMLEqf asserts that two YAML strings are equivalent.
1211func (a *Assertions) YAMLEqf(expected string, actual string, msg string, args ...interface{}) bool {
1212 if h, ok := a.t.(tHelper); ok {
1213 h.Helper()
1214 }
1215 return YAMLEqf(a.t, expected, actual, msg, args...)
1216}
1217
Matteo Scandolo75ed5b92020-09-03 09:03:16 -07001218// Zero asserts that i is the zero value for its type.
1219func (a *Assertions) Zero(i interface{}, msgAndArgs ...interface{}) bool {
1220 if h, ok := a.t.(tHelper); ok {
1221 h.Helper()
1222 }
1223 return Zero(a.t, i, msgAndArgs...)
1224}
1225
1226// Zerof asserts that i is the zero value for its type.
1227func (a *Assertions) Zerof(i interface{}, msg string, args ...interface{}) bool {
1228 if h, ok := a.t.(tHelper); ok {
1229 h.Helper()
1230 }
1231 return Zerof(a.t, i, msg, args...)
1232}