parallel_cucumber 0.2.11 → 0.2.12

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
  SHA256:
3
- metadata.gz: 346ec076b5b81e97866bef05ce1837495df49fd082784d0d17fc00f01dedef9e
4
- data.tar.gz: 12f8aa028ce24140025b6c14e2a23993bd0b556a6d8291381e1eca2847371cf4
3
+ metadata.gz: 21efcd236f18ea3ac32ac8fe307a3856701d45d227ad3edd05cb571bbf34ea83
4
+ data.tar.gz: 35ddffec456a2add5916990eb77844039d6132dd5b5c4459c506a834bdc321e8
5
5
  SHA512:
6
- metadata.gz: cc768e6c37fb3178bc81d66301a929ee6006c48659129ab3165c52de3f1e0ca4e26912511200bf252c4aae4e0f75b2414865efc1d07146dbe44846b2c1ab8b71
7
- data.tar.gz: 4ee5ffed447e89cb5d0693b16200f5fa3103fae276a7b3abc8685efece1ba42c140133ba165de0b2052c948960fbb3c572cb228400f85783b4d91082b65533cb
6
+ metadata.gz: e37068e9ee2e6a8e754baf49cf29c92d909dd96f6625dc4eb17b4b9ac8fc932a58181a5210ee4fe14c6cd21f6e5197faf7d011ed3a681bdf21d8a4c93b5d001d
7
+ data.tar.gz: 0ac4181e268d5868f797ec25b51539b63f6d6f9bd76338817f8240ecc29e2a680e55efd0a93127f785ff9e538dc5191952aedc817ee98c8c09c7f47e23c9286b
@@ -22,6 +22,10 @@ module ParallelCucumber
22
22
  def after_batch(&proc)
23
23
  Hooks.register_after_batch(proc)
24
24
  end
25
+
26
+ def after_workers(&proc)
27
+ Hooks.register_after_workers(proc)
28
+ end
25
29
  end
26
30
  end
27
31
  end
@@ -1,7 +1,8 @@
1
1
  module ParallelCucumber
2
2
  class Hooks
3
3
  @before_batch_hooks ||= []
4
- @after_batch_hooks ||= []
4
+ @after_batch_hooks ||= []
5
+ @after_workers ||= []
5
6
 
6
7
  class << self
7
8
  def register_before_batch(proc)
@@ -14,6 +15,11 @@ module ParallelCucumber
14
15
  @after_batch_hooks << proc
15
16
  end
16
17
 
18
+ def register_after_workers(proc)
19
+ raise(ArgumentError, 'Please provide a valid callback') unless proc.respond_to?(:call)
20
+ @after_workers << proc
21
+ end
22
+
17
23
  def fire_before_batch_hooks(*args)
18
24
  @before_batch_hooks.each do |hook|
19
25
  hook.call(*args)
@@ -25,6 +31,12 @@ module ParallelCucumber
25
31
  hook.call(*args)
26
32
  end
27
33
  end
34
+
35
+ def fire_after_workers(*args)
36
+ @after_workers.each do |hook|
37
+ hook.call(*args)
38
+ end
39
+ end
28
40
  end
29
41
  end
30
42
  end
@@ -76,6 +76,14 @@ module ParallelCucumber
76
76
  status_totals = {}
77
77
  total_mm, total_ss = time_it do
78
78
  results = run_parallel_workers(number_of_workers) || {}
79
+
80
+ begin
81
+ Hooks.fire_after_workers(results: results, queue: queue)
82
+ rescue StandardError => e
83
+ trace = e.backtrace.join("\n\t")
84
+ @logger.warn("There was exception in after_workers hook #{e.message} \n #{trace}")
85
+ end
86
+
79
87
  unrun = tests - results.keys
80
88
  @logger.error("Tests #{unrun.join(' ')} were not run") unless unrun.empty?
81
89
  @logger.error("Queue #{queue.name} is not empty") unless queue.empty?
@@ -1,3 +1,3 @@
1
1
  module ParallelCucumber
2
- VERSION = '0.2.11'.freeze
2
+ VERSION = '0.2.12'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: parallel_cucumber
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.11
4
+ version: 0.2.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexander Bayandin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-09-28 00:00:00.000000000 Z
11
+ date: 2018-10-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cucumber