rrrspec-rspec 1.0.1 → 1.0.2
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 +4 -4
- data/Gemfile.lock +1 -1
- data/lib/rrrspec/rspec.rb +3 -3
- data/lib/rrrspec/seedrs/rspec/rspec_runner.rb +95 -0
- data/lib/rrrspec/seedrs/rspec/rspec_runner_factory.rb +16 -0
- data/lib/rrrspec/seedrs/rspec/version.rb +7 -0
- data/rrrspec-rspec.gemspec +2 -2
- metadata +4 -4
- data/lib/rrrspec/rspec/rspec_runner.rb +0 -93
- data/lib/rrrspec/rspec/rspec_runner_factory.rb +0 -14
- data/lib/rrrspec/rspec/version.rb +0 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1d4f92c28191456c1163e096ce9e7c69098ee980
|
4
|
+
data.tar.gz: af93c763eb4ecb31bcbcc626ef8d4ee6a3a5c5ad
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: efe17b017b21e0f7c93a691f52a1dd149b24057bcd7e9544785c9ded51d910fcda9a9b65f19c6445061ea0fc37549399f066bdf05c20db85a423f50ffc7d6e3b
|
7
|
+
data.tar.gz: a9fd6e21bc01df807585988ba52572ddf7c44c2e98eed243e2da78f989ec1f677149a51aad2e1e9963c151db7e6425e03134ddca35beddba91490d261dbf9e18
|
data/Gemfile.lock
CHANGED
data/lib/rrrspec/rspec.rb
CHANGED
@@ -1,3 +1,3 @@
|
|
1
|
-
require 'rrrspec/rspec/version'
|
2
|
-
require 'rrrspec/rspec/rspec_runner'
|
3
|
-
require 'rrrspec/rspec/rspec_runner_factory'
|
1
|
+
require 'rrrspec/seedrs/rspec/version'
|
2
|
+
require 'rrrspec/seedrs/rspec/rspec_runner'
|
3
|
+
require 'rrrspec/seedrs/rspec/rspec_runner_factory'
|
@@ -0,0 +1,95 @@
|
|
1
|
+
module RRRSpec
|
2
|
+
module Seedrs
|
3
|
+
module RSpec
|
4
|
+
class RSpecRunner
|
5
|
+
|
6
|
+
def setup(file_path)
|
7
|
+
@file_path = file_path
|
8
|
+
status = true
|
9
|
+
|
10
|
+
[status, '', '']
|
11
|
+
end
|
12
|
+
|
13
|
+
def run(*formatters)
|
14
|
+
status = false
|
15
|
+
result_err = ''
|
16
|
+
|
17
|
+
begin
|
18
|
+
result_out = `SLAVE_NUMBER=#{ENV['SLAVE_NUMBER']} bundle exec rspec #{@file_path}`
|
19
|
+
|
20
|
+
formatters.each do |formatter_class|
|
21
|
+
formatter = formatter_class.new nil
|
22
|
+
process_result(formatter, result_out)
|
23
|
+
end
|
24
|
+
|
25
|
+
status = true
|
26
|
+
rescue Exception => e
|
27
|
+
result_err = e.message
|
28
|
+
end
|
29
|
+
|
30
|
+
[status, result_out, result_err]
|
31
|
+
end
|
32
|
+
|
33
|
+
def reset
|
34
|
+
@file_path = ''
|
35
|
+
end
|
36
|
+
|
37
|
+
def process_result(formatter, result)
|
38
|
+
results_line = result.lines[get_step_result_line(result)]
|
39
|
+
|
40
|
+
failing_steps_count = failing_steps_count(results_line)
|
41
|
+
pending_steps_count = pending_steps_count(results_line)
|
42
|
+
total_steps_count = total_steps_count(results_line)
|
43
|
+
|
44
|
+
(failing_steps_count + pending_steps_count).times do
|
45
|
+
formatter.example_failed nil
|
46
|
+
end
|
47
|
+
|
48
|
+
(total_steps_count - failing_steps_count - pending_steps_count).times do
|
49
|
+
formatter.example_passed nil
|
50
|
+
end
|
51
|
+
|
52
|
+
pending_steps_count.times do
|
53
|
+
formatter.example_pending nil
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
def get_step_result_line(rspec_output)
|
58
|
+
rspec_output.lines.each_with_index do |line, line_number|
|
59
|
+
if /(\d*) examples?, (\d*) failures?/ =~ line
|
60
|
+
return line_number
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
-1
|
65
|
+
end
|
66
|
+
|
67
|
+
private
|
68
|
+
|
69
|
+
def failing_steps_count(results_line)
|
70
|
+
if results_line.match(/(\d+) failure/)
|
71
|
+
results_line.match(/(\d+) failure/)[1].to_i
|
72
|
+
else
|
73
|
+
0
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
def pending_steps_count(results_line)
|
78
|
+
if results_line.match(/(\d+) pending/)
|
79
|
+
results_line.match(/(\d+) pending/)[1].to_i
|
80
|
+
else
|
81
|
+
0
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
def total_steps_count(results_line)
|
86
|
+
if results_line.match(/(\d+) example/)
|
87
|
+
results_line.match(/(\d+) example/)[1].to_i
|
88
|
+
else
|
89
|
+
0
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
data/rrrspec-rspec.gemspec
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
# coding: utf-8
|
2
2
|
lib = File.expand_path('../lib', __FILE__)
|
3
3
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
-
require 'rrrspec/rspec/version'
|
4
|
+
require 'rrrspec/seedrs/rspec/version'
|
5
5
|
|
6
6
|
Gem::Specification.new do |spec|
|
7
7
|
spec.name = 'rrrspec-rspec'
|
8
|
-
spec.version = RRRSpec::RSpec::VERSION
|
8
|
+
spec.version = RRRSpec::Seedrs::RSpec::VERSION
|
9
9
|
spec.authors = ['João Luís']
|
10
10
|
spec.email = ['jrluis@gmail.com']
|
11
11
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rrrspec-rspec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- João Luís
|
@@ -80,9 +80,9 @@ files:
|
|
80
80
|
- bin/console
|
81
81
|
- bin/setup
|
82
82
|
- lib/rrrspec/rspec.rb
|
83
|
-
- lib/rrrspec/rspec/rspec_runner.rb
|
84
|
-
- lib/rrrspec/rspec/rspec_runner_factory.rb
|
85
|
-
- lib/rrrspec/rspec/version.rb
|
83
|
+
- lib/rrrspec/seedrs/rspec/rspec_runner.rb
|
84
|
+
- lib/rrrspec/seedrs/rspec/rspec_runner_factory.rb
|
85
|
+
- lib/rrrspec/seedrs/rspec/version.rb
|
86
86
|
- rrrspec-rspec.gemspec
|
87
87
|
homepage: https://github.com/Seedrs/rrrspec-rspec
|
88
88
|
licenses:
|
@@ -1,93 +0,0 @@
|
|
1
|
-
module RRRSpec
|
2
|
-
module RSpec
|
3
|
-
class RSpecRunner
|
4
|
-
|
5
|
-
def setup(file_path)
|
6
|
-
@file_path = file_path
|
7
|
-
status = true
|
8
|
-
|
9
|
-
[status, '', '']
|
10
|
-
end
|
11
|
-
|
12
|
-
def run(*formatters)
|
13
|
-
status = false
|
14
|
-
result_err = ''
|
15
|
-
|
16
|
-
begin
|
17
|
-
result_out = `SLAVE_NUMBER=#{ENV['SLAVE_NUMBER']} bundle exec rspec #{@file_path}`
|
18
|
-
|
19
|
-
formatters.each do |formatter_class|
|
20
|
-
formatter = formatter_class.new nil
|
21
|
-
process_result(formatter, result_out)
|
22
|
-
end
|
23
|
-
|
24
|
-
status = true
|
25
|
-
rescue Exception => e
|
26
|
-
result_err = e.message
|
27
|
-
end
|
28
|
-
|
29
|
-
[status, result_out, result_err]
|
30
|
-
end
|
31
|
-
|
32
|
-
def reset
|
33
|
-
@file_path = ''
|
34
|
-
end
|
35
|
-
|
36
|
-
def process_result(formatter, result)
|
37
|
-
results_line = result.lines[get_step_result_line(result)]
|
38
|
-
|
39
|
-
failing_steps_count = failing_steps_count(results_line)
|
40
|
-
pending_steps_count = pending_steps_count(results_line)
|
41
|
-
total_steps_count = total_steps_count(results_line)
|
42
|
-
|
43
|
-
(failing_steps_count + pending_steps_count).times do
|
44
|
-
formatter.example_failed nil
|
45
|
-
end
|
46
|
-
|
47
|
-
(total_steps_count - failing_steps_count - pending_steps_count).times do
|
48
|
-
formatter.example_passed nil
|
49
|
-
end
|
50
|
-
|
51
|
-
pending_steps_count.times do
|
52
|
-
formatter.example_pending nil
|
53
|
-
end
|
54
|
-
end
|
55
|
-
|
56
|
-
def get_step_result_line(rspec_output)
|
57
|
-
rspec_output.lines.each_with_index do |line, line_number|
|
58
|
-
if /(\d*) examples?, (\d*) failures?/ =~ line
|
59
|
-
return line_number
|
60
|
-
end
|
61
|
-
end
|
62
|
-
|
63
|
-
-1
|
64
|
-
end
|
65
|
-
|
66
|
-
private
|
67
|
-
|
68
|
-
def failing_steps_count(results_line)
|
69
|
-
if results_line.match(/(\d+) failure/)
|
70
|
-
results_line.match(/(\d+) failure/)[1].to_i
|
71
|
-
else
|
72
|
-
0
|
73
|
-
end
|
74
|
-
end
|
75
|
-
|
76
|
-
def pending_steps_count(results_line)
|
77
|
-
if results_line.match(/(\d+) pending/)
|
78
|
-
results_line.match(/(\d+) pending/)[1].to_i
|
79
|
-
else
|
80
|
-
0
|
81
|
-
end
|
82
|
-
end
|
83
|
-
|
84
|
-
def total_steps_count(results_line)
|
85
|
-
if results_line.match(/(\d+) example/)
|
86
|
-
results_line.match(/(\d+) example/)[1].to_i
|
87
|
-
else
|
88
|
-
0
|
89
|
-
end
|
90
|
-
end
|
91
|
-
end
|
92
|
-
end
|
93
|
-
end
|