rspec-parallel 2.14.8.2 → 2.14.8.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ ZTFhNDU3NjI5NTg3YzU3ZTAwYTcyMzk2MjUzNmFhMTdhNzY0YTEwNA==
5
+ data.tar.gz: !binary |-
6
+ M2IwMGViOGQ1MjZiMzExMTFjNGQwNGZkOGViYTcxMzM2OTdjZmYwOA==
7
+ SHA512:
8
+ metadata.gz: !binary |-
9
+ MzU5NWZkYjE3ZWIyMThlZDA2NTJkZGNlMmQ1NGNiNDUxNmU1MTNlNTA2NWNh
10
+ OThlZmY3ZWJlZDU1MDIwZDQ0Y2IyMjE3NDBkNjA0YmQ0ZjcwMjUyNTUwNjIw
11
+ MGQ5NTE3MTAyZDc1ZWFjYmQwN2QzNTk5NTA2ZjNkODI5NjEyNTA=
12
+ data.tar.gz: !binary |-
13
+ ZWM0MWFiZWJmNzc0OGE4M2RhYTNhNDUzNTk1NTJiMDU3YTcyMGI3YjcwNzM2
14
+ ZDg3Y2VjYzQxNjRhODc5NGU0OGNiYWQ5Nzk2OTg5ZmM4MmYyMzljMWY0OTAw
15
+ MjZiMWEwMDQyZWRiNmUzMmQyMzQwY2ViOWFhMzdjNTU4NTY0MTY=
data/bin/rspec CHANGED
@@ -1,11 +1,11 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  begin
4
- require 'rspec/autorun'
4
+ require 'rspec/parallel_autorun'
5
5
  rescue LoadError
6
6
  $stderr.puts <<-EOS
7
7
  #{'*'*50}
8
- Could not find 'rspec/autorun'
8
+ Could not find 'rspec/parallel_autorun'
9
9
 
10
10
  This may happen if you're using rubygems as your package manager, but it is not
11
11
  being required through some mechanism before executing the rspec command.
@@ -13,26 +13,36 @@ require_rspec['parallel/version']
13
13
  require_rspec['parallel/configuration']
14
14
  require_rspec['parallel/option_parser']
15
15
  require_rspec['parallel/configuration_options']
16
+ require_rspec['parallel/command_line']
16
17
  require_rspec['parallel/example_thread_runner']
17
18
  require_rspec['parallel/example_group_thread_runner']
18
19
  require_rspec['parallel/runner']
19
20
 
20
21
  module RSpec
21
- # Returns the global [Configuration](RSpec/Parallel/Configuration) object. While you
22
+ # Returns the global [Configuration](RSpec/Core/Configuration) object. While you
22
23
  # _can_ use this method to access the configuration, the more common
23
24
  # convention is to use [RSpec.configure](RSpec#configure-class_method).
24
25
  #
25
26
  # @example
26
27
  # RSpec.configuration.drb_port = 1234
27
28
  # @see RSpec.configure
28
- # @see Parallel::Configuration
29
+ # @see Core::Configuration
29
30
  def self.configuration
30
- @configuration ||= begin
31
- config = RSpec::Parallel::Configuration.new
32
- config.expose_dsl_globally = true
33
- config
34
- end
31
+ if block_given?
32
+ RSpec.warn_deprecation <<-WARNING
35
33
 
34
+ *****************************************************************
35
+ DEPRECATION WARNING
36
+
37
+ * RSpec.configuration with a block is deprecated and has no effect.
38
+ * please use RSpec.configure with a block instead.
39
+
40
+ Called from #{caller(0)[1]}
41
+ *****************************************************************
42
+
43
+ WARNING
44
+ end
45
+ @configuration ||= RSpec::Parallel::Configuration.new
36
46
  end
37
47
 
38
48
  module Parallel
@@ -3,35 +3,35 @@ module RSpec
3
3
  class CommandLine < RSpec::Core::CommandLine
4
4
  def initialize(options, configuration=RSpec::configuration, world=RSpec::world)
5
5
  if Array === options
6
- options = ConfigurationOptions.new(options)
6
+ options = RSpec::Parallel::ConfigurationOptions.new(options)
7
7
  options.parse_options
8
8
  end
9
- @options = options
9
+ @options = options
10
10
  @configuration = configuration
11
- @world = world
11
+ @world = world
12
12
  end
13
13
 
14
14
  # Configures and runs a suite
15
15
  #
16
16
  # @param [IO] err
17
17
  # @param [IO] out
18
- def run_parallel(err, out)
18
+ def run(err, out)
19
19
  @configuration.error_stream = err
20
20
  @configuration.output_stream ||= out
21
21
  @options.configure(@configuration)
22
22
  @configuration.load_spec_files
23
23
  @world.announce_filters
24
-
24
+
25
25
  @configuration.reporter.report(@world.example_count, @configuration.randomize? ? @configuration.seed : nil) do |reporter|
26
26
  begin
27
27
  @configuration.run_hook(:before, :suite)
28
- group_threads = RSpec::Parallel::ExampleGroupThreadRunner.new(@configuration.thread_maximum)
28
+ group_threads = RSpec::Parallel::ExampleGroupThreadRunner.new(@options.options[:thread_maximum])
29
29
  @world.example_groups.ordered.map {|g| group_threads.run(g, reporter)}
30
30
  group_threads.wait_for_completion
31
31
 
32
32
  @world.example_groups.all? do |g|
33
- result_for_this_group = g.filtered_examples.all? { |example| example.metadata[:execution_result].exception.nil? }
34
- results_for_descendants = g.children.all? { |child| child.filtered_examples.all? { |example| example.metadata[:execution_result].exception.nil? } }
33
+ result_for_this_group = g.filtered_examples.all? { |example| example.exception.nil? }
34
+ results_for_descendants = g.children.all? { |child| child.filtered_examples.all? { |example| example.exception.nil? } }
35
35
  result_for_this_group && results_for_descendants
36
36
  end ? 0 : @configuration.failure_exit_code
37
37
  ensure
@@ -1,10 +1,18 @@
1
1
  module RSpec
2
2
  module Parallel
3
3
  class ConfigurationOptions < RSpec::Core::ConfigurationOptions
4
- UNFORCED_OPTIONS = [
5
- :requires, :profile, :drb, :libs, :files_or_directories_to_run,
6
- :full_description, :full_backtrace, :tty, :thread_maximum
4
+ NON_FORCED_OPTIONS = [
5
+ :debug, :requires, :profile, :drb, :libs, :files_or_directories_to_run,
6
+ :line_numbers, :full_description, :full_backtrace, :tty, :thread_maximum
7
7
  ].to_set
8
+
9
+ def env_options
10
+ ENV["SPEC_OPTS"] ? RSpec::Parallel::Parser.parse!(Shellwords.split(ENV["SPEC_OPTS"])) : {}
11
+ end
12
+
13
+ def command_line_options
14
+ @command_line_options ||= RSpec::Parallel::Parser.parse!(@args).merge :files_or_directories_to_run => @args
15
+ end
8
16
  end
9
17
  end
10
18
  end
@@ -1,213 +1,205 @@
1
1
  module RSpec
2
2
  module Parallel
3
3
  class Parser < RSpec::Core::Parser
4
- def parser(options)
5
- OptionParser.new do |parser|
6
- parser.banner = "Usage: rspec [options] [files or directories]\n\n"
4
+ def parse!(args)
5
+ return {} if args.empty?
7
6
 
8
- parser.on('-I PATH', 'Specify PATH to add to $LOAD_PATH (may be used more than once).') do |dir|
9
- options[:libs] ||= []
10
- options[:libs] << dir
11
- end
7
+ convert_deprecated_args(args)
12
8
 
13
- parser.on('-r', '--require PATH', 'Require a file.') do |path|
14
- options[:requires] ||= []
15
- options[:requires] << path
9
+ options = args.delete('--tty') ? {:tty => true} : {}
10
+ begin
11
+ parser(options).parse!(args)
12
+ rescue OptionParser::InvalidOption => e
13
+ abort "#{e.message}\n\nPlease use --help for a listing of valid options"
16
14
  end
17
15
 
18
- parser.on('-O', '--options PATH', 'Specify the path to a custom options file.') do |path|
19
- options[:custom_options_file] = path
20
- end
16
+ options
17
+ end
21
18
 
22
- parser.on('--order TYPE[:SEED]', 'Run examples by the specified order type.',
23
- ' [defined] examples and groups are run in the order they are defined',
24
- ' [rand] randomize the order of groups and examples',
25
- ' [random] alias for rand',
26
- ' [random:SEED] e.g. --order random:123') do |o|
27
- options[:order] = o
28
- end
19
+ def parser(options)
20
+ OptionParser.new do |parser|
21
+ parser.banner = "Usage: rspec [options] [files or directories]\n\n"
29
22
 
30
- parser.on('--seed SEED', Integer, 'Equivalent of --order rand:SEED.') do |seed|
31
- options[:order] = "rand:#{seed}"
32
- end
23
+ parser.on('-I PATH', 'Specify PATH to add to $LOAD_PATH (may be used more than once).') do |dir|
24
+ options[:libs] ||= []
25
+ options[:libs] << dir
26
+ end
33
27
 
34
- parser.on('--fail-fast', 'Abort the run on first failure.') do |o|
35
- options[:fail_fast] = true
36
- end
28
+ parser.on('-r', '--require PATH', 'Require a file.') do |path|
29
+ options[:requires] ||= []
30
+ options[:requires] << path
31
+ end
37
32
 
38
- parser.on('--no-fail-fast', 'Do not abort the run on first failure.') do |o|
39
- options[:fail_fast] = false
40
- end
33
+ parser.on('-O', '--options PATH', 'Specify the path to a custom options file.') do |path|
34
+ options[:custom_options_file] = path
35
+ end
41
36
 
42
- parser.on('--failure-exit-code CODE', Integer, 'Override the exit code used when there are failing specs.') do |code|
43
- options[:failure_exit_code] = code
44
- end
37
+ parser.on('--order TYPE[:SEED]', 'Run examples by the specified order type.',
38
+ ' [default] files are ordered based on the underlying file',
39
+ ' system\'s order',
40
+ ' [rand] randomize the order of files, groups and examples',
41
+ ' [random] alias for rand',
42
+ ' [random:SEED] e.g. --order random:123') do |o|
43
+ options[:order] = o
44
+ end
45
45
 
46
- parser.on('--dry-run', 'Print the formatter output of your suite without',
47
- ' running any examples or hooks') do |o|
48
- options[:dry_run] = true
49
- end
46
+ parser.on('--seed SEED', Integer, 'Equivalent of --order rand:SEED.') do |seed|
47
+ options[:order] = "rand:#{seed}"
48
+ end
50
49
 
51
- parser.on('-X', '--[no-]drb', 'Run examples via DRb.') do |o|
52
- options[:drb] = o
53
- end
50
+ parser.on('-d', '--debugger', 'Enable debugging.') do |o|
51
+ options[:debug] = true
52
+ end
54
53
 
55
- parser.on('--drb-port PORT', 'Port to connect to the DRb server.') do |o|
56
- options[:drb_port] = o.to_i
57
- end
54
+ parser.on('--fail-fast', 'Abort the run on first failure.') do |o|
55
+ options[:fail_fast] = true
56
+ end
58
57
 
59
- parser.on('--init', 'Initialize your project with RSpec.') do |cmd|
60
- RSpec::Support.require_rspec_core "project_initializer"
61
- ProjectInitializer.new.run
62
- exit
63
- end
58
+ parser.on('--failure-exit-code CODE', Integer, 'Override the exit code used when there are failing specs.') do |code|
59
+ options[:failure_exit_code] = code
60
+ end
64
61
 
65
- parser.separator("\n **** Output ****\n\n")
62
+ parser.on('-X', '--[no-]drb', 'Run examples via DRb.') do |o|
63
+ options[:drb] = o
64
+ end
66
65
 
67
- parser.on('-f', '--format FORMATTER', 'Choose a formatter.',
68
- ' [p]rogress (default - dots)',
69
- ' [d]ocumentation (group and example names)',
70
- ' [h]tml',
71
- ' [j]son',
72
- ' custom formatter class name') do |o|
73
- options[:formatters] ||= []
74
- options[:formatters] << [o]
75
- end
66
+ parser.on('--drb-port PORT', 'Port to connect to the DRb server.') do |o|
67
+ options[:drb_port] = o.to_i
68
+ end
76
69
 
77
- parser.on('-o', '--out FILE',
78
- 'Write output to a file instead of $stdout. This option applies',
79
- ' to the previously specified --format, or the default format',
80
- ' if no format is specified.'
81
- ) do |o|
82
- options[:formatters] ||= [['progress']]
83
- options[:formatters].last << o
84
- end
70
+ parser.on('--init', 'Initialize your project with RSpec.') do |cmd|
71
+ ProjectInitializer.new(cmd).run
72
+ exit
73
+ end
85
74
 
86
- parser.on('--deprecation-out FILE', 'Write deprecation warnings to a file instead of $stderr.') do |file|
87
- options[:deprecation_stream] = file
88
- end
75
+ parser.on('--configure', 'Deprecated. Use --init instead.') do |cmd|
76
+ warn "--configure is deprecated with no effect. Use --init instead."
77
+ exit
78
+ end
89
79
 
90
- parser.on('-b', '--backtrace', 'Enable full backtrace.') do |o|
91
- options[:full_backtrace] = true
92
- end
80
+ parser.separator("\n **** Output ****\n\n")
81
+
82
+ parser.on('-f', '--format FORMATTER', 'Choose a formatter.',
83
+ ' [p]rogress (default - dots)',
84
+ ' [d]ocumentation (group and example names)',
85
+ ' [h]tml',
86
+ ' [t]extmate',
87
+ ' [j]son',
88
+ ' custom formatter class name') do |o|
89
+ options[:formatters] ||= []
90
+ options[:formatters] << [o]
91
+ end
93
92
 
94
- parser.on('-c', '--[no-]color', '--[no-]colour', 'Enable color in the output.') do |o|
95
- options[:color] = o
96
- end
93
+ parser.on('-o', '--out FILE',
94
+ 'Write output to a file instead of $stdout. This option applies',
95
+ ' to the previously specified --format, or the default format',
96
+ ' if no format is specified.'
97
+ ) do |o|
98
+ options[:formatters] ||= [['progress']]
99
+ options[:formatters].last << o
100
+ end
101
+
102
+ parser.on('-b', '--backtrace', 'Enable full backtrace.') do |o|
103
+ options[:full_backtrace] = true
104
+ end
105
+
106
+ parser.on('-c', '--[no-]color', '--[no-]colour', 'Enable color in the output.') do |o|
107
+ options[:color] = o
108
+ end
97
109
 
98
- parser.on('-p', '--[no-]profile [COUNT]', 'Enable profiling of examples and list the slowest examples (default: 10).') do |argument|
99
- options[:profile_examples] = if argument.nil?
100
- true
101
- elsif argument == false
102
- false
103
- else
104
- begin
105
- Integer(argument)
106
- rescue ArgumentError
107
- RSpec.warning "Non integer specified as profile count, seperate " +
108
- "your path from options with -- e.g. " +
109
- "`rspec --profile -- #{argument}`",
110
- :call_site => nil
110
+ parser.on('-p', '--[no-]profile [COUNT]', 'Enable profiling of examples and list the slowest examples (default: 10).') do |argument|
111
+ options[:profile_examples] = if argument.nil?
111
112
  true
113
+ elsif argument == false
114
+ false
115
+ else
116
+ begin
117
+ Integer(argument)
118
+ rescue ArgumentError
119
+ Kernel.warn "Non integer specified as profile count, seperate " +
120
+ "your path from options with -- e.g. " +
121
+ "`rspec --profile -- #{argument}`"
122
+ true
123
+ end
112
124
  end
113
- end
114
- end
125
+ end
115
126
 
116
- parser.on('-w', '--warnings', 'Enable ruby warnings') do
117
- $VERBOSE = true
118
- end
127
+ parser.on('-w', '--warnings', 'Enable ruby warnings') do
128
+ options[:warnings] = true
129
+ end
119
130
 
120
- parser.on('--parallel-test NUMBER', 'Run the tests with the specified number of parallel threads (default: 1).') do |n|
121
- options[:thread_maximum] = if !n.nil?
122
- begin
123
- Integer(n)
124
- rescue ArgumentError
125
- RSpec.warning "Non integer specified as number of parallel threads, seperate " +
126
- "your path from options with a space e.g. " +
127
- "`rspec --parallel-test #{n}`",
128
- :call_site => nil
129
- 1
130
- end
131
- end
132
- end
131
+ parser.separator <<-FILTERING
133
132
 
134
- parser.separator <<-FILTERING
133
+ **** Filtering/tags ****
135
134
 
136
- **** Filtering/tags ****
135
+ In addition to the following options for selecting specific files, groups,
136
+ or examples, you can select a single example by appending the line number to
137
+ the filename:
137
138
 
138
- In addition to the following options for selecting specific files, groups,
139
- or examples, you can select a single example by appending the line number to
140
- the filename:
139
+ rspec path/to/a_spec.rb:37
141
140
 
142
- rspec path/to/a_spec.rb:37
141
+ FILTERING
143
142
 
144
- FILTERING
143
+ parser.on('-P', '--pattern PATTERN', 'Load files matching pattern (default: "spec/**/*_spec.rb").') do |o|
144
+ options[:pattern] = o
145
+ end
145
146
 
146
- parser.on('-P', '--pattern PATTERN', 'Load files matching pattern (default: "spec/**/*_spec.rb").') do |o|
147
- options[:pattern] = o
148
- end
147
+ parser.on('-e', '--example STRING', "Run examples whose full nested names include STRING (may be",
148
+ " used more than once)") do |o|
149
+ (options[:full_description] ||= []) << Regexp.compile(Regexp.escape(o))
150
+ end
149
151
 
150
- parser.on('-e', '--example STRING', "Run examples whose full nested names include STRING (may be",
151
- " used more than once)") do |o|
152
- (options[:full_description] ||= []) << Regexp.compile(Regexp.escape(o))
153
- end
152
+ parser.on('-l', '--line-number LINE', 'Specify line number of an example or group (may be',
153
+ ' used more than once).') do |o|
154
+ (options[:line_numbers] ||= []) << o
155
+ end
154
156
 
155
- parser.on('-t', '--tag TAG[:VALUE]',
156
- 'Run examples with the specified tag, or exclude examples',
157
- 'by adding ~ before the tag.',
158
- ' - e.g. ~slow',
159
- ' - TAG is always converted to a symbol') do |tag|
160
- filter_type = tag =~ /^~/ ? :exclusion_filter : :inclusion_filter
161
-
162
- name,value = tag.gsub(/^(~@|~|@)/, '').split(':',2)
163
- name = name.to_sym
164
-
165
- options[filter_type] ||= {}
166
- options[filter_type][name] = case value
167
- when nil then true # The default value for tags is true
168
- when 'true' then true
169
- when 'false' then false
170
- when 'nil' then nil
171
- when /^:/ then value[1..-1].to_sym
172
- when /^\d+$/ then Integer(value)
173
- when /^\d+.\d+$/ then Float(value)
174
- else
175
- value
176
- end
177
- end
157
+ parser.on('-t', '--tag TAG[:VALUE]',
158
+ 'Run examples with the specified tag, or exclude examples',
159
+ 'by adding ~ before the tag.',
160
+ ' - e.g. ~slow',
161
+ ' - TAG is always converted to a symbol') do |tag|
162
+ filter_type = tag =~ /^~/ ? :exclusion_filter : :inclusion_filter
178
163
 
179
- parser.on('--default-path PATH', 'Set the default path where RSpec looks for examples (can',
180
- ' be a path to a file or a directory).') do |path|
181
- options[:default_path] = path
182
- end
164
+ name,value = tag.gsub(/^(~@|~|@)/, '').split(':')
165
+ name = name.to_sym
183
166
 
184
- parser.separator("\n **** Utility ****\n\n")
167
+ options[filter_type] ||= {}
168
+ options[filter_type][name] = value.nil? ? true : eval(value) rescue value
169
+ end
185
170
 
186
- parser.on('-v', '--version', 'Display the version.') do
187
- puts RSpec::Core::Version::STRING
188
- exit
189
- end
171
+ parser.on('--default-path PATH', 'Set the default path where RSpec looks for examples (can',
172
+ ' be a path to a file or a directory).') do |path|
173
+ options[:default_path] = path
174
+ end
190
175
 
191
- # these options would otherwise be confusing to users, so we forcibly prevent them from executing
192
- # --I is too similar to -I
193
- # -d was a shorthand for --debugger, which is removed, but now would trigger --default-path
194
- invalid_options = %w[-d --I]
176
+ parser.separator("\n **** Utility ****\n\n")
177
+
178
+ parser.on('--parallel-test NUMBER', 'Run the tests with the specified number of parallel threads (default: 1).') do |n|
179
+ options[:thread_maximum] = if !n.nil?
180
+ begin
181
+ Integer(n)
182
+ rescue ArgumentError
183
+ RSpec.warning "Non integer specified as number of parallel threads, seperate " +
184
+ "your path from options with a space e.g. " +
185
+ "`rspec --parallel-test #{n}`",
186
+ :call_site => nil
187
+ 1
188
+ end
189
+ end
190
+ end
195
191
 
196
- parser.on_tail('-h', '--help', "You're looking at it.") do
197
- # removing the blank invalid options from the output
198
- puts parser.to_s.gsub(/^\s+(#{invalid_options.join('|')})\s*$\n/,'')
199
- exit
200
- end
192
+ parser.on('-v', '--version', 'Display the version.') do
193
+ puts RSpec::Parallel::Version::STRING
194
+ exit
195
+ end
201
196
 
202
- # this prevents usage of the invalid_options
203
- invalid_options.each do |option|
204
- parser.on(option) do
205
- raise OptionParser::InvalidOption.new
197
+ parser.on_tail('-h', '--help', "You're looking at it.") do
198
+ puts parser
199
+ exit
206
200
  end
207
201
  end
208
-
209
202
  end
210
203
  end
211
- end
212
204
  end
213
205
  end
@@ -19,10 +19,10 @@ module RSpec
19
19
  # * +Fixnum+ - exit status code (0/1)
20
20
  def self.run(args, err=$stderr, out=$stdout)
21
21
  trap_interrupt
22
- options = ConfigurationOptions.new(args)
22
+ options = RSpec::Parallel::ConfigurationOptions.new(args)
23
23
  options.parse_options
24
-
25
24
  parallel = (options.options[:thread_maximum].nil?) ? false : true
25
+
26
26
  drb = options.options[:drb]
27
27
 
28
28
  if drb
@@ -38,9 +38,9 @@ module RSpec
38
38
  unless drb
39
39
  if parallel
40
40
  require 'thread'
41
- CommandLine.new(options).run_parallel(err, out)
41
+ RSpec::Parallel::CommandLine.new(options).run(err, out)
42
42
  else
43
- CommandLine.new(options).run(err, out)
43
+ RSpec::Core::CommandLine.new(options).run(err, out)
44
44
  end
45
45
  end
46
46
  ensure
@@ -3,7 +3,7 @@ module RSpec
3
3
  # Version information for RSpec Parallel.
4
4
  module Version
5
5
  # Current version of RSpec Parallel, in semantic versioning format.
6
- STRING = '2.14.8.2'
6
+ STRING = '2.14.8.3'
7
7
  end
8
8
  end
9
9
  end
@@ -0,0 +1,3 @@
1
+ require 'rspec/core'
2
+ require 'rspec/parallel'
3
+ RSpec::Parallel::Runner.autorun
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspec-parallel
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.14.8.2
5
- prerelease:
4
+ version: 2.14.8.3
6
5
  platform: ruby
7
6
  authors:
8
7
  - Jason Holt Smith
@@ -14,7 +13,6 @@ dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rspec
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - ~>
20
18
  - !ruby/object:Gem::Version
@@ -22,7 +20,6 @@ dependencies:
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - ~>
28
25
  - !ruby/object:Gem::Version
@@ -35,8 +32,8 @@ executables:
35
32
  extensions: []
36
33
  extra_rdoc_files: []
37
34
  files:
35
+ - bin/rspec
38
36
  - lib/rspec/parallel.rb
39
- - lib/rspec/parallel/autorun.rb
40
37
  - lib/rspec/parallel/command_line.rb
41
38
  - lib/rspec/parallel/configuration.rb
42
39
  - lib/rspec/parallel/configuration_options.rb
@@ -45,31 +42,30 @@ files:
45
42
  - lib/rspec/parallel/option_parser.rb
46
43
  - lib/rspec/parallel/runner.rb
47
44
  - lib/rspec/parallel/version.rb
48
- - bin/rspec
45
+ - lib/rspec/parallel_autorun.rb
49
46
  homepage: https://github.com/bicarbon8/rspec-parallel.git
50
47
  licenses:
51
48
  - MIT
49
+ metadata: {}
52
50
  post_install_message:
53
51
  rdoc_options: []
54
52
  require_paths:
55
53
  - lib
56
54
  required_ruby_version: !ruby/object:Gem::Requirement
57
- none: false
58
55
  requirements:
59
56
  - - ! '>='
60
57
  - !ruby/object:Gem::Version
61
58
  version: 1.8.7
62
59
  required_rubygems_version: !ruby/object:Gem::Requirement
63
- none: false
64
60
  requirements:
65
61
  - - ! '>='
66
62
  - !ruby/object:Gem::Version
67
63
  version: '0'
68
64
  requirements: []
69
65
  rubyforge_project:
70
- rubygems_version: 1.8.23
66
+ rubygems_version: 2.2.1
71
67
  signing_key:
72
- specification_version: 3
68
+ specification_version: 4
73
69
  summary: Parallel rspec execution gem
74
70
  test_files: []
75
71
  has_rdoc:
@@ -1,2 +0,0 @@
1
- require 'rspec/core'
2
- RSpec::Parallel::Runner.autorun