Michael Miller
8ccc08b472
Fix reflection (verify double) on self arg type
...
There is still an issue with using _ for a placeholder.
2019-12-13 20:25:18 -07:00
Michael Miller
16625cf495
Registry#expect takes a stub
2019-12-13 19:56:43 -07:00
Michael Miller
a38625f8a7
Remove GenericMethodCall
...
This type isn't needed. MethodCall is suitable after moving arguments to
it.
2019-12-13 19:54:06 -07:00
Michael Miller
a6aa00eb38
Fix double default stub with type
2019-12-13 19:17:08 -07:00
Michael Miller
d0c06096f5
Merge branch 'release/0.9'
2019-12-08 16:24:12 -07:00
Michael Miller
4684840d2f
Update README
2019-12-08 16:23:43 -07:00
Mike Miller
fb3da7497f
Merge branch 'release/0.9' into 'master'
...
Version 0.9.0
See merge request arctic-fox/spectator!17
2019-12-08 23:14:27 +00:00
Michael Miller
03c6a08146
Merge remote-tracking branch 'origin/master' into release/0.9
2019-12-08 16:13:33 -07:00
Mike Miller
2cb34f70fd
Merge branch 'mocks-and-doubles' into 'release/0.9'
...
Mocks and doubles
See merge request arctic-fox/spectator!16
2019-12-08 22:58:52 +00:00
Michael Miller
4c9bbbe07b
Formatting
2019-12-08 15:11:23 -07:00
Michael Miller
0ae5cdc9ae
Remove debug
2019-12-08 15:11:08 -07:00
Michael Miller
1a30a56f2a
Better stringified call
2019-12-08 15:10:49 -07:00
Michael Miller
91696d490f
Check if underlying type responds to method
2019-12-08 15:08:13 -07:00
Michael Miller
067c789019
Initial work on type reflection for verifying doubles
2019-12-08 14:52:54 -07:00
Michael Miller
074aff531c
Add "anything" which always returns true when compared against
2019-12-08 14:52:28 -07:00
Michael Miller
07ce835724
VerifyingDouble should be abstract
2019-12-08 14:51:48 -07:00
Michael Miller
8b0f509689
Detect when to use a verifying double
2019-12-08 11:37:08 -07:00
Michael Miller
8197a82ace
Expect stubs not method names
...
Needed for argument syntax:
`expect(dbl).to receive(:foo).with(:bar)`
2019-11-29 09:25:58 -07:00
Michael Miller
c710961be1
Fix returned type inferred to NoReturn
2019-11-29 08:53:36 -07:00
Michael Miller
d6c1169bc3
Fix dumb syntax
2019-11-20 20:40:53 -07:00
Michael Miller
5d84536e1e
Implement and_call_original
2019-11-20 19:17:51 -07:00
Michael Miller
f8563e86c7
Pass along original block
2019-11-20 16:29:06 -07:00
Michael Miller
2dee50f19e
Pass original (and type constraint) to stub via block
2019-11-20 15:43:45 -07:00
Michael Miller
51a47fec98
Remove unused RT parameter
2019-11-20 15:05:04 -07:00
Michael Miller
27acf7bced
Allow receive block syntax
2019-11-19 17:28:00 -07:00
Michael Miller
b062472d98
Revert "Initial support for and_yield"
...
This reverts commit e49bd0d57a
.
Removing support for stubbed yield.
Attempting to yield with different a different arity or argument types causes compilation errors.
I don't see any easy fix for this.
I would rather have no yield support than broken support.
2019-11-17 13:30:09 -07:00
Michael Miller
e49bd0d57a
Initial support for and_yield
2019-11-17 13:12:39 -07:00
Michael Miller
b896a7f1d5
Implement stub that raises
2019-11-17 12:53:18 -07:00
Michael Miller
6e287f864b
Implement returning multiple values
2019-11-17 12:26:02 -07:00
Michael Miller
1a3f663b70
Name is optional for doubles
2019-11-17 10:47:51 -07:00
Michael Miller
a63d3d05a5
Negation for receive matchers
2019-11-17 10:32:37 -07:00
Michael Miller
5da231a5e8
Check expectations for anonymous double
2019-11-17 10:14:03 -07:00
Michael Miller
45fe6217b4
Missing args
2019-11-17 09:42:19 -07:00
Michael Miller
ac9b3ad1fe
Implement expect_any_instance_of
2019-11-16 21:27:18 -07:00
Michael Miller
a15e2a97b1
Allow deferred expectation of multiple stubs
2019-11-16 15:24:23 -07:00
Michael Miller
a8e0f46645
Revert "Coerce operations in match? to booleans"
...
This reverts commit 76c21d447a
.
Should no longer be needed since mocks and doubles should indirectly leak into StandardMatcher types.
2019-11-16 15:15:53 -07:00
Michael Miller
d9d30c57d0
Merge ReceiveArgumentsMatcher and ReceiveMatcher
...
Finally found the issue causing other matchers derived from
StandardMatcher to be "leaked" doubles and mocks indirectly.
The if-condition in ExpectationPartial#to and #to_not caused the matcher
to be given the StandardMatcher type instead of a union type.
This lead to really strange compilation errors and wasted a lot of
hours.
2019-11-16 15:14:38 -07:00
Michael Miller
f0bfd8b6d4
Switch to run-time error for unsupported negation
2019-11-16 13:18:09 -07:00
Michael Miller
201fe614d1
Expect messages on double, but don't stub them
2019-11-16 10:59:13 -07:00
Michael Miller
186fa15a1a
Add method to check for stub
2019-11-16 10:06:11 -07:00
Michael Miller
8dbfb2d6ec
Revert "Allow expected value to receive stub"
...
This reverts commit 6cd410c4c7
.
Should not stub the method.
The end-user needs to do this.
2019-11-16 09:23:45 -07:00
Michael Miller
c9fb4d2d33
Don't run deferred blocks if the test fails
...
This also prevents overriding the test's original error with on that may
occur in the deferred blocks.
2019-11-16 09:06:47 -07:00
Michael Miller
23d8f4b5a6
Formatting
2019-11-16 09:03:24 -07:00
Michael Miller
ca85acefaf
Resolve issue trying to splat union of named tuples
2019-11-16 09:02:57 -07:00
Michael Miller
85531fecf9
Fix truthy values not being strings
2019-11-16 09:01:03 -07:00
Michael Miller
76c21d447a
Coerce operations in match? to booleans
...
The compiler is merging null-doubles with these matchers.
Methods that normally return a boolean instead return the instance
(self).
This causes a return type-mismatch.
There should be a better alternative to this.
2019-11-16 08:49:09 -07:00
Michael Miller
6cd410c4c7
Allow expected value to receive stub
2019-11-16 08:32:13 -07:00
Michael Miller
72e4ac8fe9
Remove unnecessary free variables
2019-11-16 08:17:46 -07:00
Michael Miller
3c94d1f8fd
Workaround for generic argument type issue
2019-11-15 21:18:51 -07:00
Michael Miller
2dc86c05ac
Initial work on deferred have_received check
2019-11-14 19:35:13 -07:00