Michael Miller
94d5c96e7d
Implement an example filter that supports matching groups
...
Addresses https://gitlab.com/arctic-fox/spectator/-/issues/25 and
https://github.com/icy-arctic-fox/spectator/issues/24
2021-08-17 14:09:37 -06:00
Michael Miller
65799fdd3b
Pass along end line
2021-08-17 13:49:58 -06:00
Michael Miller
67b4c0589b
Implement NodeIterator
2021-08-17 12:55:49 -06:00
Michael Miller
cf7d67c972
Simplify ExampleIterator and remove unecessary allocations
2021-08-17 12:55:22 -06:00
Michael Miller
837e4cb85d
Implement Indexable(Node) on ExampleGroup
2021-08-17 12:54:36 -06:00
Michael Miller
4e5a52215a
Simplify
2021-08-16 20:27:27 -06:00
Michael Miller
3803d4582c
Use Iterable(Node) instead of ExampleGroup
2021-08-16 20:27:21 -06:00
Michael Miller
aa81f1d948
Change ExampleFilter to a NodeFilter
...
Node filters may operate on example groups as well as examples.
2021-08-08 12:13:59 -06:00
Michael Miller
0f7a9ed9e8
Remove append and prepend variants of hook definition methods
...
RSpec defines these as applying to a scope (example, context, suite) as
opposed to example group.
Mimicing this is currently not possible in Spectator and would require a
substantial restructure of how hooks are handled.
This may be implemented in the future.
2021-08-08 11:50:30 -06:00
Michael Miller
91d21b38e2
Lazily initialize global DSL spec builder
...
Require config to create a spec builder.
Config should be fully set up before any DSL is encountered.
2021-08-08 11:25:06 -06:00
Michael Miller
605b82c532
Add prepend and append variants of hooks to DSL
2021-08-08 10:51:39 -06:00
Michael Miller
841efc236d
Fix flipped append/prepend of "after" hooks
2021-08-08 10:27:34 -06:00
Michael Miller
b9f0a31a4a
Overhaul hooks
...
Mostly cleanup and make managing hooks simpler, hopefully.
Tests indicate this configuration matches hook execution order of RSpec.
2021-08-07 21:45:49 -06:00
Michael Miller
10b652f4b5
Remove unique/temp names
2021-07-31 19:11:51 -06:00
Michael Miller
3dc3b88dbe
Add "after" hooks in reverse order to match RSpec
2021-07-31 15:48:54 -06:00
Michael Miller
edcb5118e6
Show pending count only if there are pending examples
2021-07-31 15:02:21 -06:00
Michael Miller
abe78410c4
Formatting
2021-07-31 14:18:59 -06:00
Michael Miller
868aa1d00a
Support custom handling of hooks
2021-07-31 14:16:39 -06:00
Michael Miller
f53ffabf6b
Support label for aggregate_failures block
2021-07-31 12:04:43 -06:00
Michael Miller
4c125d98d4
Implement aggregate_failures
2021-07-31 11:56:53 -06:00
Michael Miller
9a97596b84
Allow named arguments in provided
block
2021-07-31 10:15:16 -06:00
Michael Miller
ef1832721c
Remove unecessary branch
2021-07-20 18:29:26 -06:00
Michael Miller
e8413db33f
Support custom messages for failed expectations
...
Fixes https://gitlab.com/arctic-fox/spectator/-/issues/28
2021-07-17 17:42:25 -06:00
Michael Miller
0c4379c731
Formatting
2021-07-17 16:55:43 -06:00
Michael Miller
2b37d34f26
Reference issues
2021-07-17 16:55:27 -06:00
Michael Miller
e60cc2a447
Phrasing
2021-07-17 16:41:49 -06:00
Michael Miller
eda4328a92
Blank line after stack trace
2021-07-17 16:35:35 -06:00
Michael Miller
52a0ae938a
Consistency with location and location?
2021-07-17 16:34:15 -06:00
Michael Miller
e316dd8a11
Fix missing example location in output
2021-07-17 16:27:38 -06:00
Michael Miller
6c6dff363b
Track source location of pending result
2021-07-17 16:25:32 -06:00
Michael Miller
7cb1545e83
Don't use failure location in failed example block output
...
This is problematic, since the failure could have ocurred outside the
example block (in a method call).
The comment line under the failure details will still point to the
result location, if it's available.
2021-07-17 16:15:11 -06:00
Michael Miller
81f1966417
Use location instead of source
2021-07-17 16:12:10 -06:00
Michael Miller
7e2b267e93
Use failure location in output if available
...
Fixes https://gitlab.com/arctic-fox/spectator/-/issues/57
2021-07-17 16:04:19 -06:00
Michael Miller
9c7f39ba45
Update references to existing issues
2021-07-17 16:03:01 -06:00
Michael Miller
f75991f34c
Formatting
2021-07-17 15:21:15 -06:00
Michael Miller
937b084f66
Support defining hooks in configuration block
2021-07-17 15:20:58 -06:00
Michael Miller
009266c8c2
Fix naming of hook methods when using a block
2021-07-17 14:32:55 -06:00
Michael Miller
a810eef16c
Add before_suite
and after_suite
2021-07-17 14:19:16 -06:00
Michael Miller
af13a89257
Pass along fallback reason
2021-07-17 14:04:17 -06:00
Michael Miller
1b53607f8e
Cleanup and add docs
2021-07-17 14:01:27 -06:00
Michael Miller
571bc7d8a5
Reuse iterative example group macro code
...
Add support for x prefix to skip sample and random_sample groups.
2021-07-17 13:25:38 -06:00
Michael Miller
e506c6b981
Implement random_sample
2021-07-17 13:05:03 -06:00
Michael Miller
9d72d26630
Handle sample count
2021-07-17 12:49:11 -06:00
Michael Miller
76a23131cb
More checks for missing block in DSL
...
Improved some error messages.
2021-07-17 12:36:21 -06:00
Michael Miller
640857bef2
Pretty up iterative group names
2021-07-17 12:15:41 -06:00
Michael Miller
d8e9d3128a
Fetch iteration item from group
2021-07-17 12:07:04 -06:00
Michael Miller
c79cb62a61
Quick implementation of iterative group builder
2021-07-17 12:06:53 -06:00
Michael Miller
c24c2cb5e1
Quick implementation of node builders
2021-07-17 11:10:44 -06:00
Michael Miller
c7a90b3e64
Shorten names and cleanup
2021-07-17 10:47:16 -06:00
Michael Miller
6c55301d0b
Merge remote-tracking branch 'origin/master' into release/0.10
2021-07-11 00:16:25 -06:00