xcpretty 0.2.2 → 0.2.3

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.
@@ -20,6 +20,11 @@ module XCPretty
20
20
  "> Building Pods/The Spacer [Debug]"
21
21
  end
22
22
 
23
+ it "formats build target/project/configuration with target" do
24
+ @formatter.format_aggregate_target("Be Aggro", "AggregateExample", "Debug").should ==
25
+ "> Aggregate AggregateExample/Be Aggro [Debug]"
26
+ end
27
+
23
28
  it "formats analyze target/project/configuration with target" do
24
29
  @formatter.format_analyze_target("The Spacer", "Pods", "Debug").should ==
25
30
  "> Analyzing Pods/The Spacer [Debug]"
@@ -7,7 +7,6 @@ require 'fixtures/constants'
7
7
  module XCPretty
8
8
 
9
9
  describe Parser do
10
-
11
10
  before(:each) do
12
11
  @formatter = Formatter.new(false, false)
13
12
  @parser = Parser.new(@formatter)
@@ -23,11 +22,21 @@ module XCPretty
23
22
  @parser.parse(SAMPLE_ANALYZE_SHALLOW)
24
23
  end
25
24
 
25
+ it "parses analyze for a C++ target" do
26
+ @formatter.should receive(:format_analyze).with("CCChip8DisplayView.cpp", "CocoaChip/CCChip8DisplayView.cpp")
27
+ @parser.parse(SAMPLE_ANALYZE_CPP)
28
+ end
29
+
26
30
  it "parses build target" do
27
31
  @formatter.should receive(:format_build_target).with("The Spacer", "Pods", "Debug")
28
32
  @parser.parse(SAMPLE_BUILD)
29
33
  end
30
34
 
35
+ it "parses aggregate target" do
36
+ @formatter.should receive(:format_aggregate_target).with("Be Aggro", "AggregateExample", "Debug")
37
+ @parser.parse(SAMPLE_AGGREGATE_TARGET)
38
+ end
39
+
31
40
  it "parses analyze target" do
32
41
  @formatter.should receive(:format_analyze_target).with("The Spacer", "Pods", "Debug")
33
42
  @parser.parse(SAMPLE_ANALYZE_TARGET)
@@ -148,6 +157,11 @@ module XCPretty
148
157
  @parser.parse(SAMPLE_LD)
149
158
  end
150
159
 
160
+ it "parses Ld with relative path" do
161
+ @formatter.should receive(:format_linking).with('ObjectiveSugar', 'normal', 'i386')
162
+ @parser.parse(SAMPLE_LD_RELATIVE)
163
+ end
164
+
151
165
  it "parses Libtool" do
152
166
  @formatter.should receive(:format_libtool).with('libPods-ObjectiveSugarTests-Kiwi.a')
153
167
  @parser.parse(SAMPLE_LIBTOOL)
@@ -306,6 +320,12 @@ module XCPretty
306
320
  @parser.parse(SAMPLE_OCUNIT_PASSED_TEST_RUN_COMPLETION)
307
321
  end
308
322
 
323
+ it "parses ocunit test assertion failure" do
324
+ @formatter.should receive(:format_failing_test).with('viewUITests.vmtAboutWindow', 'testConnectToDesktop', "UI Testing Failure - Unable to find hit point for element Button 0x608001165880: {{74.0, -54.0}, {44.0, 38.0}}, label: 'Disconnect'", '<unknown>:0')
325
+ @parser.parse(SAMPLE_OCUNIT_TEST_ASSERTION_FAILURE)
326
+ @parser.parse(SAMPLE_OCUNIT_CASE_FAILURE)
327
+ end
328
+
309
329
  it "parses ocunit test run failed" do
310
330
  @formatter.should receive(:format_test_run_finished).with('Macadamia.octest', '2014-09-24 23:09:20 +0000.')
311
331
  @parser.parse(SAMPLE_OCUNIT_FAILED_TEST_RUN_COMPLETION)
@@ -479,6 +499,10 @@ module XCPretty
479
499
  @parser.parse(reporter)
480
500
  end
481
501
 
502
+ def given_a_test_failed(reporter = SAMPLE_OCUNIT_CASE_FAILURE)
503
+ @parser.parse(reporter)
504
+ end
505
+
482
506
  def given_tests_are_done(reporter = SAMPLE_OCUNIT_TEST_RUN_COMPLETION)
483
507
  @parser.parse(reporter)
484
508
  end
@@ -519,6 +543,14 @@ module XCPretty
519
543
  }
520
544
  end
521
545
 
546
+ it "knows when tests fail for XCTest" do
547
+ @formatter.should_receive(:format_test_summary).once
548
+ given_tests_have_started
549
+ given_a_test_failed
550
+ given_tests_are_done
551
+ @parser.parse(SAMPLE_EXECUTED_TESTS_WITH_FAILURE)
552
+ end
553
+
522
554
  it "prints OCunit / XCTest summary twice if tests executed twice" do
523
555
  @formatter.should_receive(:format_test_summary).twice
524
556
  2.times {
@@ -539,4 +571,3 @@ module XCPretty
539
571
 
540
572
  end
541
573
  end
542
-
@@ -0,0 +1,20 @@
1
+ require 'xcpretty'
2
+ require 'tempfile'
3
+
4
+ module XCPretty
5
+ describe JUnit do
6
+ before(:each) do
7
+ @reporter_file = Tempfile.new('junit')
8
+ @formatter = JUnit.new(path: @reporter_file.path)
9
+ end
10
+
11
+ it "has name attribute in root node" do
12
+ test_name = "ReactiveCocoaTests.xctest"
13
+ @formatter.format_test_run_started(test_name)
14
+ @formatter.finish
15
+ document = REXML::Document.new(@reporter_file)
16
+ document.root.attributes['name'].should == test_name
17
+ end
18
+ end
19
+ end
20
+
@@ -0,0 +1,40 @@
1
+ # encoding: utf-8
2
+
3
+ require 'xcpretty'
4
+ require 'fixtures/constants'
5
+
6
+ module XCPretty
7
+
8
+ describe Reporter do
9
+
10
+ before(:each) do
11
+ @reporter = Reporter.new(path: "example_file")
12
+ end
13
+
14
+ it "reports a passing test" do
15
+ @reporter.format_passing_test("RACCommandSpec", "_tupleByAddingObject__should_add_a_non_nil_object", "0.001")
16
+ expect(@reporter.tests).to include("_tupleByAddingObject__should_add_a_non_nil_object PASSED")
17
+ end
18
+
19
+ it "reports a failing test" do
20
+ @reporter.format_failing_test("RACCommandSpec", "enabled_signal_should_send_YES_while_executing_is_YES_and_allowsConcurrentExecution_is_YES", "expected: 1, got: 0", 'path/to/file')
21
+ expect(@reporter.tests).to include("enabled_signal_should_send_YES_while_executing_is_YES_and_allowsConcurrentExecution_is_YES in path/to/file FAILED: expected: 1, got: 0")
22
+ end
23
+
24
+ it "reports a pending test" do
25
+ @reporter.format_pending_test("RACCommandSpec", "_tupleByAddingObject__should_add_a_non_nil_object")
26
+ expect(@reporter.tests).to include("_tupleByAddingObject__should_add_a_non_nil_object IS PENDING")
27
+ end
28
+
29
+ it "writes to disk" do
30
+ @reporter.format_passing_test("RACCommandSpec", "_tupleByAddingObject__should_add_a_non_nil_object", "0.001")
31
+ file = double("file stub")
32
+ File.should_receive(:open).with("example_file", "w").and_yield(file)
33
+ file.should_receive(:write).with("_tupleByAddingObject__should_add_a_non_nil_object PASSED\nFINISHED RUNNING 1 TESTS WITH 0 FAILURES")
34
+ @reporter.write_report
35
+
36
+ end
37
+
38
+ end
39
+ end
40
+
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xcpretty
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marin Usalj
@@ -9,90 +9,90 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-12-29 00:00:00.000000000 Z
12
+ date: 2016-09-28 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rouge
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - "~>"
18
+ - - ~>
19
19
  - !ruby/object:Gem::Version
20
20
  version: '1.8'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - "~>"
25
+ - - ~>
26
26
  - !ruby/object:Gem::Version
27
27
  version: '1.8'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: bundler
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - "~>"
32
+ - - ~>
33
33
  - !ruby/object:Gem::Version
34
34
  version: '1.3'
35
35
  type: :development
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - "~>"
39
+ - - ~>
40
40
  - !ruby/object:Gem::Version
41
41
  version: '1.3'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: rake
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - ">="
46
+ - - '>='
47
47
  - !ruby/object:Gem::Version
48
48
  version: '0'
49
49
  type: :development
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - ">="
53
+ - - '>='
54
54
  - !ruby/object:Gem::Version
55
55
  version: '0'
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: rubocop
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - "~>"
60
+ - - ~>
61
61
  - !ruby/object:Gem::Version
62
62
  version: 0.34.0
63
63
  type: :development
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - "~>"
67
+ - - ~>
68
68
  - !ruby/object:Gem::Version
69
69
  version: 0.34.0
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: rspec
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - "~>"
74
+ - - ~>
75
75
  - !ruby/object:Gem::Version
76
76
  version: '2.0'
77
77
  type: :development
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - "~>"
81
+ - - ~>
82
82
  - !ruby/object:Gem::Version
83
83
  version: '2.0'
84
84
  - !ruby/object:Gem::Dependency
85
85
  name: cucumber
86
86
  requirement: !ruby/object:Gem::Requirement
87
87
  requirements:
88
- - - "~>"
88
+ - - ~>
89
89
  - !ruby/object:Gem::Version
90
90
  version: '1.0'
91
91
  type: :development
92
92
  prerelease: false
93
93
  version_requirements: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - "~>"
95
+ - - ~>
96
96
  - !ruby/object:Gem::Version
97
97
  version: '1.0'
98
98
  description: "\n Xcodebuild formatter designed to be piped with `xcodebuild`,\n
@@ -106,11 +106,11 @@ executables:
106
106
  extensions: []
107
107
  extra_rdoc_files: []
108
108
  files:
109
- - ".gitignore"
110
- - ".hound.yml"
111
- - ".kick"
112
- - ".rubocop.yml"
113
- - ".travis.yml"
109
+ - .gitignore
110
+ - .hound.yml
111
+ - .kick
112
+ - .rubocop.yml
113
+ - .travis.yml
114
114
  - CHANGELOG.md
115
115
  - CONTRIBUTING.md
116
116
  - Gemfile
@@ -122,12 +122,14 @@ files:
122
122
  - features/assets/RACCommandSpec, line 80, hello xcpretty.png
123
123
  - features/assets/apple_raw.png
124
124
  - features/custom_formatter.feature
125
+ - features/custom_reporter.feature
125
126
  - features/fixtures/xcodebuild.log
126
127
  - features/html_report.feature
127
128
  - features/json_compilation_database_report.feature
128
129
  - features/junit_report.feature
129
130
  - features/knock_format.feature
130
131
  - features/simple_format.feature
132
+ - features/steps/custom_reporter_steps.rb
131
133
  - features/steps/formatting_steps.rb
132
134
  - features/steps/html_steps.rb
133
135
  - features/steps/json_steps.rb
@@ -150,6 +152,7 @@ files:
150
152
  - lib/xcpretty/reporters/html.rb
151
153
  - lib/xcpretty/reporters/json_compilation_database.rb
152
154
  - lib/xcpretty/reporters/junit.rb
155
+ - lib/xcpretty/reporters/reporter.rb
153
156
  - lib/xcpretty/snippet.rb
154
157
  - lib/xcpretty/syntax.rb
155
158
  - lib/xcpretty/term.rb
@@ -157,10 +160,12 @@ files:
157
160
  - spec/fixtures/NSStringTests.m
158
161
  - spec/fixtures/constants.rb
159
162
  - spec/fixtures/custom_formatter.rb
163
+ - spec/fixtures/custom_reporter.rb
160
164
  - spec/fixtures/oneliner.m
161
165
  - spec/fixtures/raw_kiwi_compilation_fail.txt
162
166
  - spec/fixtures/raw_kiwi_fail.txt
163
167
  - spec/fixtures/raw_specta_fail.txt
168
+ - spec/fixtures/raw_xcodebuild_uitest_fail.txt
164
169
  - spec/spec_helper.rb
165
170
  - spec/support/matchers/colors.rb
166
171
  - spec/xcpretty/ansi_spec.rb
@@ -169,6 +174,8 @@ files:
169
174
  - spec/xcpretty/formatters/simple_spec.rb
170
175
  - spec/xcpretty/parser_spec.rb
171
176
  - spec/xcpretty/printer_spec.rb
177
+ - spec/xcpretty/reporters/junit_spec.rb
178
+ - spec/xcpretty/reporters/reporter_spec.rb
172
179
  - spec/xcpretty/snippet_spec.rb
173
180
  - spec/xcpretty/syntax_spec.rb
174
181
  - spec/xcpretty/term_spec.rb
@@ -183,17 +190,17 @@ require_paths:
183
190
  - lib
184
191
  required_ruby_version: !ruby/object:Gem::Requirement
185
192
  requirements:
186
- - - ">="
193
+ - - '>='
187
194
  - !ruby/object:Gem::Version
188
195
  version: 2.0.0
189
196
  required_rubygems_version: !ruby/object:Gem::Requirement
190
197
  requirements:
191
- - - ">="
198
+ - - '>='
192
199
  - !ruby/object:Gem::Version
193
200
  version: '0'
194
201
  requirements: []
195
202
  rubyforge_project:
196
- rubygems_version: 2.4.5.1
203
+ rubygems_version: 2.0.14.1
197
204
  signing_key:
198
205
  specification_version: 4
199
206
  summary: xcodebuild formatter done right
@@ -201,12 +208,14 @@ test_files:
201
208
  - features/assets/RACCommandSpec, line 80, hello xcpretty.png
202
209
  - features/assets/apple_raw.png
203
210
  - features/custom_formatter.feature
211
+ - features/custom_reporter.feature
204
212
  - features/fixtures/xcodebuild.log
205
213
  - features/html_report.feature
206
214
  - features/json_compilation_database_report.feature
207
215
  - features/junit_report.feature
208
216
  - features/knock_format.feature
209
217
  - features/simple_format.feature
218
+ - features/steps/custom_reporter_steps.rb
210
219
  - features/steps/formatting_steps.rb
211
220
  - features/steps/html_steps.rb
212
221
  - features/steps/json_steps.rb
@@ -220,10 +229,12 @@ test_files:
220
229
  - spec/fixtures/NSStringTests.m
221
230
  - spec/fixtures/constants.rb
222
231
  - spec/fixtures/custom_formatter.rb
232
+ - spec/fixtures/custom_reporter.rb
223
233
  - spec/fixtures/oneliner.m
224
234
  - spec/fixtures/raw_kiwi_compilation_fail.txt
225
235
  - spec/fixtures/raw_kiwi_fail.txt
226
236
  - spec/fixtures/raw_specta_fail.txt
237
+ - spec/fixtures/raw_xcodebuild_uitest_fail.txt
227
238
  - spec/spec_helper.rb
228
239
  - spec/support/matchers/colors.rb
229
240
  - spec/xcpretty/ansi_spec.rb
@@ -232,7 +243,8 @@ test_files:
232
243
  - spec/xcpretty/formatters/simple_spec.rb
233
244
  - spec/xcpretty/parser_spec.rb
234
245
  - spec/xcpretty/printer_spec.rb
246
+ - spec/xcpretty/reporters/junit_spec.rb
247
+ - spec/xcpretty/reporters/reporter_spec.rb
235
248
  - spec/xcpretty/snippet_spec.rb
236
249
  - spec/xcpretty/syntax_spec.rb
237
250
  - spec/xcpretty/term_spec.rb
238
- has_rdoc: