304 Commits

Author SHA1 Message Date
Johnny Graettinger
ed275850b6 Add custom mock argument matching
Add an argumentMatcher type and MatchedBy() helper to the mock
package, enabling custom fine-grained argument matching behaviors.

This is particularly helpful when building mocks over complex argument
types where deep equality is cumbersome or can't be used. Ex, a matcher
might match over just the the URL of an argument *http.Request.
2015-11-09 18:11:46 -05:00
Ernesto Jiménez
f3960ab1f9 Merge pull request #223 from allgeek/master
fix race conditions related to mutation of expectedCall.Repeatability
2015-10-08 01:55:03 +01:00
Levi Corcoran
3c35d25e9b fix race conditions related to mutation of expectedCall.Repeatability 2015-10-07 16:34:11 -05:00
Ernesto Jiménez
2b15294402 Merge pull request #221 from brahmaroutu/gccgo_functionname_issue
Due to function name format differences, code fails with GCCGO
2015-09-29 19:35:40 +01:00
Srini Brahmaroutu
0df687d7a9 Due to function name format differences, code fails with GCCGO
Signed-off-by: Srini Brahmaroutu <srbrahma@us.ibm.com>
2015-09-29 17:07:45 +00:00
Davide D'Agostino
a979bdb3ad Merge pull request #222 from ernesto-jimenez/update-travis
Add Go 1.4 and 1.5 to .travis.yml
2015-09-28 20:17:15 -07:00
Ernesto Jiménez
b1b3c1e4c0 Add Go 1.4 and 1.5 to .travis.yml 2015-09-29 01:58:17 +01:00
Ernesto Jiménez
bcd32dcc8b Merge pull request #220 from bmatsuo/fix-notnil-for-typed-nil-values
Fix NotNil assertion for typed nil values
2015-09-24 18:06:42 +01:00
Bryan Matsuo
ee60e76e54 Test Nil assertion behavior for typed nil values 2015-09-24 10:02:27 -07:00
Bryan Matsuo
fb64a0ab08 Fix NotNil assertion for typed nil values
The NotNil assertion had an error in its handling of typed nil values.
This change makes use of the helper function isNil (used by the Nil
assertion).  The helper function has correct handling of typed nil
values and when negated provides the expected semantics for
`assert.NotNil(t, x)`.

    if x == nil {
        assert.Fail(t, "is nil", x)
    }
2015-09-23 23:48:02 -07:00
Ernesto Jiménez
b8dc1cecf1 Merge pull request #208 from tcsc/master
Allows mock call expectations to be defined in arbitrary order
2015-09-14 10:32:55 +01:00
Ernesto Jiménez
7c2b1e5640 Merge pull request #210 from jcamenisch/master
Fix param order in ObjectsAreEqualValues after type conversion
2015-08-29 00:48:46 +01:00
Jonathan Camenisch
5d8c1da624 Fix param order in ObjectsAreEqualValues after type conversion 2015-08-27 23:37:31 -04:00
Ernesto Jiménez
64623bb832 Merge pull request #209 from danielchatfield/danielchatfield-patch-1
Fix order of params in Equal
2015-08-27 18:22:05 +01:00
Daniel Chatfield
69ff3e840b Fix order of params in Equal 2015-08-27 16:56:39 +01:00
Trent Clarke
49804a382a Allows mock call expectations to be defined in arbitrary order
Originally the expctations required that the return values be specified
immediately after the method name and arguments, otherwise the call
setup will either panic (best case) or silently modify the *previous*
call specification (worst case).

This change moves the Return(), Run(), Once(), etc methods onto the Call
struct, and changes the chaining behaviour so that they modify the Call
data directly rather than referencing the last item in the ExpectedCalls
array.
2015-08-27 22:19:12 +10:00
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
Ernesto Jiménez
3a42060e3c Merge pull request #189 from docbobo/wrong_argument_order
AssertNumberOfCalls: wrong order of arguments
2015-08-26 19:34:56 +01:00
Davide D'Agostino
68c12689a5 Merge pull request #196 from phemmer/remove-overview
remove overview sections from documentation
2015-08-26 11:20:00 -07:00
Davide D'Agostino
91dbff64c7 Merge pull request #197 from ifraixedes/patch-1
Update README.md
2015-08-26 11:19:16 -07:00
Mat Ryer
6f1da3e279 Merge pull request #206 from sivagollapalli/issue_140
Display actual and expected values on NotEqual
2015-08-26 15:14:49 +01: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
Davide D'Agostino
efea42fa21 Merge pull request #205 from sivagollapalli/issue_185
FIX# EqualError error output swaps the actual and expected values
2015-08-25 14:35:07 -07:00
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
Mat Ryer
f552045560 Merge pull request #200 from wallclockbuilder/patch-1
Fix tiny typo
2015-08-12 09:24:24 -07:00
Mawueli Kofi Adzoe
9c13092f45 Fix tiny typo 2015-08-12 11:24:55 +00:00
Davide D'Agostino
6fe8314ce5 Merge pull request #199 from glittershark/method-not-mode
Use "method" rather than "mode" for http tests
2015-08-06 15:29:12 -07:00
Griffin Smith
81bd467d7c Use "method" rather than "mode" for http tests
Use `method` (this is what http.NewRequest and the HTTP standard in
general calls this) rather than `mode` for `"GET"`, `"POST"`, etc.
2015-08-06 17:14:15 -04:00
Ivan Fraixedes
2161431195 Update README.md
Added link to the api documentation for `require`
2015-07-28 12:31:24 +01:00
Patrick Hemmer
74bbd89240 remove overview sections from documentation 2015-07-22 15:56:30 -04:00
davelondon
6b09f60392 Update assertions.go
Fixed incorrect order of parameters to Equal
2015-07-05 10:37:27 -04:00
Boris Pruessmann
84e2423404 AssertNumberOfCalls: wrong order of arguments
The assert.Equal called had the actual and expected values mixed up.
2015-07-03 13:30:03 +02:00
Davide D'Agostino
089c7181b8 Merge pull request #186 from MCProHosting/master
Adjust NotNil error message
2015-06-20 16:27:11 -07:00
Connor Peet
6756bdecf4 Adjust NotNil error message 2015-06-21 07:39:50 +10:00
Ernesto Jiménez
ddcad49ec6 Fix typo in test function name 2015-06-15 21:31:24 +01:00
Ernesto Jiménez
abc938a12b Add test to avoid regression of issue #180 2015-06-14 19:29:18 +01:00
Andrew Burns
c769e40e8b Handle <autogenerated> files in CallerInfo()
Fixes #180
2015-06-11 14:33:49 -06:00
Ernesto Jiménez
7e4a149930 Merge pull request #177 from s-urbaniak/race
Fix data races
2015-06-05 22:45:35 +01:00
Ernesto Jiménez
6b7dca6fb8 Merge pull request #176 from paulbellamy/stacktraces
Add a basic stacktrace to the assertion output
2015-06-05 21:37:10 +01:00
Sergiusz Urbaniak
b11fb16915 mock: fix races to m.Calls/m.ExpectedCalls
Fixes races inside the mock package caused by
unsychronized reads/writes of m.Calls/m.ExpectedCalls.
2015-06-05 16:24:27 +02: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
Ernesto Jiménez
3c81d9b268 Merge pull request #175 from stretchr/variadic
Mocking variadic functions
2015-06-02 23:16:36 +01:00
Ernesto Jiménez
4464dda05e Add extra tests mocking variadic functions 2015-06-02 20:23:13 +01:00
Ernesto Jiménez
d6265bda1a Add test mocking variadic function 2015-06-02 19:59:43 +01:00