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