aboutsummaryrefslogtreecommitdiffstats
path: root/src/_rspec
diff options
context:
space:
mode:
authorKouhei Yanagita <yanagi@shakenbu.org>2024-11-26 11:58:56 +0900
committerKouhei Yanagita <yanagi@shakenbu.org>2024-11-26 11:58:56 +0900
commit509d844cc8cf480d9a61c6b3c7dfe404082a2212 (patch)
tree8fd0f5e761c751004708061338bb4333c8b4647f /src/_rspec
parentMerge pull request #1112 from hydrargyrum/age (diff)
downloadzsh-completions-509d844cc8cf480d9a61c6b3c7dfe404082a2212.tar
zsh-completions-509d844cc8cf480d9a61c6b3c7dfe404082a2212.tar.gz
zsh-completions-509d844cc8cf480d9a61c6b3c7dfe404082a2212.tar.bz2
zsh-completions-509d844cc8cf480d9a61c6b3c7dfe404082a2212.tar.lz
zsh-completions-509d844cc8cf480d9a61c6b3c7dfe404082a2212.tar.xz
zsh-completions-509d844cc8cf480d9a61c6b3c7dfe404082a2212.tar.zst
zsh-completions-509d844cc8cf480d9a61c6b3c7dfe404082a2212.zip
Update rspec completion
* Fix -I * Setting exclusive options * Configuring options that can be used multiple times * Add descriptions for each formatters
Diffstat (limited to 'src/_rspec')
-rw-r--r--src/_rspec31
1 files changed, 20 insertions, 11 deletions
diff --git a/src/_rspec b/src/_rspec
index 944b6ff..f5bbfb9 100644
--- a/src/_rspec
+++ b/src/_rspec
@@ -43,7 +43,7 @@ _rspec() {
local context state line curcontext="$curcontext"
_arguments -C \
- *'-I[Specify PATH to add to $LOAD_PATH (may be used more than once)]:PATH:_files -/' \
+ '*-I[Specify PATH to add to $LOAD_PATH (may be used more than once)]:PATH:_files -/' \
'*'{-r,--require}'[Require a file]:PATH:_files' \
'*'{-O,--options}'[Specify the path to a custom options file]:PATH:_files' \
'--order[Run examples by the specified order type]: :->order' \
@@ -51,27 +51,28 @@ _rspec() {
'--bisect[Repeatedly runs the suite in order to isolate the failures to the smallest reproducible case]' \
'--only-failures[Filter to just the examples that failed the last time they ran]' \
'(-n --next-failure)'{-n,--next-failure}'[Apply `--only-failures` and abort after one failure (equivalent to `--only-failures --fail-fast --order defined`)]' \
- '--fail-fast[Abort the run on first failure]' \
- '--no-fail-fast[Do not abort the run on first failure]' \
+ '(--no-fail-fast)--fail-fast[Abort the run on first failure]' \
+ '(--fail-fast)--no-fail-fast[Do not abort the run on first failure]' \
'--failure-exit-code[Override the exit code used when there are failing specs]: :_guard "[[\:digit\:]]#" "CODE"' \
'--error-exit-code[Override the exit code used when there are errors loading or running specs]:code' \
'--dry-run[Print the formatter output of your suite without running any examples or hooks]' \
'(-X --drb)'{-X,--drb}'[Run examples via DRb]' \
+ '(-X --drb)--no-drb[Do not run examples via DRb]' \
'--drb-port[Port to connect to the DRb server]: :_guard "[[\:digit\:]]#" "PORT"' \
- '(-f --format)'{-f,--format}'[Choose a formatter]:FORMATTER:(progress documentation html json failures)' \
+ '(-f --format)'{-f,--format}'[Choose a formatter]: :->format' \
'(-o --out)'{-o,--out}'[Write output to a file instead of $stdout]:FILE:_files' \
'--deprecation-out[Write deprecation warnings to a file instead of $stderr]:FILE:_files' \
'(-b --backtrace)'{-b,--backtrace}'[Enable full backtrace]' \
- '--force-color[Force the output to be in color, even if the output is not a TTY]' \
- '--no-color[Force the output to not be in color, even if the output is a TTY]' \
- '(-p --profile)'{-p,--profile}'[Enable profiling of examples and list the slowest examples (default: 10)]: :_guard "[[\:digit\:]]#" "COUNT"' \
- '--no-profile[Disable profiling of examples]' \
+ '(--no-color)--force-color[Force the output to be in color, even if the output is not a TTY]' \
+ '(--force-color)--no-color[Force the output to not be in color, even if the output is a TTY]' \
+ '(-p --profile --no-profile)'{-p,--profile}'[Enable profiling of examples and list the slowest examples (default: 10)]: :_guard "[[\:digit\:]]#" "COUNT"' \
+ '(-p --profile)--no-profile[Disable profiling of examples]' \
'(-w --warnings)'{-w,--warnings}'[Enable ruby warnings]' \
'(-P --pattern)'{-P,--pattern}'[Load files matching pattern (default: "spec/**/*_spec.rb")]:PATTERN:' \
'--exclude-pattern[Load files except those matching pattern]:PATTERN:' \
- '(-e --example)'{-e,--example}'[Run examples whose full nested names include STRING (may be used more than once)]:STRING:' \
- '(-E --example-matches)'{-E,--example-matches}'[Run examples whose full nested names match REGEX]:regex' \
- '(-t --tag)'{-t,--tag}'[Run examples with the specified tag, or exclude examples by adding ~ before the tag]: :->tag' \
+ '*'{-e,--example}'[Run examples whose full nested names include STRING (may be used more than once)]:STRING:' \
+ '*'{-E,--example-matches}'[Run examples whose full nested names match REGEX]:regex' \
+ '*'{-t,--tag}'[Run examples with the specified tag, or exclude examples by adding ~ before the tag]: :->tag' \
'--default-path[Set the default path where RSpec looks for examples (can be a path to a file or a directory)]:PATH:_files' \
'(- *)--init[Initialize your project with RSpec]' \
'(- *)'{-h,--help}"[You're looking at it]" \
@@ -97,6 +98,14 @@ _rspec() {
_message 'TAG[:VALUE]'
fi
;;
+ format)
+ _values 'FORMATTER' \
+ 'progress[dots (default)]' \
+ 'documentation[group and example names]' \
+ 'html[HTML]' \
+ 'json[JSON]' \
+ 'failures["file:line:reason", suitable for editors integration]'
+ ;;
esac
}