rspec-queue 0.1.0 → 0.2.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 +5 -5
- data/bin/rspec-queue +2 -1
- data/bin/rspec-queue-worker +1 -0
- data/lib/rspec_queue/failure_list_formatter.rb +19 -0
- data/lib/rspec_queue/server.rb +3 -0
- data/lib/rspec_queue/server_runner.rb +3 -5
- data/lib/rspec_queue/worker.rb +1 -0
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 9196f3482712a2bffd2dbe77d56c73a6b02b2fe341f313d0597971bc943cb22d
|
4
|
+
data.tar.gz: 1165bf23fd98396095645fd81e2e90c08c4f2c0b4f1a76295427748bbc5dac2c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 79087eb388baf75819ba0ff8688ea6d4b27dd5cba613c84d574b92e4a9fe9683bd89655d5326f55a323017adcc001a9b616271e975b6b83e7e838bea20bb6704
|
7
|
+
data.tar.gz: ad813ba01e0544a1e24f22cd20ee3daaf0ed210936c31350fd37abb1701f66d864be15ce8bfbded21f26bd28715183c7745d391f99e7c28f115c1ddf1b2f570f
|
data/bin/rspec-queue
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
require 'rspec_queue/server_runner'
|
3
3
|
require 'rspec_queue/formatter'
|
4
|
+
require 'rspec_queue/failure_list_formatter'
|
4
5
|
|
5
|
-
ENV['SPEC_OPTS'] = "--format RSpecQueue::Formatter" unless ENV['SPEC_OPTS']
|
6
|
+
ENV['SPEC_OPTS'] = "--format RSpecQueue::Formatter --format RSpecQueue::FailureListFormatter --out log/rspec-failures.log" unless ENV['SPEC_OPTS']
|
6
7
|
RSpecQueue::ServerRunner.invoke
|
data/bin/rspec-queue-worker
CHANGED
@@ -0,0 +1,19 @@
|
|
1
|
+
require 'rspec/core/formatters'
|
2
|
+
|
3
|
+
module RSpecQueue
|
4
|
+
# Taken from rspec-core 3.9.0.pre FailureListFormatter
|
5
|
+
class FailureListFormatter < RSpec::Core::Formatters::BaseFormatter
|
6
|
+
RSpec::Core::Formatters.register self, :example_failed, :dump_profile, :message
|
7
|
+
|
8
|
+
def example_failed(failure)
|
9
|
+
output.puts "#{failure.example.location}:#{failure.example.description}"
|
10
|
+
end
|
11
|
+
|
12
|
+
# Discard profile and messages
|
13
|
+
#
|
14
|
+
# These outputs are not really relevant in the context of this failure
|
15
|
+
# list formatter.
|
16
|
+
def dump_profile(_profile); end
|
17
|
+
def message(_message); end
|
18
|
+
end
|
19
|
+
end
|
data/lib/rspec_queue/server.rb
CHANGED
@@ -6,13 +6,14 @@ require 'rspec_queue/worker'
|
|
6
6
|
module RSpecQueue
|
7
7
|
class ServerRunner < RSpec::Core::Runner
|
8
8
|
def run_specs(example_groups)
|
9
|
+
worker_pids = []
|
10
|
+
|
9
11
|
example_group_hash = example_groups.map { |example_group|
|
10
12
|
[example_group.id, example_group]
|
11
13
|
}.to_h
|
12
14
|
|
13
15
|
# start the server, so we are ready to accept connections from workers
|
14
16
|
server = RSpecQueue::Server.new
|
15
|
-
worker_pids = []
|
16
17
|
|
17
18
|
RSpecQueue::Configuration.instance.worker_count.times do |i|
|
18
19
|
env = {
|
@@ -38,7 +39,7 @@ module RSpecQueue
|
|
38
39
|
end
|
39
40
|
end
|
40
41
|
ensure
|
41
|
-
server.close
|
42
|
+
server.close if server
|
42
43
|
|
43
44
|
worker_pids.each do |pid|
|
44
45
|
Process.kill("TERM", pid)
|
@@ -47,6 +48,3 @@ module RSpecQueue
|
|
47
48
|
end
|
48
49
|
end
|
49
50
|
end
|
50
|
-
|
51
|
-
|
52
|
-
RSpecQueue::ServerRunner
|
data/lib/rspec_queue/worker.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rspec-queue
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nick Browne
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-05-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec-core
|
@@ -50,6 +50,7 @@ files:
|
|
50
50
|
- bin/rspec-queue-worker
|
51
51
|
- lib/rspec_queue.rb
|
52
52
|
- lib/rspec_queue/configuration.rb
|
53
|
+
- lib/rspec_queue/failure_list_formatter.rb
|
53
54
|
- lib/rspec_queue/formatter.rb
|
54
55
|
- lib/rspec_queue/server.rb
|
55
56
|
- lib/rspec_queue/server_runner.rb
|
@@ -75,7 +76,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
75
76
|
version: '0'
|
76
77
|
requirements: []
|
77
78
|
rubyforge_project:
|
78
|
-
rubygems_version: 2.
|
79
|
+
rubygems_version: 2.7.3
|
79
80
|
signing_key:
|
80
81
|
specification_version: 4
|
81
82
|
summary: parallel rspec runner
|