multicuke 0.1.1 → 0.1.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.
- data/lib/multicuke.rb +4 -0
- data/lib/multicuke/runner.rb +9 -6
- data/lib/multicuke/version.rb +1 -1
- data/spec/dryrun_spec.rb +5 -0
- data/spec/fork_spec.rb +1 -1
- data/spec/system_command_spec.rb +1 -1
- metadata +2 -2
data/lib/multicuke.rb
CHANGED
data/lib/multicuke/runner.rb
CHANGED
@@ -1,6 +1,3 @@
|
|
1
|
-
require 'fileutils'
|
2
|
-
require 'builder'
|
3
|
-
require 'nokogiri'
|
4
1
|
require 'multicuke/reports_index'
|
5
2
|
|
6
3
|
module Multicuke
|
@@ -11,6 +8,10 @@ module Multicuke
|
|
11
8
|
def run(full_command_as_array)
|
12
9
|
system *full_command_as_array
|
13
10
|
end
|
11
|
+
|
12
|
+
def exit(status = 0)
|
13
|
+
Kernel.exit(status == 0)
|
14
|
+
end
|
14
15
|
|
15
16
|
end
|
16
17
|
|
@@ -103,16 +104,19 @@ module Multicuke
|
|
103
104
|
|
104
105
|
def start
|
105
106
|
FileUtils.mkdir_p reports_path
|
106
|
-
launch_process_per_dir
|
107
|
+
exit_status = launch_process_per_dir
|
107
108
|
collect_results
|
108
109
|
reports = ReportsIndex.new(reports_path, features_dirs).generate
|
109
110
|
puts "See reports index at #{reports.index_path}" if reports
|
111
|
+
system_command.exit(exit_status)
|
110
112
|
end
|
111
113
|
|
112
114
|
private
|
113
115
|
|
114
116
|
def launch_process_per_dir
|
115
|
-
|
117
|
+
if dry_run
|
118
|
+
0
|
119
|
+
else
|
116
120
|
features_dirs.each { |features_dir|
|
117
121
|
report_file_path = File.join(reports_path, "#{features_dir.name}.html")
|
118
122
|
feature_full_path = File.join(features_root_path, "#{features_dir.name}")
|
@@ -130,7 +134,6 @@ module Multicuke
|
|
130
134
|
pid, status = *process
|
131
135
|
result + status.exitstatus
|
132
136
|
}
|
133
|
-
exit(global_exit_status == 0)
|
134
137
|
end
|
135
138
|
end
|
136
139
|
|
data/lib/multicuke/version.rb
CHANGED
data/spec/dryrun_spec.rb
CHANGED
@@ -4,6 +4,8 @@ module Multicuke
|
|
4
4
|
|
5
5
|
describe "Reporting" do
|
6
6
|
|
7
|
+
let(:system_command_stub) { stub('SystemCommand stub').as_null_object }
|
8
|
+
|
7
9
|
after(:each) do
|
8
10
|
FileUtils.rm_r(Dir.glob("#{RESULTS_DIR_PATH}/*"), :force => true)
|
9
11
|
end
|
@@ -14,6 +16,7 @@ module Multicuke
|
|
14
16
|
r.output_dir_name = "cuke_reports"
|
15
17
|
r.dry_run = true
|
16
18
|
r.output_path = RESULTS_DIR_PATH
|
19
|
+
r.system_command = system_command_stub
|
17
20
|
end
|
18
21
|
|
19
22
|
File.should_not exist("#{RESULTS_DIR_PATH}/cuke_reports")
|
@@ -39,6 +42,7 @@ module Multicuke
|
|
39
42
|
r.excluded_dirs = ["exclude_me_features"]
|
40
43
|
r.dry_run = true
|
41
44
|
r.output_path = RESULTS_DIR_PATH
|
45
|
+
r.system_command = system_command_stub
|
42
46
|
end
|
43
47
|
|
44
48
|
runner.start
|
@@ -56,6 +60,7 @@ module Multicuke
|
|
56
60
|
r.included_only_dirs = ["addition"]
|
57
61
|
r.dry_run = true
|
58
62
|
r.output_path = RESULTS_DIR_PATH
|
63
|
+
r.system_command = system_command_stub
|
59
64
|
end
|
60
65
|
|
61
66
|
File.should_not exist("#{RESULTS_DIR_PATH}/cucumber_reports")
|
data/spec/fork_spec.rb
CHANGED
@@ -16,7 +16,7 @@ module Multicuke
|
|
16
16
|
r.output_path = RESULTS_DIR_PATH
|
17
17
|
end
|
18
18
|
|
19
|
-
runner.start
|
19
|
+
expect{runner.start}.to raise_error SystemExit
|
20
20
|
|
21
21
|
File.should exist("#{RESULTS_DIR_PATH}/cucumber_reports/addition.html")
|
22
22
|
File.should exist("#{RESULTS_DIR_PATH}/cucumber_reports/division.html")
|
data/spec/system_command_spec.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: multicuke
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-04-
|
12
|
+
date: 2013-04-08 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: cucumber
|