503 Commits

Author SHA1 Message Date
Ernesto Jiménez
b57b6d191c Add FileExists and DirExists assertions
Implement FileExists and DirExists assertions to check whether file/dir
exist in a given path.

Closes #428
2017-12-30 18:26:00 +01:00
Dinesh Kumar
b3596e9279 Fxinng After(time.Duration) to wait properly
commit 5b0291d47dc3a70cc6c6be3bba3c2f934a8e933e
Merge: 1f324ec 8ccf48a
Author: Dinesh Kumar <dineshkumar-cse@users.noreply.github.com>
Date:   Sat Dec 30 19:55:13 2017 +0530

    Merge branch 'master' into master

commit 1f324ec8cbe892a2c5364904643aa1b710121824
Author: Dinesh Kumar <dinesh.kumar@go-jek.com>
Date:   Sat Dec 30 19:07:16 2017 +0530

    Fixing comments: reduced test time, locking in after, unexported waitTime

    - WaitUntil/After overrides each other value
    - currently if channel is set that takes the priority, if not the
      waitTime is used to Sleep

commit a7101ec14224918fc06532acae76418d1b4f04c5
Author: Dinesh Kumar <dinesh.kumar@go-jek.com>
Date:   Fri Dec 29 13:02:14 2017 +0530

    Using if else instead of switch and pulling out the commone one

commit 936f63dd689acacfd051867c5c700489caa1dbc2
Author: Dinesh Kumar <dinesh.kumar@go-jek.com>
Date:   Fri Dec 29 12:41:40 2017 +0530

    After - making it wait during method call

    After was using call.WaitUntil(time.After(duration)),
    <-time.After(duration) returns a channel with the timer immediately
    started
2017-12-30 17:53:34 +01:00
Joel Low
cbf22d8d28 Support nil arguments to Argument Matchers 2017-12-30 17:48:55 +01:00
Adam Medzinski
42baa3e5a4 Nil check in Implements assertion 2017-12-30 17:32:04 +01:00
Eyal
b3dfaa9086 fail: add test name for logged output
In case of a test failure, the test name will be logged to the output
with makes debugging easier, specially in case of table driven tests.
2017-12-30 17:26:20 +01:00
Maxim Kolganov
6e494f9834 put closestCall.Arguments to the expected side of the diff 2017-12-30 16:53:32 +01:00
Emil Stanchev
51464dae67 Consider empty/nil arrays as matching elements 2017-12-30 16:33:25 +01:00
Emil Stanchev
6f306a68e1 Reuse aLen and bLen variables 2017-12-30 16:33:25 +01:00
Emil Stanchev
76de30ed82 Actually fail tests 2017-12-30 16:33:25 +01:00
Emil Stanchev
ae87ba6d08 Ran go generate 2017-12-30 16:33:25 +01:00
Emil Stanchev
8bd27ddf8b Compress some newlines 2017-12-30 16:33:25 +01:00
Emil Stanchev
bf57a5dedc ElementsMatch array/slice assertion ignoring order
An assertion that compares the elements of the slices/arrays disregarding the order,
i.e. it checks whether each element in the first slice/array appears the same number of times in it
as in the second slice/array.

This name seemed like it would be easy to find.

Possible alternatives for the name:
- ContainsSameElements
- IsPermutation (C++: http://en.cppreference.com/w/cpp/algorithm/is_permutation)
- MatchArray (rspec: http://www.rubydoc.info/github/rspec/rspec-expectations/RSpec/Matchers:match_array)
- EqualSorted
- Other ideas?

This implementaiton is O(N^2), while sorting both lists first would be O(nlogn).
However, this one doesn't need to copy the lists, so it is simpler and doesn't require additional
memory and time for the copies.

I realize this was deemed as out of scope
https://github.com/stretchr/testify/issues/275
but I decided to give it a shot as I needed it also.
2017-12-30 16:33:25 +01:00
Tim Schaub
0c49dd9bb7 Replace is with in
Minor doc typo.
2017-12-30 16:16:00 +01:00
Emil Stanchev
9fb9de17de Make NotSubset actually fail the test on nil subset
The assertion function was simply returning false, which doesn't actually fail a test.
An example test that should have failed but doesn't:

  func TestNotSubset(t *testing.T) {
      assert.NotSubset(t, []string{"x"}, nil)
  }
2017-12-30 16:07:04 +01:00
Peter Hsu
8ccf48a064 Allow a method call to be optional 2017-12-30 15:23:32 +01:00
Eyal Posener
aa8279e896 travis: add go1.9 2017-12-30 15:14:03 +01:00
odog
c0f1d443b4 indent actual value for better comparison with expected value 2017-12-30 14:43:45 +01:00
Jonathan Jin
249123e03a Implement delta comparison for map values 2017-12-30 14:26:37 +01:00
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