guard-rspec 2.4.1 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +8 -0
- data/lib/guard/rspec/runner.rb +26 -5
- data/lib/guard/rspec/version.rb +1 -1
- metadata +17 -17
data/README.md
CHANGED
@@ -107,6 +107,12 @@ guard 'rspec', :spring => true do
|
|
107
107
|
# ...
|
108
108
|
end
|
109
109
|
```
|
110
|
+
[ParallelTests](https://github.com/grosser/parallel_tests) is supported, but you must enable it:
|
111
|
+
``` ruby
|
112
|
+
guard 'rspec', :parallel => true, :parallel_cli => '-n 2' do
|
113
|
+
# ...
|
114
|
+
end
|
115
|
+
```
|
110
116
|
|
111
117
|
Former `:color`, `:drb`, `:fail_fast` and `:formatter` options are deprecated and have no effect anymore.
|
112
118
|
|
@@ -127,6 +133,8 @@ Former `:color`, `:drb`, `:fail_fast` and `:formatter` options are deprecated an
|
|
127
133
|
:turnip => true # enable turnip support; default: false
|
128
134
|
:zeus => true # enable zeus support; default: false
|
129
135
|
:focus_on_failed => false # focus on the first 10 failed specs first, rerun till they pass
|
136
|
+
:parallel => true # run all specs in parallel using [ParallelTests](https://github.com/grosser/parallel_tests) gem, default: false
|
137
|
+
:parallel_cli => "-n 2" # pass arbitrary Parallel Tests arguments, default: ""
|
130
138
|
```
|
131
139
|
|
132
140
|
You can also use a custom binstubs directory using `:binstubs => 'some-dir'`.
|
data/lib/guard/rspec/runner.rb
CHANGED
@@ -24,7 +24,7 @@ module Guard
|
|
24
24
|
|
25
25
|
unless ENV['SPEC_OPTS'].nil?
|
26
26
|
UI.warning "The SPEC_OPTS environment variable is present. This can conflict with guard-rspec, particularly notifications."
|
27
|
-
end
|
27
|
+
end
|
28
28
|
|
29
29
|
deprecations_warnings
|
30
30
|
end
|
@@ -45,7 +45,8 @@ module Guard
|
|
45
45
|
end
|
46
46
|
|
47
47
|
def rspec_executable
|
48
|
-
|
48
|
+
command = parallel? ? 'parallel_rspec' : 'rspec'
|
49
|
+
@rspec_executable ||= (binstubs? && !executable_prefix?) ? "#{binstubs}/#{command}" : command
|
49
50
|
end
|
50
51
|
|
51
52
|
def failure_exit_code_supported?
|
@@ -92,6 +93,21 @@ module Guard
|
|
92
93
|
arg_parts.compact.join(' ')
|
93
94
|
end
|
94
95
|
|
96
|
+
def parallel_rspec_arguments(paths, options)
|
97
|
+
arg_parts = []
|
98
|
+
arg_parts << options[:parallel_cli]
|
99
|
+
if @options[:notification]
|
100
|
+
arg_parts << parsed_or_default_formatter unless options[:cli] =~ formatter_regex
|
101
|
+
arg_parts << "-r #{File.dirname(__FILE__)}/formatter.rb"
|
102
|
+
arg_parts << "-f Guard::RSpec::Formatter"
|
103
|
+
end
|
104
|
+
arg_parts << "--failure-exit-code #{FAILURE_EXIT_CODE}" if failure_exit_code_supported?
|
105
|
+
#arg_parts << "-r turnip/rspec" if @options[:turnip]
|
106
|
+
arg_parts << paths.join(' ')
|
107
|
+
|
108
|
+
arg_parts.compact.join(' ')
|
109
|
+
end
|
110
|
+
|
95
111
|
def rspec_command(paths, options)
|
96
112
|
cmd_parts = []
|
97
113
|
cmd_parts << environment_variables
|
@@ -99,7 +115,8 @@ module Guard
|
|
99
115
|
cmd_parts << "bundle exec" if bundle_exec?
|
100
116
|
cmd_parts << executable_prefix if executable_prefix?
|
101
117
|
cmd_parts << rspec_executable
|
102
|
-
cmd_parts << rspec_arguments(paths, options)
|
118
|
+
cmd_parts << rspec_arguments(paths, options) if !parallel?
|
119
|
+
cmd_parts << parallel_rspec_arguments(paths, options) if parallel?
|
103
120
|
cmd_parts.compact.join(' ')
|
104
121
|
end
|
105
122
|
|
@@ -182,9 +199,9 @@ module Guard
|
|
182
199
|
|
183
200
|
def executable_prefix
|
184
201
|
prefix = binstubs? ? "#{binstubs}/" : ''
|
185
|
-
if zeus?
|
202
|
+
if zeus? && !parallel?
|
186
203
|
prefix << 'zeus'
|
187
|
-
elsif spring?
|
204
|
+
elsif spring? && !parallel?
|
188
205
|
prefix << 'spring'
|
189
206
|
else
|
190
207
|
prefix = nil
|
@@ -196,6 +213,10 @@ module Guard
|
|
196
213
|
@options[:zeus] || false
|
197
214
|
end
|
198
215
|
|
216
|
+
def parallel?
|
217
|
+
@options[:parallel] || false
|
218
|
+
end
|
219
|
+
|
199
220
|
def spring?
|
200
221
|
@options[:spring] || false
|
201
222
|
end
|
data/lib/guard/rspec/version.rb
CHANGED
metadata
CHANGED
@@ -2,63 +2,63 @@
|
|
2
2
|
name: guard-rspec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 2.
|
5
|
+
version: 2.5.0
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Thibaud Guillaume-Gentil
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-03-04 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: guard
|
16
|
-
type: :runtime
|
17
16
|
requirement: !ruby/object:Gem::Requirement
|
18
|
-
none: false
|
19
17
|
requirements:
|
20
18
|
- - ! '>='
|
21
19
|
- !ruby/object:Gem::Version
|
22
20
|
version: '1.1'
|
23
|
-
prerelease: false
|
24
|
-
version_requirements: !ruby/object:Gem::Requirement
|
25
21
|
none: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
23
|
requirements:
|
27
24
|
- - ! '>='
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '1.1'
|
27
|
+
none: false
|
28
|
+
prerelease: false
|
29
|
+
type: :runtime
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
31
|
name: rspec
|
32
|
-
type: :runtime
|
33
32
|
requirement: !ruby/object:Gem::Requirement
|
34
|
-
none: false
|
35
33
|
requirements:
|
36
34
|
- - ~>
|
37
35
|
- !ruby/object:Gem::Version
|
38
36
|
version: '2.11'
|
39
|
-
prerelease: false
|
40
|
-
version_requirements: !ruby/object:Gem::Requirement
|
41
37
|
none: false
|
38
|
+
version_requirements: !ruby/object:Gem::Requirement
|
42
39
|
requirements:
|
43
40
|
- - ~>
|
44
41
|
- !ruby/object:Gem::Version
|
45
42
|
version: '2.11'
|
43
|
+
none: false
|
44
|
+
prerelease: false
|
45
|
+
type: :runtime
|
46
46
|
- !ruby/object:Gem::Dependency
|
47
47
|
name: bundler
|
48
|
-
type: :development
|
49
48
|
requirement: !ruby/object:Gem::Requirement
|
50
|
-
none: false
|
51
49
|
requirements:
|
52
50
|
- - ~>
|
53
51
|
- !ruby/object:Gem::Version
|
54
52
|
version: '1.1'
|
55
|
-
prerelease: false
|
56
|
-
version_requirements: !ruby/object:Gem::Requirement
|
57
53
|
none: false
|
54
|
+
version_requirements: !ruby/object:Gem::Requirement
|
58
55
|
requirements:
|
59
56
|
- - ~>
|
60
57
|
- !ruby/object:Gem::Version
|
61
58
|
version: '1.1'
|
59
|
+
none: false
|
60
|
+
prerelease: false
|
61
|
+
type: :development
|
62
62
|
description: Guard::RSpec automatically run your specs (much like autotest).
|
63
63
|
email:
|
64
64
|
- thibaud@thibaud.me
|
@@ -81,20 +81,20 @@ rdoc_options: []
|
|
81
81
|
require_paths:
|
82
82
|
- lib
|
83
83
|
required_ruby_version: !ruby/object:Gem::Requirement
|
84
|
-
none: false
|
85
84
|
requirements:
|
86
85
|
- - ! '>='
|
87
86
|
- !ruby/object:Gem::Version
|
88
87
|
version: '0'
|
89
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
90
88
|
none: false
|
89
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
91
90
|
requirements:
|
92
91
|
- - ! '>='
|
93
92
|
- !ruby/object:Gem::Version
|
94
93
|
version: 1.3.6
|
94
|
+
none: false
|
95
95
|
requirements: []
|
96
96
|
rubyforge_project: guard-rspec
|
97
|
-
rubygems_version: 1.8.
|
97
|
+
rubygems_version: 1.8.25
|
98
98
|
signing_key:
|
99
99
|
specification_version: 3
|
100
100
|
summary: Guard gem for RSpec
|