Commit Graph

1987 Commits

Author SHA1 Message Date
Michael Miller c49522a791
Allow tags on top-level groups 2021-08-18 15:57:22 -06:00
Michael Miller 21d14bd814
Add f-prefix variants of groups and examples
For instance: `fit` for `it "...", :focus`
2021-08-18 13:55:21 -06:00
Michael Miller 2b27ea5a01
Quick implementation of `filter_run_when_matching`
Needed for focus tests.
2021-08-18 13:46:54 -06:00
Michael Miller fd4812207a
Whitespace 2021-08-18 11:27:06 -06:00
Michael Miller 1e82608500
Add methods matching RSpec for configuring include and exclude tags 2021-08-17 23:40:58 -06:00
Michael Miller c209fe7259
Add ascend methods 2021-08-17 22:10:01 -06:00
Michael Miller 8d366bf637
Fully implemented test filtering by tags
Addresses https://gitlab.com/arctic-fox/spectator/-/issues/16
2021-08-17 21:54:01 -06:00
Michael Miller ffb99a21d5
Update changelog to mention group matching 2021-08-17 21:44:15 -06:00
Michael Miller a9a46c76ad
Support tag filtering with value 2021-08-17 21:34:26 -06:00
Michael Miller b79dd4361e
Initial implementation of tag filtering 2021-08-17 20:52:06 -06:00
Michael Miller 38ea2e7f96
Address Ameba issue 2021-08-17 15:02:34 -06:00
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