ocunit2junit 1.1 → 1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/bin/ocunit2junit +27 -6
- metadata +3 -3
data/bin/ocunit2junit
CHANGED
@@ -20,6 +20,7 @@
|
|
20
20
|
#
|
21
21
|
# Where to put the XML-files from your unit tests
|
22
22
|
TEST_REPORTS_FOLDER = "test-reports"
|
23
|
+
SUPPORT_KIWI = true
|
23
24
|
#
|
24
25
|
#
|
25
26
|
# Don't edit below this line
|
@@ -47,11 +48,18 @@ class ReportParser
|
|
47
48
|
def parse_input
|
48
49
|
@piped_input.each do |piped_row|
|
49
50
|
puts piped_row
|
51
|
+
|
52
|
+
description_results = piped_row.scan(/\s\'(.+)\'\s/)
|
53
|
+
if description_results and description_results[0] and description_results[0]
|
54
|
+
description = description_results[0][0]
|
55
|
+
end
|
56
|
+
|
50
57
|
case piped_row
|
51
58
|
|
52
59
|
when /Test Suite '(\S+)'.*started at\s+(.*)/
|
53
60
|
t = Time.parse($2.to_s)
|
54
61
|
handle_start_test_suite(t)
|
62
|
+
@last_description = nil
|
55
63
|
|
56
64
|
when /Test Suite '(\S+)'.*finished at\s+(.*)./
|
57
65
|
t = Time.parse($2.to_s)
|
@@ -59,24 +67,25 @@ class ReportParser
|
|
59
67
|
|
60
68
|
when /Test Case '-\[\S+\s+(\S+)\]' started./
|
61
69
|
test_case = $1
|
70
|
+
@last_description = nil
|
62
71
|
|
63
72
|
when /Test Case '-\[\S+\s+(\S+)\]' passed \((.*) seconds\)/
|
64
|
-
test_case = $1
|
73
|
+
test_case = get_test_case_name($1, @last_description)
|
65
74
|
test_case_duration = $2.to_f
|
66
75
|
handle_test_passed(test_case,test_case_duration)
|
67
76
|
|
68
77
|
when /(.*): error: -\[(\S+) (\S+)\] : (.*)/
|
69
78
|
error_location = $1
|
70
79
|
test_suite = $2
|
71
|
-
test_case = $3
|
72
80
|
error_message = $4
|
73
|
-
|
74
|
-
|
81
|
+
test_case = get_test_case_name($3, description)
|
82
|
+
handle_test_error(test_suite,test_case,error_message,error_location)
|
83
|
+
|
75
84
|
when /Test Case '-\[\S+ (\S+)\]' failed \((\S+) seconds\)/
|
76
|
-
test_case = $1
|
85
|
+
test_case = get_test_case_name($1, @last_description)
|
77
86
|
test_case_duration = $2.to_f
|
78
87
|
handle_test_failed(test_case,test_case_duration)
|
79
|
-
|
88
|
+
|
80
89
|
when /failed with exit code (\d+)/
|
81
90
|
@exit_code = $1.to_i
|
82
91
|
|
@@ -84,6 +93,10 @@ class ReportParser
|
|
84
93
|
/BUILD FAILED/
|
85
94
|
@exit_code = -1;
|
86
95
|
end
|
96
|
+
|
97
|
+
unless description.nil?
|
98
|
+
@last_description = description
|
99
|
+
end
|
87
100
|
end
|
88
101
|
end
|
89
102
|
|
@@ -150,6 +163,14 @@ class ReportParser
|
|
150
163
|
@total_failed_test_cases +=1
|
151
164
|
@tests_results[test_case] = test_case_duration
|
152
165
|
end
|
166
|
+
|
167
|
+
def get_test_case_name(test_case, description)
|
168
|
+
if SUPPORT_KIWI and test_case == "example" and !description.nil?
|
169
|
+
description
|
170
|
+
else
|
171
|
+
test_case
|
172
|
+
end
|
173
|
+
end
|
153
174
|
|
154
175
|
end
|
155
176
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ocunit2junit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '1.
|
4
|
+
version: '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: 2012-
|
12
|
+
date: 2012-11-13 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: ! 'Simply pipe your xcodebuild output through ocunit2junit: xcodebuild
|
15
15
|
... | ocunit2junit.rb'
|
@@ -43,5 +43,5 @@ rubyforge_project:
|
|
43
43
|
rubygems_version: 1.8.24
|
44
44
|
signing_key:
|
45
45
|
specification_version: 3
|
46
|
-
summary: A script that converts OCUnit output to JUnit style XML output.
|
46
|
+
summary: A script that converts OCUnit (and Kiwi) output to JUnit style XML output.
|
47
47
|
test_files: []
|