485 Commits

Author SHA1 Message Date
Vincent Cote-Roy
88a414d072 generalize Empty assertion
Make `Empty` work against any struct and custom types, by replacing
explicit zero value comparisons with a `DeepEqual` comparison with
the type's `reflect.ZeroValue`.
2017-12-30 13:03:09 +01:00
Dan Heller
2aa2c176b9 Fix unprotected call fields access in MethodCalled()
This change fixes a race condition I discovered when a multithreaded
test in a service I work on failed under -race. The included test case
simulates that failure (concurrent mutation of a Call with invocations
on the mock). The test will fail with a data race if run under the
race detector; the new locking ensures that call fields are not
accessed without the protection of the parent mutex.
2017-10-17 22:22:57 -07:00
Dragos Harabor
890a5c3458 Issue #469 fix
reflect.Value.Len() can cover more types, per godoc:
> Len returns v's length. It panics if v's Kind is not Array, Chan, Map, Slice, or String.
2017-08-09 15:42:52 -07:00
Joshua T Corbin
05e8a0eda3 Fix the actuality of InEpsilon 2017-07-14 14:53:25 -07:00
Joshua T Corbin
2f1cd6b778 time.Duraions are numbers too 2017-07-14 14:27:08 -07:00
Joshua T Corbin
b1f989447a Fix InDelta expected nan check message 2017-07-14 11:20:46 -07:00
Joshua T Corbin
4b92304da8 Fix actual float conversion error message under calcRelativeError 2017-07-14 11:13:59 -07:00
Tom Artale
f6abca5936 Added assert.PanicsWithValue + tests 2017-06-01 22:03:22 +01:00
Yimin Chen
e964b172ca add MethodCalled to the mock
remove IsCallExpected method

add comment
2017-05-30 21:11:52 +01:00
Adam Medzinski
46b3c8225b Simple validation of Equal/NotEqual assertion arguments 2017-05-29 17:57:31 +01:00
Ernesto Jiménez
cc189738c0 Fix gogenerate travis check 2017-05-29 15:04:59 +01:00
Ernesto Jiménez
e179a18f6c Travis check go generate has been run 2017-05-29 13:40:41 +01:00
Ernesto Jiménez
345898142b Run go vet in travis 2017-05-29 13:40:41 +01:00
Ernesto Jiménez
c7668ea997 Fixes #339 - Add assertionf assertions like Errorf and Equalf 2017-05-29 12:56:43 +01:00
Ernesto Jiménez
c33f336b92 Fix vet warnings and go generate to update docs 2017-05-29 12:56:43 +01:00
Ben Blount
3104bf5483 Use Go 1.7 subtests so suites can properly nest
This removes dependencies on Go Testing Internals and
also enables test methods within a suite to have subtests.

Fixes #346
2017-05-29 12:27:49 +01:00
Ernesto Jiménez
b8c9b4ef3d Merge pull request #447 from stretchr/issue-442
Fix race condition on mock package's Called
2017-05-28 14:51:04 +01:00
Ernesto Jiménez
bd79c01e74 Fix race condition on mock package's Called
Closes #442
2017-05-28 14:43:48 +01:00
Ernesto Jiménez
253219d8d4 Merge pull request #396 from medzin/issue-379
HTTP code status assertions now fail tests
2017-05-28 13:28:02 +01:00
Ernesto Jiménez
edd8e19ece Run go generate to syn generated assertions 2017-05-28 12:30:45 +01:00
Ernesto Jiménez
aa10ab5551 Merge pull request #382 from GlenDC/feat-test-subset
add Subset and NotSubset assertions
2017-05-28 12:29:49 +01:00
Adam Medziński
78be756ee7 Fixed HTTP assertions messages formatting and removed wrong test message 2017-05-28 13:23:04 +02:00
decauwsemaecker.glen@gmail.com
3a59a58abc
add Subset and NotSubset assertions 2017-05-27 17:24:18 -05:00
Ernesto Jiménez
e68c5c5208 Merge pull request #446 from stretchr/gofmt-in-travis
Check code is formatted in travis
2017-05-27 20:19:13 +01:00
Ernesto Jiménez
dd57c7b68a Check code is formatted in travis 2017-05-27 19:12:18 +01:00
Ernesto Jiménez
eb84487cae Merge pull request #441 from stretchr/revert-commits
Revert PRs with
2017-05-26 07:56:33 +01:00
Ernesto Jiménez
f712be9266 Revert "add mock.MethodCalled(methodName, args...)"
This reverts commit 17a0bd50e9ddb9f2dbff569e5c01a27e9171be96.

Should avoid simply exporting an internal method.
2017-05-26 07:47:23 +01:00
Ernesto Jiménez
34687ebd28 Revert "diffArguments: remove unnecessary range-for (#417)"
This reverts commit 5c861cc4a41d0c534deebc34de0fa1ffd15429bf.

Bug was already fixed in another merge.
2017-05-26 07:46:34 +01:00
Ernesto Jiménez
2b76a9702e Revert "Added goconvey style assertions to the mock package"
This reverts commit faf0710ff28e0389cd8f4761de3fbf4b7cd1057d.
2017-05-26 07:46:02 +01:00
Terin Stock
b6296e3859 fix(docs): correct Error usage examples
Correct the usage of `assert.Equal` in the Error and NoError usage
examples, which had reversed the expected and actual arguments.
2017-05-25 17:42:54 -07:00
Tedde Lundgren
d2f3716b44 Add msgAndArgs pass forward to InDelta from InDeltaSlice 2017-05-25 17:40:33 -07:00
Peter Ebden
158f9d0389 Check that there is a directory before trying to access it. 2017-05-25 17:40:15 -07:00
Richard Knop
18cfa6871f Added extra unit test for function with mixed variadic arguments. 2017-05-25 17:38:37 -07:00
Simon Mulser
b1f1bcb83a fix typo 2017-05-25 17:32:03 -07:00
Cameron Moore
09f61d78b8 assert: fix error reporting when error contains escape sequences
Fixes #325
2017-05-25 17:28:59 -07:00
Joseph Anthony Pasquale Holsten
5c861cc4a4 diffArguments: remove unnecessary range-for (#417)
When `len(actual) > len(expected)`, this for loop would cause a panic.

Alternative to this implementation, there could be a check for
`if len(actual) != len(expected)`, but generating a meaningful message
describing that is already provided by `diff()`. So we defer to diff in
every case.

Fixes #393
2017-05-25 17:27:00 -07:00
havnesvo
bc11a6e4dd Tighten language by increasing overall consistency in wording in texts and argument names: use 'actual' instead of 'received' 2017-05-25 17:16:55 -07:00
Jonas Finnemann Jensen
115ab90138 Provide argument name args in function signature
This mainly serves to make code-completion better in IDEs that automatically create the function signature.
2017-05-25 17:13:31 -07:00
Andy McCall
faf0710ff2 Added goconvey style assertions to the mock package 2017-05-25 17:05:23 -07:00
Denys Smirnov
97c0e43cd5 compare bytes with bytes.Equal instead of reflect.DeepEqual 2017-05-25 17:04:05 -07:00
Yimin Chen
17a0bd50e9 add mock.MethodCalled(methodName, args...) 2017-05-25 17:03:17 -07:00
Tagir Magomedov
9afdd65e6a Check number of provided arguments vs mocked
Pre-diff:
```
panic: runtime error: index out of range
```

Post-diff:
```
panic:

mock: Unexpected Method Call
-----------------------------

MyFunction(string,string,string)
		0: string,
		1: string,
		2: string

The closest call I have is:

MyFunction(string,string)
		0: "mock.Anything"
		1: "mock.Anything"

Provided 3 arguments, mocked for 2 arguments
```
2017-05-25 17:02:05 -07:00
Davide D'Agostino
c67caccbce Merge pull request #438 from josephholsten/test-old-go
travis: rm broken go releases
2017-05-25 16:56:26 -07:00
Joseph Anthony Pasquale Holsten
287336f43d travis: rm broken go releases
Some dependencies no longer support go <= 1.3.

github.com/davecgh/go-spew/spew and github.com/stretchr/objx depend on
the "bytes" package, and github.com/pmezard/go-difflib/difflib depends
on the "bufio" package.

This change removes them from tested platforms in travis. It may make
sense to explicitly doc the lack of support elsewhere.
2017-05-09 10:24:37 -07:00
Joseph Anthony Pasquale Holsten
32d79c51da travis: check if these platforms are broken 2017-05-09 09:55:59 -07:00
Adam Medziński
5c9da494dd HTTP code status assertions now fail tests 2017-02-10 14:36:52 +01:00
Ernesto Jiménez
4d4bfba8f1 Merge pull request #392 from stretchr/add-nil-unequal-check
Add Equal test comparing nil with non-nil
2017-01-30 12:31:45 +01:00
Ernesto Jiménez
332ae0e18f Add Equal test comparing nil with non-nil 2017-01-30 11:25:29 +00:00
Ernesto Jiménez
2402e8e7a0 Merge pull request #364 from nmiyake/fixFailOutput
Ensure that assert.Fail properly align its output
2016-12-17 14:04:45 -06:00
Ernesto Jiménez
598ab58e60 Merge pull request #171 from ANPez/master
Release lock before .WaitUntil
2016-12-17 13:32:40 -06:00