Commit Graph

77 Commits (acfa84d4543a981cf308682732f84872d4296ac5)

Author SHA1 Message Date
Ernesto Jiménez acfa84d454 Merge pull request #190 from davelondon/patch-1
Update assertions.go
2015-08-26 19:36:54 +01:00
Davide D'Agostino 9de108a472 Merge pull request #203 from willfaught/master
Add Zero and NotZero assertions and requirements
2015-08-26 11:35:18 -07:00
Siva Gollapalli b60ec447d6 Modified the error message for NotEqual 2015-08-26 19:40:56 +05:30
Siva Gollapalli 80b247df3c Display actual and expected values on NotEqual 2015-08-26 19:31:23 +05:30
Siva Gollapalli 05776ad541 EqualError error output swaps the actual and expected values 2015-08-25 20:49:33 +05:30
Will Faught 8512261d41 Add Zero and NotZero assertions and requirements
Zero returns true if the value equals the value's type's zero value.

NotZero returns the opposite of Zero.
2015-08-24 15:53:36 -07:00
davelondon 6b09f60392 Update assertions.go
Fixed incorrect order of parameters to Equal
2015-07-05 10:37:27 -04:00
Connor Peet 6756bdecf4 Adjust NotNil error message 2015-06-21 07:39:50 +10:00
Andrew Burns c769e40e8b Handle `<autogenerated>` files in `CallerInfo()`
Fixes #180
2015-06-11 14:33:49 -06:00
Paul Bellamy c0b6c3bbd7 Rename Location to Error Trace in failure output 2015-06-05 14:01:19 +01:00
Paul Bellamy 0fd7b57c23 rename assert.locationInfo -> assert.errorTrace 2015-06-05 10:14:07 +01:00
Paul Bellamy 925c3ad43b Reverse the stacktrace on assertion output (to match panic) 2015-06-05 10:13:41 +01:00
Paul Bellamy a7a0af787a Add a basic stacktrace to the assertion output 2015-06-04 14:00:35 +01:00
Michael R. Maletich 4e2053a4af Address #162: InDelta should fail when actual value is not a number.
Comparting a float with NaN is always false so the assertion would always pass.
Added a check that either the actual or expected values are NaN.

InDelta will now fail if either the actual or expected value are NaN.
2015-05-12 11:54:42 +00:00
Mat Ryer e22aedd376 Tweaks and improvements - Fixes #154 2015-04-20 11:19:11 +01:00
Chih-Wei Chang 8b75665fbf Add InEpsilonSlice and corresponding testing. 2015-04-18 22:40:21 +08:00
Chih-Wei Chang f0b02af48e Add InDeltaSlice. 2015-02-18 10:38:24 +08:00
Paul Querna e73f5c7e39 Add assert.EqualValues, which attempts to convert types to test equality. Fixes #129 2015-02-10 16:56:43 -08:00
Arnaud Porterie 9bab92ede2 Exclude conversions from equality tests
`ObjectsAreEqual` using `ConvertibleTo` causes the `ObjectsAreEqual`
function to be asymmetrical and producing incorrect assertions.

Signed-off-by: Arnaud Porterie <arnaud.porterie@docker.com>
2015-02-06 16:08:28 -08:00
Samuel Nelson ff9ded0d23 Fixed regexp messages. Resolves #120. 2015-01-19 12:45:07 -07:00
Tyler e897f97d66 Merge pull request #93 from dlclark/master
Fixed regexp error messages to include input values to aide debugging
2015-01-13 10:39:58 -07:00
Samuel Nelson 02a8ab057b Reverse ConvertibleTo check to avoid panic
in `ObjectsAreEqual`, `expectedValue.Convert(actualType)` was being called when
`actualType.ConvertibleTo(reflect.TypeOf(expected))` was true.  This was a problem
for situations such as when expected was an int and actual was a string, since
ints are `ConvertibleTo` strings, but the reverse is not true.

Changing the ConvertibleTo check to `expectedValue.Type().ConvertibleTo(actualType)`
solves the issue.
2015-01-10 12:18:57 -07:00
Neil Conway 38aecdc957 Fix panic when comparing unequal maps.
The change in #94 resulted in using == to compare two values that might not be
comparable. Hence, this resulted in a panic for situations like:

    ObjectsAreEqual(map[int]int{5: 10}, map[int]int{10: 20})

The fix is to use reflect.DeepEqual() instead.
2014-11-24 16:11:51 -08:00
Mat Ryer faedd6eb63 Merge pull request #94 from neilconway/object-equality-golang-1.4
Avoid relying on undefined behavior in assert.ObjectsAreEqual().
2014-11-24 12:06:32 -08:00
Victor Kryukov d3556349dd Fix #99: Contains doesn't work for complex types 2014-11-18 15:26:31 -08:00
Neil Conway 49c5c6cdb1 Avoid relying on undefined behavior in assert.ObjectsAreEqual().
The previous assert.ObjectsAreEqual() implementation is broken in go 1.4beta1:

   x := uint64(3)
   log.Printf("equal? %t", assert.ObjectsAreEqual(3, x))

This prints "true" under Go 1.3 and "false" under 1.4beta1 (amd64/darwin).

The reason is that the ObjectsAreEqual() was comparing two reflect.Value values
for equality using ==, but the behavior of that operation is apparently
undefined (https://code.google.com/p/go/issues/detail?id=9034). The fix is to do
the type conversion and then do the comparison between two interface{} values.
2014-10-31 16:02:32 -07:00
Douglas Clark 25dfa29b38 Fixed regexp error messages to include input values to aide debugging 2014-10-21 20:37:01 -07:00
Victor Kryukov b64f0d0b59 Implement Regexp and NotRegexp 2014-09-13 13:13:42 -06:00
Tyler 15dabc1a45 Merge pull request #73 from comogo/includes
Allow Contains and NotContains to check slices and arrays
2014-09-09 20:31:58 -06:00
Josiah Kiehl (formerly @bluepojo) 27b1e9d9f2 Fix grammer on assert.Len()
🐹
2014-09-04 15:55:45 -07:00
Mateus Lorandi dos Santos ab1fdba54e Allow Contains and NotContains to check slices and arrays 2014-08-21 11:13:02 -03:00
Oliver Beattie 3c808d3dab Print the expected and actual items of an Equal call on separate lines
Makes for much easier comparison visually
2014-08-17 17:57:22 +01:00
Tyler ae3032ce42 Merge pull request #69 from ascheglov/feature-fatal_checks
Add fatal assertions
2014-07-28 14:04:10 -06:00
OMOTO Kenji e787d6aa9d Add Len() 2014-07-17 18:39:50 +09:00
Anatoly Scheglov f6376e8a31 add the 'require' package 2014-07-16 17:30:01 +04:00
bhenderson 256f07baef Refactor InEpsilon() to use InDelta(). 2014-07-10 09:12:30 -07:00
bhenderson 60a27ebea6 Add InEpsilon(). 2014-07-10 08:58:49 -07:00
bhenderson 3b602c6e81 Add InDelta() for comparing floats. 2014-07-10 08:49:17 -07:00
Tyler Bunnell 5cc789b89e Clean up golint warnings 2014-06-18 09:28:16 -06:00
Tyler Bunnell 37ec10ac14 Make empty tests pass
Fix #58
2014-06-18 09:21:09 -06:00
James Bowes 21382c1202 Attempt type conversion in assert.Equal
If the two values being tested are of compatible types, convert one
value to the other's type before comparing them. This allows
`assert.Equal(int64(123), uint64(123))` to pass.
2014-06-03 19:01:48 -03:00
Mat Ryer 8eaef7fd24 Merge pull request #49 from seantalts/noerrormsg
Change NoError formatting. fixes #48
2014-04-25 08:23:39 -06:00
Tyler Bunnell d3d427864d Fix merge conflict 2014-04-22 10:01:40 -06:00
mreedell 2c7459d4ba Fixing issue 33 2014-04-14 15:24:44 -04:00
Sean Talts c469b75615 Change NoError formatting. 2014-04-04 11:36:55 -04:00
Guncha 5114cbfc4a Fix #45: assert.Empty should work with channels 2014-03-31 19:10:48 -04:00
Mat Ryer 24fb97e3a8 Merge pull request #39 from xsleonard/exacterror
ExactError, asserts that err is not nil and its string matches
2014-03-07 11:27:35 -07:00
Victor Blomqvist 12fea7c16c Rename the error argument from theError to err in Error asserts. 2014-03-07 17:19:03 +08:00
Steve Leonard e763434382 rename to EqualError 2014-02-15 15:06:23 -05:00
Steve Leonard 92af479c56 ExactError, asserts that err is not nil and its string matches 2014-02-15 12:24:39 -05:00