parallel_tests 0.16.17 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
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