test-queue-patched 0.4.4 → 0.4.5

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: a57ae43da9afe84f0ffe7aaec1c4430a78000c38
4
- data.tar.gz: 2e366401b2243cc427c2aa3688e6f0b56589a092
3
+ metadata.gz: a9f925a1b7a8f125aafede692dcc2fa56527a14f
4
+ data.tar.gz: 43aabde2d39324dfd619c7aacd748bae398d3558
5
5
  SHA512:
6
- metadata.gz: 0f7571ac5e6d402fce1adc521bb03e1e04844c96ef5db6ff1c9fdd853e80f6671679c033e9e01ac0c1856ef3ff41dc0760c32311b3b582e5450d50ab5131316f
7
- data.tar.gz: f08a31ee43f8a4e1a14918f953f8af069761e92cbb68cd812d9f675941ce6ad6f9c97c307ea114b9dc9b99a215b6e824e4eacab17e6b71badb72efc018d3d4ca
6
+ metadata.gz: 92369ae29d5d1a783aa475890abd0744e16bfdc4fea56355acbcbbecdb531375df2f2005970ca270e7e14e4cdee1513b5402c320ecd47901ed79ed51868f89dd
7
+ data.tar.gz: f148034d7d877ac7f85011a9a64bb8b80167a46989b496d5726ff084a6910434da10d57f0b541f9b96b34b15a7690e1c35b8cce4a90bf73a94d9cdca99a2cbfc
@@ -14,12 +14,15 @@ module TestQueue
14
14
  class Runner
15
15
  class RSpec < Runner
16
16
  def initialize
17
+ # Require spec helper immediately
18
+ require File.join(::RSpec::Core::RubyProject.root, 'spec', 'spec_helper')
17
19
  super(TestFramework::RSpec.new)
18
20
  end
19
21
 
20
22
  def run_worker(iterator)
21
23
  rspec = ::RSpec::Core::QueueRunner.new
22
- rspec.run_each(iterator).to_i
24
+ # Save worker return value so we can exit in cleanup_worker
25
+ @run_worker_exit_code = rspec.run_each(iterator).to_i
23
26
  end
24
27
 
25
28
  def summarize_worker(worker)
@@ -28,12 +31,23 @@ module TestQueue
28
31
  end
29
32
 
30
33
  # clean exit to make sure at_exit {} hooks run (used by simplecov)
34
+ # test-queue will invoke exit! by default which doesn't run at_exit
31
35
  # https://github.com/instructure/canvas-lms/blob/039207c04faa67503633e4caf554dbc49cc78549/script/rspec-queue#L43
32
36
  def summarize
33
37
  estatus = @completed.inject(0) { |s, worker| s + (worker.status.exitstatus || 1) }
34
38
  estatus = [estatus, 255].min
35
39
  exit estatus
36
40
  end
41
+
42
+ # set env number for simplecov
43
+ def after_fork(num)
44
+ ENV['TEST_ENV_NUMBER'] = num > 1 ? num.to_s : ''
45
+ end
46
+
47
+ # clean exit to make sure at_exit {} hooks run (used by simplecov)
48
+ def cleanup_worker
49
+ Kernel.exit @run_worker_exit_code || 0
50
+ end
37
51
  end
38
52
  end
39
53
 
@@ -1,6 +1,6 @@
1
1
  spec = Gem::Specification.new do |s|
2
2
  s.name = 'test-queue-patched'
3
- s.version = '0.4.4'
3
+ s.version = '0.4.5'
4
4
  s.summary = 'parallel test runner'
5
5
  s.description = 'minitest/rspec parallel test runner for CI environments'
6
6
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: test-queue-patched
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.4
4
+ version: 0.4.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aman Gupta
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-04-25 00:00:00.000000000 Z
11
+ date: 2017-04-26 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: minitest/rspec parallel test runner for CI environments
14
14
  email: ruby@tmm1.net