parallel_tests 0.16.17 → 1.0.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: dc14ccc17914b5a7128310bd40d87739a52662e9
4
- data.tar.gz: a4b64d0afd0ed488b981d3b2e84366a84bae6d37
3
+ metadata.gz: d87fe66d8f59d1f365394d2e81e038638220c891
4
+ data.tar.gz: ffbb3e8e45357f998107b623cad4b3f25b6e859f
5
5
  SHA512:
6
- metadata.gz: 599cccbd365d2d5443553bcae320d9ba632805079aa3d029063e844c408245cf5239ffa10a5ded8deecd0db4c65793b75bfbaf0287fdbe033174b822d5478d2b
7
- data.tar.gz: 99dd70c7b4473fa0a56a53bd94d99b3d20e3049fb6de7cae9e29954c26438652be1be88f56a2e4897f98dc243d184b60b7548191fe89b198273f88d726c62624
6
+ metadata.gz: 792175a098da834f91641fdbdb2898c6d6944703fe7ca12ee4e6b103b948582c4d24aac09ad4e45981e8dbeedcb30012d365667e0c9691016b601bbcb9756e80
7
+ data.tar.gz: c3d9d360e4adf512a569ae390faae2bec9dfabe4e8ffd45e46c7f05e882a5afbd6dfac18579b85a701368085234d0035ca0b7a9d55776f59c44819ae114ff711
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- parallel_tests (0.16.17)
4
+ parallel_tests (1.0.0)
5
5
  parallel
6
6
 
7
7
  GEM
data/Readme.md CHANGED
@@ -99,7 +99,6 @@ so that each process should finish around the same time.
99
99
 
100
100
  Rspec: Add to your `.rspec_parallel` (or `.rspec`) :
101
101
 
102
- If installed as plugin: -I vendor/plugins/parallel_tests/lib
103
102
  --format progress
104
103
  --format ParallelTests::RSpec::RuntimeLogger --out tmp/parallel_runtime_rspec.log
105
104
 
@@ -115,7 +114,6 @@ This logger logs the test output without the different processes overwriting eac
115
114
 
116
115
  Add the following to your `.rspec_parallel` (or `.rspec`) :
117
116
 
118
- If installed as plugin: -I vendor/plugins/parallel_tests/lib
119
117
  --format progress
120
118
  --format ParallelTests::RSpec::SummaryLogger --out tmp/spec_summary.log
121
119
 
@@ -130,7 +128,6 @@ E.g.
130
128
 
131
129
  Add the following to your `.rspec_parallel` (or `.rspec`) :
132
130
 
133
- If installed as plugin: -I vendor/plugins/parallel_tests/lib
134
131
  --format progress
135
132
  --format ParallelTests::RSpec::FailuresLogger --out tmp/failing_specs.log
136
133
 
@@ -297,6 +294,7 @@ inspired by [pivotal labs](http://pivotallabs.com/users/miked/blog/articles/849-
297
294
  - [Brandon Turner](https://github.com/blt04)
298
295
  - [Matt Hodgson](https://github.com/mhodgson)
299
296
  - [bicarbon8](https://github.com/bicarbon8)
297
+ - [seichner](https://github.com/seichner)
300
298
 
301
299
  [Michael Grosser](http://grosser.it)<br/>
302
300
  michael@grosser.it<br/>
@@ -2,6 +2,10 @@ require 'parallel_tests/rspec/logger_base'
2
2
  require 'parallel_tests/rspec/runner'
3
3
 
4
4
  class ParallelTests::RSpec::FailuresLogger < ParallelTests::RSpec::LoggerBase
5
+ if RSPEC_3
6
+ RSpec::Core::Formatters.register self, :dump_failures, :dump_summary
7
+ end
8
+
5
9
  # RSpec 1: does not keep track of failures, so we do
6
10
  def example_failed(example, *args)
7
11
  if RSPEC_1
@@ -12,18 +16,24 @@ class ParallelTests::RSpec::FailuresLogger < ParallelTests::RSpec::LoggerBase
12
16
  end
13
17
  end
14
18
 
15
- # RSpec 1: dumps 1 failed spec
16
- def dump_failure(*args)
17
- end
18
-
19
- # RSpec 2: dumps all failed specs
20
- def dump_failures(*args)
19
+ if RSPEC_1
20
+ def dump_failure(*args)
21
+ end
22
+ else
23
+ def dump_failures(*args)
24
+ end
21
25
  end
22
26
 
23
27
  def dump_summary(*args)
24
28
  lock_output do
25
29
  if RSPEC_1
26
30
  dump_commands_to_rerun_failed_examples_rspec_1
31
+ elsif RSPEC_3
32
+ notification = args.first
33
+ unless notification.failed_examples.empty?
34
+ colorizer = ::RSpec::Core::Formatters::ConsoleCodes
35
+ output.puts notification.colorized_rerun_commands(colorizer)
36
+ end
27
37
  else
28
38
  dump_commands_to_rerun_failed_examples
29
39
  end
@@ -15,6 +15,7 @@ ParallelTests::RSpec::LoggerBaseBase = base
15
15
 
16
16
  class ParallelTests::RSpec::LoggerBase < ParallelTests::RSpec::LoggerBaseBase
17
17
  RSPEC_1 = !defined?(RSpec::Core::Formatters::BaseTextFormatter) # do not test for Spec, this will trigger deprecation warning in rspec 2
18
+ RSPEC_3 = !RSPEC_1 && RSpec::Core::Version::STRING.start_with?('3')
18
19
 
19
20
  def initialize(*args)
20
21
  super
@@ -31,8 +32,10 @@ class ParallelTests::RSpec::LoggerBase < ParallelTests::RSpec::LoggerBaseBase
31
32
  end
32
33
  end
33
34
 
35
+ protected
36
+
34
37
  #stolen from Rspec
35
- def close
38
+ def close(*args)
36
39
  @output.close if (IO === @output) & (@output != $stdout)
37
40
  end
38
41
 
@@ -5,7 +5,11 @@ class ParallelTests::RSpec::RuntimeLogger < ParallelTests::RSpec::LoggerBase
5
5
  def initialize(*args)
6
6
  super
7
7
  @example_times = Hash.new(0)
8
- @group_nesting = 0 if !RSPEC_1
8
+ @group_nesting = 0 unless RSPEC_1
9
+ end
10
+
11
+ if RSPEC_3
12
+ RSpec::Core::Formatters.register self, :example_group_started, :example_group_finished, :start_dump
9
13
  end
10
14
 
11
15
  if RSPEC_1
@@ -26,12 +30,13 @@ class ParallelTests::RSpec::RuntimeLogger < ParallelTests::RSpec::LoggerBase
26
30
  super
27
31
  end
28
32
 
29
- def example_group_finished(example_group)
33
+ def example_group_finished(notification)
30
34
  @group_nesting -= 1
31
35
  if @group_nesting == 0
32
- @example_times[example_group.file_path] += ParallelTests.now - @time
36
+ path = (RSPEC_3 ? notification.group.file_path : notification.file_path)
37
+ @example_times[path] += ParallelTests.now - @time
33
38
  end
34
- super
39
+ super if defined?(super)
35
40
  end
36
41
  end
37
42
 
@@ -1,19 +1,19 @@
1
1
  require 'parallel_tests/rspec/failures_logger'
2
2
 
3
3
  class ParallelTests::RSpec::SummaryLogger < ParallelTests::RSpec::LoggerBase
4
- # RSpec 1: dumps 1 failed spec
5
- def dump_failure(*args)
6
- lock_output do
7
- super
8
- end
9
- @output.flush
4
+ if RSPEC_3
5
+ RSpec::Core::Formatters.register self, :dump_failures
10
6
  end
11
7
 
12
- # RSpec 2: dumps all failed specs
13
- def dump_failures(*args)
14
- lock_output do
15
- super
8
+ if RSPEC_1
9
+ def dump_failure(*args)
10
+ lock_output { super }
11
+ @output.flush
12
+ end
13
+ else
14
+ def dump_failures(*args)
15
+ lock_output { super }
16
+ @output.flush
16
17
  end
17
- @output.flush
18
18
  end
19
19
  end
@@ -1,3 +1,3 @@
1
1
  module ParallelTests
2
- VERSION = Version = '0.16.17'
2
+ VERSION = Version = '1.0.0'
3
3
  end
@@ -21,9 +21,14 @@ describe ParallelTests::RSpec::RuntimeLogger do
21
21
  ParallelTests::RSpec::RuntimeLogger.new(f)
22
22
  end
23
23
 
24
- example = (mock(:file_path => "#{Dir.pwd}/spec/foo.rb"))
24
+ example = double(:file_path => "#{Dir.pwd}/spec/foo.rb")
25
+ if ParallelTests::RSpec::RuntimeLogger::RSPEC_3
26
+ example = double(:group => example)
27
+ end
28
+
25
29
  logger.example_group_started example
26
30
  logger.example_group_finished example
31
+
27
32
  logger.start_dump
28
33
 
29
34
  #f.close
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: parallel_tests
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.16.17
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Grosser
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-06 00:00:00.000000000 Z
11
+ date: 2014-06-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: parallel