test-queue-patched 0.4.4 → 0.4.5

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: 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