xcpretty 0.2.3 → 0.2.4
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/.gitignore +1 -0
- data/.travis.yml +4 -3
- data/Rakefile +7 -16
- data/features/simple_format.feature +19 -0
- data/features/steps/formatting_steps.rb +32 -0
- data/lib/xcpretty/formatters/formatter.rb +5 -0
- data/lib/xcpretty/parser.rb +42 -35
- data/lib/xcpretty/reporters/reporter.rb +2 -1
- data/lib/xcpretty/version.rb +1 -1
- data/spec/fixtures/constants.rb +44 -4
- data/spec/xcpretty/formatters/formatter_spec.rb +6 -2
- data/spec/xcpretty/parser_spec.rb +32 -18
- data/spec/xcpretty/reporters/reporter_spec.rb +3 -3
- data/xcpretty.gemspec +1 -1
- metadata +7 -9
- data/spec/fixtures/raw_xcodebuild_uitest_fail.txt +0 -388
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 093859ed58db9406724d77694f6664b45e24e716
|
4
|
+
data.tar.gz: 1170dd4c63ab10c2d3ea785f99db697cb9b4dfdd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8b632dcdfd5b2c3eb2b874a2d0a6a3500290907565a1e70d8e1a2814aa2b5958269f7d80e7f861439c2a1e0da0b7c94d57491893b441e9ea020c43a8c7db6e8b
|
7
|
+
data.tar.gz: c55f5c50f4e1d832ed84df1c67a07cbab241acd2aeb4046533df524862e08ef4f3b8374507064758e9f2eb387a952454386274f79f96e0e6ec1407c15e7a1806
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
data/Rakefile
CHANGED
@@ -1,26 +1,17 @@
|
|
1
|
-
require
|
2
|
-
require 'rubocop/rake_task'
|
3
|
-
require 'rspec/core/rake_task'
|
4
|
-
require 'cucumber/rake/task'
|
1
|
+
require 'bundler/gem_tasks'
|
5
2
|
|
6
3
|
task :kick do
|
7
4
|
sh 'bundle exec kicker -r ruby'
|
8
5
|
end
|
9
6
|
|
10
|
-
|
7
|
+
task :spec do
|
8
|
+
sh 'bundle exec rspec --color --format=doc'
|
11
9
|
end
|
12
10
|
|
13
|
-
|
14
|
-
|
11
|
+
task :cucumber do
|
12
|
+
sh 'bundle exec cucumber'
|
15
13
|
end
|
16
14
|
|
17
|
-
|
18
|
-
|
15
|
+
task :lint do
|
16
|
+
sh 'bundle exec rubocop'
|
19
17
|
end
|
20
|
-
|
21
|
-
task :ci do
|
22
|
-
Rake::Task[:spec].invoke
|
23
|
-
Rake::Task[:cucumber].invoke
|
24
|
-
Rake::Task[:lint].invoke
|
25
|
-
end
|
26
|
-
|
@@ -167,6 +167,11 @@ Feature: Showing build output in simple format
|
|
167
167
|
When I pipe to xcpretty with "--simple --no-color"
|
168
168
|
Then I should see a successful code signing message
|
169
169
|
|
170
|
+
Scenario: Showing target will not be code signed warning
|
171
|
+
Given I have a target which will not be code signed
|
172
|
+
When I pipe to xcpretty with "--simple --color"
|
173
|
+
Then I should see a target will not be code signed warning
|
174
|
+
|
170
175
|
Scenario: Showing preprocess
|
171
176
|
Given I have a file to preprocess
|
172
177
|
When I pipe to xcpretty with "--simple --no-color"
|
@@ -207,3 +212,17 @@ Feature: Showing build output in simple format
|
|
207
212
|
When I pipe to xcpretty with "--simple --color"
|
208
213
|
Then I should see a yellow warning message
|
209
214
|
|
215
|
+
Scenario: Showing provisioning profile doesn't support capability
|
216
|
+
Given the provisioning profile doesn't support capability
|
217
|
+
When I pipe to xcpretty with "--simple --no-color"
|
218
|
+
Then I should see the profile doesn't support capability message
|
219
|
+
|
220
|
+
Scenario: Showing provisioning profile doesn't include entitlement
|
221
|
+
Given the provisioning profile doesn't include entitlement
|
222
|
+
When I pipe to xcpretty with "--simple --no-color"
|
223
|
+
Then I should see the profile doesn't include entitlement message
|
224
|
+
|
225
|
+
Scenario: Showing code signing is required error
|
226
|
+
Given the target requires code signing
|
227
|
+
When I pipe to xcpretty with "--simple --no-color"
|
228
|
+
Then I should see the code signing is requried message
|
@@ -68,6 +68,10 @@ Given(/^I have a framework to code sign$/) do
|
|
68
68
|
add_run_input SAMPLE_CODESIGN_FRAMEWORK
|
69
69
|
end
|
70
70
|
|
71
|
+
Given(/^I have a target which will not be code signed$/) do
|
72
|
+
add_run_input SAMPLE_WILL_NOT_BE_CODE_SIGNED
|
73
|
+
end
|
74
|
+
|
71
75
|
Given(/^I have a file to preprocess$/) do
|
72
76
|
add_run_input SAMPLE_PREPROCESS
|
73
77
|
end
|
@@ -128,6 +132,18 @@ Given(/^I have completed a clean$/) do
|
|
128
132
|
add_run_input SAMPLE_CLEAN_SUCCEEDED
|
129
133
|
end
|
130
134
|
|
135
|
+
Given(/^the provisioning profile doesn't support capability$/) do
|
136
|
+
add_run_input SAMPLE_PROFILE_DOESNT_SUPPORT_CAPABILITY_ERROR
|
137
|
+
end
|
138
|
+
|
139
|
+
Given(/^the provisioning profile doesn't include entitlement$/) do
|
140
|
+
add_run_input SAMPLE_PROFILE_DOESNT_INCLUDE_ENTITLEMENT_ERROR
|
141
|
+
end
|
142
|
+
|
143
|
+
Given(/^the target requires code signing$/) do
|
144
|
+
add_run_input SAMPLE_CODE_SIGNING_IS_REQUIRED_ERROR
|
145
|
+
end
|
146
|
+
|
131
147
|
Then(/^I should see a "(\w+)" completion message$/) do |phase|
|
132
148
|
run_output.should start_with("▸ #{phase.capitalize} Succeeded")
|
133
149
|
end
|
@@ -185,6 +201,10 @@ Then(/^I should see a successful code signing message$/) do
|
|
185
201
|
run_output.should start_with("▸ Signing")
|
186
202
|
end
|
187
203
|
|
204
|
+
Then(/^I should see a target will not be code signed warning$/) do
|
205
|
+
run_output.should include(yellow("⚠️ FrameworkName will not be code signed because its settings don't specify a development team."))
|
206
|
+
end
|
207
|
+
|
188
208
|
Then(/^I should see a successful preprocessing message$/) do
|
189
209
|
run_output.should start_with("▸ Preprocessing")
|
190
210
|
end
|
@@ -336,3 +356,15 @@ Then(/^I should see text matching "(.*?)"$/) do |text|
|
|
336
356
|
run_output.lines.to_a.last.strip.should == text
|
337
357
|
end
|
338
358
|
|
359
|
+
Then(/^I should see the profile doesn't support capability message$/) do
|
360
|
+
run_output.should include("Provisioning profile \"Profile Name\" doesn't support the Push Notifications capability.")
|
361
|
+
end
|
362
|
+
|
363
|
+
Then(/^I should see the profile doesn't include entitlement message$/) do
|
364
|
+
run_output.should include("Provisioning profile \"Profile Name\" doesn't include the aps-environment entitlement.")
|
365
|
+
end
|
366
|
+
|
367
|
+
Then(/^I should see the code signing is requried message$/) do
|
368
|
+
run_output.should include("Code signing is required for product type 'Application' in SDK 'iOS 10.0'")
|
369
|
+
end
|
370
|
+
|
@@ -148,6 +148,10 @@ module XCPretty
|
|
148
148
|
"> #{file_paths.map { |path| path.split('/').last }.join("\n> ")}\n"
|
149
149
|
end
|
150
150
|
|
151
|
+
def format_will_not_be_code_signed(message)
|
152
|
+
"#{yellow(warning_symbol + " " + message)}"
|
153
|
+
end
|
154
|
+
|
151
155
|
|
152
156
|
private
|
153
157
|
|
@@ -187,3 +191,4 @@ module XCPretty
|
|
187
191
|
|
188
192
|
end
|
189
193
|
end
|
194
|
+
|
data/lib/xcpretty/parser.rb
CHANGED
@@ -98,12 +98,12 @@ module XCPretty
|
|
98
98
|
# $2 = test_suite
|
99
99
|
# $3 = test_case
|
100
100
|
# $4 = reason
|
101
|
-
|
101
|
+
FAILING_TEST_MATCHER = /^\s*(.+:\d+):\serror:\s[\+\-]\[(.*)\s(.*)\]\s:(?:\s'.*'\s\[FAILED\],)?\s(.*)/
|
102
102
|
|
103
103
|
# @regex Captured groups
|
104
104
|
# $1 = file
|
105
105
|
# $2 = reason
|
106
|
-
|
106
|
+
UI_FAILING_TEST_MATCHER = /^\s{4}t = \s+\d+\.\d+s\s+Assertion Failure: (.*:\d+): (.*)$/
|
107
107
|
|
108
108
|
# @regex Captured groups
|
109
109
|
# $1 = dsym
|
@@ -123,24 +123,24 @@ module XCPretty
|
|
123
123
|
# $1 = suite
|
124
124
|
# $2 = test_case
|
125
125
|
# $3 = time
|
126
|
-
|
126
|
+
TEST_CASE_PASSED_MATCHER = /^\s*Test Case\s'-\[(.*)\s(.*)\]'\spassed\s\((\d*\.\d{3})\sseconds\)/
|
127
|
+
|
127
128
|
|
128
129
|
# @regex Captured groups
|
129
130
|
# $1 = suite
|
130
131
|
# $2 = test_case
|
131
|
-
|
132
|
-
PASSING_TEST_MATCHER = /^\s*Test Case\s'-\[(.*)\s(.*)\]'\spassed\s\((\d*\.\d{3})\sseconds\)/
|
132
|
+
TEST_CASE_STARTED_MATCHER = /^Test Case '-\[(.*) (.*)\]' started.$/
|
133
133
|
|
134
134
|
# @regex Captured groups
|
135
135
|
# $1 = suite
|
136
136
|
# $2 = test_case
|
137
|
-
|
137
|
+
TEST_CASE_PENDING_MATCHER = /^Test Case\s'-\[(.*)\s(.*)PENDING\]'\spassed/
|
138
138
|
|
139
139
|
# @regex Captured groups
|
140
140
|
# $1 = suite
|
141
141
|
# $2 = test_case
|
142
142
|
# $3 = time
|
143
|
-
|
143
|
+
TEST_CASE_MEASURED_MATCHER = /^[^:]*:[^:]*:\sTest Case\s'-\[(.*)\s(.*)\]'\smeasured\s\[Time,\sseconds\]\saverage:\s(\d*\.\d{3}),/
|
144
144
|
|
145
145
|
PHASE_SUCCESS_MATCHER = /^\*\*\s(.*)\sSUCCEEDED\s\*\*/
|
146
146
|
|
@@ -176,7 +176,7 @@ module XCPretty
|
|
176
176
|
# @regex Captured groups
|
177
177
|
# $1 = suite
|
178
178
|
# $2 = time
|
179
|
-
|
179
|
+
TEST_SUITE_STARTED_MATCHER = /^\s*Test Suite '(?:.*\/)?(.*[ox]ctest.*)' started at(.*)/
|
180
180
|
|
181
181
|
# @regex Captured groups
|
182
182
|
# $1 test suite name
|
@@ -211,6 +211,10 @@ module XCPretty
|
|
211
211
|
# @regex Captured groups
|
212
212
|
# $1 = whole warning
|
213
213
|
GENERIC_WARNING_MATCHER = /^warning:\s(.*)$/
|
214
|
+
|
215
|
+
# @regex Captured groups
|
216
|
+
# $1 = whole warning
|
217
|
+
WILL_NOT_BE_CODE_SIGNED_MATCHER = /^(.* will not be code signed because .*)$/
|
214
218
|
end
|
215
219
|
|
216
220
|
module Errors
|
@@ -222,6 +226,10 @@ module XCPretty
|
|
222
226
|
# $1 = whole error
|
223
227
|
CODESIGN_ERROR_MATCHER = /^(Code\s?Sign error:.*)$/
|
224
228
|
|
229
|
+
# @regex Captured groups
|
230
|
+
# $1 = whole error
|
231
|
+
CODE_SIGNING_REQUIRED_MATCHER = /^(Code signing is required for product type .* in SDK .*)$/
|
232
|
+
|
225
233
|
# @regex Captured groups
|
226
234
|
# $1 = file_path
|
227
235
|
# $2 = file_name
|
@@ -232,6 +240,10 @@ module XCPretty
|
|
232
240
|
# $1 cursor (with whitespaces and tildes)
|
233
241
|
CURSOR_MATCHER = /^([\s~]*\^[\s~]*)$/
|
234
242
|
|
243
|
+
# @regex Captured groups
|
244
|
+
# $1 = whole message
|
245
|
+
PROFILE_DOESNT_SUPPORT_OR_INCLUDE = /^(Provisioning profile .* doesn't .*)$/
|
246
|
+
|
235
247
|
# @regex Captured groups
|
236
248
|
# $1 = whole error.
|
237
249
|
# it varies a lot, not sure if it makes sense to catch everything separately
|
@@ -318,6 +330,8 @@ module XCPretty
|
|
318
330
|
formatter.format_codesign($1)
|
319
331
|
when CODESIGN_ERROR_MATCHER
|
320
332
|
formatter.format_error($1)
|
333
|
+
when CODE_SIGNING_REQUIRED_MATCHER
|
334
|
+
formatter.format_error($1)
|
321
335
|
when COMPILE_MATCHER
|
322
336
|
formatter.format_compile($2, $1)
|
323
337
|
when COMPILE_COMMAND_MATCHER
|
@@ -332,9 +346,13 @@ module XCPretty
|
|
332
346
|
formatter.format_copy_plist_file($1, $2)
|
333
347
|
when CPRESOURCE_MATCHER
|
334
348
|
formatter.format_cpresource($1)
|
349
|
+
when PROFILE_DOESNT_SUPPORT_OR_INCLUDE
|
350
|
+
formatter.format_error($1)
|
335
351
|
when EXECUTED_MATCHER
|
336
352
|
format_summary_if_needed(text)
|
337
|
-
when
|
353
|
+
when UI_FAILING_TEST_MATCHER
|
354
|
+
formatter.format_failing_test(@test_suite, @test_case, $2, $1)
|
355
|
+
when FAILING_TEST_MATCHER
|
338
356
|
formatter.format_failing_test($2, $3, $4, $1)
|
339
357
|
when FATAL_ERROR_MATCHER
|
340
358
|
formatter.format_error($1)
|
@@ -350,17 +368,11 @@ module XCPretty
|
|
350
368
|
formatter.format_libtool($1)
|
351
369
|
when LINKING_MATCHER
|
352
370
|
formatter.format_linking($1, $2, $3)
|
353
|
-
when
|
371
|
+
when TEST_CASE_MEASURED_MATCHER
|
354
372
|
formatter.format_measuring_test($1, $2, $3)
|
355
|
-
when
|
373
|
+
when TEST_CASE_PENDING_MATCHER
|
356
374
|
formatter.format_pending_test($1, $2)
|
357
|
-
when
|
358
|
-
if @current_assertion_failure
|
359
|
-
formatter.format_failing_test($1, $2, @current_assertion_failure[:reason], @current_assertion_failure[:file])
|
360
|
-
else
|
361
|
-
formatter.format_failing_test($1, $2, '', '')
|
362
|
-
end
|
363
|
-
when PASSING_TEST_MATCHER
|
375
|
+
when TEST_CASE_PASSED_MATCHER
|
364
376
|
formatter.format_passing_test($1, $2, $3)
|
365
377
|
when PODS_ERROR_MATCHER
|
366
378
|
formatter.format_error($1)
|
@@ -380,7 +392,7 @@ module XCPretty
|
|
380
392
|
formatter.format_pbxcp($1)
|
381
393
|
when TESTS_RUN_COMPLETION_MATCHER
|
382
394
|
formatter.format_test_run_finished($1, $3)
|
383
|
-
when
|
395
|
+
when TEST_SUITE_STARTED_MATCHER
|
384
396
|
formatter.format_test_run_started($1)
|
385
397
|
when TEST_SUITE_START_MATCHER
|
386
398
|
formatter.format_test_suite_started($1)
|
@@ -396,6 +408,8 @@ module XCPretty
|
|
396
408
|
formatter.format_shell_command($1, $2)
|
397
409
|
when GENERIC_WARNING_MATCHER
|
398
410
|
formatter.format_warning($1)
|
411
|
+
when WILL_NOT_BE_CODE_SIGNED_MATCHER
|
412
|
+
formatter.format_will_not_be_code_signed($1)
|
399
413
|
else
|
400
414
|
""
|
401
415
|
end
|
@@ -405,27 +419,19 @@ module XCPretty
|
|
405
419
|
|
406
420
|
def update_test_state(text)
|
407
421
|
case text
|
408
|
-
when
|
422
|
+
when TEST_SUITE_STARTED_MATCHER
|
409
423
|
@tests_done = false
|
410
424
|
@formatted_summary = false
|
411
425
|
@failures = {}
|
412
|
-
|
413
|
-
@
|
426
|
+
when TEST_CASE_STARTED_MATCHER
|
427
|
+
@test_suite = $1
|
428
|
+
@test_case = $2
|
414
429
|
when TESTS_RUN_COMPLETION_MATCHER
|
415
430
|
@tests_done = true
|
416
|
-
when TEST_UI_FAILURE_MATCHER
|
417
|
-
@current_assertion_failure = {
|
418
|
-
file: $1,
|
419
|
-
reason: $2
|
420
|
-
}
|
421
431
|
when FAILING_TEST_MATCHER
|
422
|
-
|
423
|
-
|
424
|
-
|
425
|
-
store_failure(nil, $1, $2, '')
|
426
|
-
end
|
427
|
-
when TEST_FAILURE_MATCHER
|
428
|
-
store_failure($1, $2, $3, $4)
|
432
|
+
store_failure(file: $1, test_suite: $2, test_case: $3, reason: $4)
|
433
|
+
when UI_FAILING_TEST_MATCHER
|
434
|
+
store_failure(file: $1, test_suite: @test_suite, test_case: @test_case, reason: $2)
|
429
435
|
end
|
430
436
|
end
|
431
437
|
|
@@ -543,7 +549,7 @@ module XCPretty
|
|
543
549
|
@formatting_linker_failure = false
|
544
550
|
end
|
545
551
|
|
546
|
-
def store_failure(file, test_suite, test_case, reason)
|
552
|
+
def store_failure(file: nil, test_suite: nil, test_case: nil, reason: nil)
|
547
553
|
failures_per_suite[test_suite] ||= []
|
548
554
|
failures_per_suite[test_suite] << {
|
549
555
|
file_path: file,
|
@@ -573,3 +579,4 @@ module XCPretty
|
|
573
579
|
|
574
580
|
end
|
575
581
|
end
|
582
|
+
|
@@ -50,7 +50,8 @@ module XCPretty
|
|
50
50
|
File.open(@filepath, 'w') do |f|
|
51
51
|
# WAT: get rid of these locals. BTW Cucumber fails if you remove them
|
52
52
|
output_string = @tests.join("\n")
|
53
|
-
output_string +=
|
53
|
+
output_string +=
|
54
|
+
"\nFINISHED RUNNING #{@test_count} TESTS WITH #{@fail_count} FAILURES"
|
54
55
|
f.write output_string
|
55
56
|
end
|
56
57
|
end
|
data/lib/xcpretty/version.rb
CHANGED
data/spec/fixtures/constants.rb
CHANGED
@@ -6,20 +6,47 @@ SAMPLE_OCUNIT_TEST_RUN_BEGINNING = "Test Suite '/Users/musalj/Library/Developer/
|
|
6
6
|
SAMPLE_KIWI_TEST_RUN_BEGINNING = "Test Suite 'ObjectiveRecordTests.xctest' started at 2013-12-10 06:15:39 +0000"
|
7
7
|
SAMPLE_SPECTA_TEST_RUN_BEGINNING = " Test Suite 'KIFTests.xctest' started at 2014-02-28 15:43:42 +0000"
|
8
8
|
SAMPLE_OCUNIT_TEST_RUN_COMPLETION = "Test Suite '/Users/musalj/Library/Developer/Xcode/DerivedData/ReactiveCocoa-eznxkbqvgfsnrvetemqloysuwagb/Build/Products/Test/ReactiveCocoaTests.octest(Tests)' finished at 2013-12-10 07:03:03 +0000."
|
9
|
-
SAMPLE_OCUNIT_TEST_ASSERTION_FAILURE = " t = 22.27s Assertion Failure: <unknown>:0: UI Testing Failure - Unable to find hit point for element Button 0x608001165880: {{74.0, -54.0}, {44.0, 38.0}}, label: 'Disconnect'"
|
10
9
|
SAMPLE_OCUNIT_FAILED_TEST_RUN_COMPLETION = "Test Suite '/Users/dm/someplace/Macadamia.octest' failed at 2014-09-24 23:09:20 +0000."
|
11
10
|
SAMPLE_OCUNIT_PASSED_TEST_RUN_COMPLETION = "Test Suite 'Hazelnuts.xctest' passed at 2014-09-24 23:09:20 +0000."
|
12
11
|
SAMPLE_KIWI_TEST_RUN_COMPLETION = "Test Suite 'ObjectiveRecordTests.xctest' finished at 2013-12-10 06:15:42 +0000."
|
13
12
|
SAMPLE_SPECTA_TEST_RUN_COMPLETION = " Test Suite 'KIFTests.xctest' finished at 2014-02-28 15:44:32 +0000."
|
14
13
|
|
15
14
|
SAMPLE_OCUNIT_SUITE_BEGINNING = "Test Suite 'RACKVOWrapperSpec' started at 2013-12-10 21:06:10 +0000"
|
16
|
-
SAMPLE_OCUNIT_CASE_BEGINNING = "Test Case '-[viewUITests.vmtAboutWindow testConnectToDesktop]' started."
|
17
|
-
SAMPLE_OCUNIT_CASE_FAILURE = "Test Case '-[viewUITests.vmtAboutWindow testConnectToDesktop]' failed (22.490 seconds)."
|
18
15
|
SAMPLE_SPECTA_SUITE_BEGINNING = " Test Suite 'All tests' started at 2014-02-28 19:07:41 +0000"
|
19
16
|
SAMPLE_KIWI_SUITE_COMPLETION = "Test Suite 'All tests' finished at 2013-12-08 04:26:49 +0000."
|
20
17
|
SAMPLE_OCUNIT_SUITE_COMPLETION = "Test Suite '/Users/musalj/Library/Developer/Xcode/DerivedData/ReactiveCocoa-eznxkbqvgfsnrvetemqloysuwagb/Build/Products/Test/ReactiveCocoaTests.octest(Tests)' finished at 2013-12-08 22:09:37 +0000."
|
21
18
|
SAMPLE_XCTEST_SUITE_COMPLETION = "Test Suite 'ObjectiveSugarTests.xctest' finished at 2013-12-09 04:42:13 +0000."
|
22
19
|
|
20
|
+
SAMPLE_UITEST_CASE_WITH_FAILURE = %Q(\
|
21
|
+
Test Case '-[viewUITests.vmtAboutWindow testConnectToDesktop]' started.
|
22
|
+
t = 0.00s Start Test at 2016-08-18 09:07:17.822
|
23
|
+
t = 0.00s Set Up
|
24
|
+
t = 0.00s Launch com.vmware.horizon
|
25
|
+
t = 1.38s Wait for app to idle
|
26
|
+
Wait for connect to desktop done
|
27
|
+
t = 19.06s Snapshot accessibility hierarchy for com.vmware.horizon
|
28
|
+
t = 20.31s Find: Descendants matching type Window
|
29
|
+
t = 20.32s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
30
|
+
Connect to desktop done
|
31
|
+
t = 20.32s Click "Disconnect" Button
|
32
|
+
t = 20.32s Wait for app to idle
|
33
|
+
t = 20.39s Find the "Disconnect" Button
|
34
|
+
t = 20.39s Snapshot accessibility hierarchy for com.vmware.horizon
|
35
|
+
t = 20.53s Find: Descendants matching type Window
|
36
|
+
t = 20.53s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
37
|
+
t = 21.54s Find the "Disconnect" Button (retry 1)
|
38
|
+
t = 21.54s Snapshot accessibility hierarchy for com.vmware.horizon
|
39
|
+
t = 21.80s Find: Descendants matching type Window
|
40
|
+
t = 21.80s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
41
|
+
t = 21.81s Find: Descendants matching type Toolbar
|
42
|
+
t = 21.81s Find: Descendants matching type Button
|
43
|
+
t = 21.81s Find: Elements matching predicate '"Disconnect" IN identifiers'
|
44
|
+
t = 21.81s Synthesize event
|
45
|
+
t = 22.27s Assertion Failure: <unknown>:0: UI Testing Failure - Unable to find hit point for element Button 0x608001165880: {{74.0, -54.0}, {44.0, 38.0}}, label: 'Disconnect'
|
46
|
+
t = 22.29s Tear Down
|
47
|
+
Test Case '-[viewUITests.vmtAboutWindow testConnectToDesktop]' failed (22.490 seconds).
|
48
|
+
)
|
49
|
+
SAMPLE_XCTEST_FAILURE = ""
|
23
50
|
SAMPLE_KIWI_FAILURE = "/Users/musalj/code/OSS/ObjectiveSugar/Example/ObjectiveSugarTests/NSNumberTests.m:49: error: -[NumberAdditions Iterators_TimesIteratesTheExactNumberOfTimes] : 'Iterators, times: iterates the exact number of times' [FAILED], expected subject to equal 4, got 5"
|
24
51
|
SAMPLE_OLD_SPECTA_FAILURE = "/Users/musalj/code/OSS/ReactiveCocoa/ReactiveCocoaFramework/ReactiveCocoaTests/RACCommandSpec.m:458: error: -[RACCommandSpec enabled_signal_should_send_YES_while_executing_is_YES_and_allowsConcurrentExecution_is_YES] : expected: 1, got: 0"
|
25
52
|
SAMPLE_SPECTA_FAILURE = " Test Case '-[SKWelcomeViewControllerSpecSpec SKWelcomeViewController_When_a_user_opens_the_app_from_a_clean_installation_displays_the_welcome_screen]' started. \n/Users/vickeryj/Code/ipad-register/KIFTests/Specs/SKWelcomeViewControllerSpec.m:11: error: -[SKWelcomeViewControllerSpecSpec SKWelcomeViewController_When_a_user_opens_the_app_from_a_clean_installation_displays_the_welcome_screen] : The step timed out after 2.00 seconds: Failed to find accessibility element with the label \"The asimplest way to make smarter business decisions\""
|
@@ -36,7 +63,6 @@ Clean.Remove clean /Users/musalj/Library/Developer/Xcode/DerivedData/ObjectiveSu
|
|
36
63
|
builtin-rm -rf /Users/musalj/Library/Developer/Xcode/DerivedData/ObjectiveSugar-ayzdhqmmwtqgysdpznmovjlupqjy/Build/Intermediates/ObjectiveSugar.build/Debug-iphonesimulator/ObjectiveSugarTests.build
|
37
64
|
)
|
38
65
|
SAMPLE_EXECUTED_TESTS = "Executed 4 tests, with 0 failures (0 unexpected) in 0.003 (0.004) seconds"
|
39
|
-
SAMPLE_EXECUTED_TESTS_WITH_FAILURE = "Executed 1 test, with 1 failure (0 unexpected) in 22.490 (22.513) seconds"
|
40
66
|
SAMPLE_SPECTA_EXECUTED_TESTS = " Executed 4 tests, with 0 failures (0 unexpected) in 10.192 (10.193) seconds"
|
41
67
|
SAMPLE_OCUNIT_TEST = "Test Case '-[RACCommandSpec enabled_signal_should_send_YES_while_executing_is_YES_and_allowsConcurrentExecution_is_YES]' passed (0.001 seconds)."
|
42
68
|
SAMPLE_SPECTA_TEST = " Test Case '-[SKWelcomeActivationViewControllerSpecSpec SKWelcomeActivationViewController_When_a_user_enters_their_details_lets_them_enter_a_valid_manager_code]' passed (0.725 seconds)."
|
@@ -603,6 +629,17 @@ SAMPLE_COMPILE_ERROR_WITH_TILDES = %Q(
|
|
603
629
|
~~ ^~~~~~~
|
604
630
|
)
|
605
631
|
|
632
|
+
SAMPLE_PROFILE_DOESNT_SUPPORT_CAPABILITY_ERROR = %Q(
|
633
|
+
Provisioning profile "Profile Name" doesn't support the Push Notifications capability.
|
634
|
+
)
|
635
|
+
|
636
|
+
SAMPLE_PROFILE_DOESNT_INCLUDE_ENTITLEMENT_ERROR = %Q(
|
637
|
+
Provisioning profile "Profile Name" doesn't include the aps-environment entitlement.
|
638
|
+
)
|
639
|
+
|
640
|
+
SAMPLE_CODE_SIGNING_IS_REQUIRED_ERROR = %Q(
|
641
|
+
Code signing is required for product type 'Application' in SDK 'iOS 10.0'
|
642
|
+
)
|
606
643
|
|
607
644
|
################################################################################
|
608
645
|
# WARNINGS
|
@@ -615,3 +652,6 @@ SAMPLE_FORMAT_WARNING = %Q(
|
|
615
652
|
%d
|
616
653
|
1 warning generated.
|
617
654
|
)
|
655
|
+
|
656
|
+
SAMPLE_WILL_NOT_BE_CODE_SIGNED = "FrameworkName will not be code signed because its settings don't specify a development team."
|
657
|
+
|
@@ -12,11 +12,11 @@ module XCPretty
|
|
12
12
|
end
|
13
13
|
|
14
14
|
it "initializes with unicode" do
|
15
|
-
@formatter.use_unicode?.should
|
15
|
+
@formatter.use_unicode?.should == true
|
16
16
|
end
|
17
17
|
|
18
18
|
it "initializes with color" do
|
19
|
-
@formatter.colorize?.should
|
19
|
+
@formatter.colorize?.should == true
|
20
20
|
end
|
21
21
|
|
22
22
|
it "outputs to new lines by default" do
|
@@ -91,6 +91,10 @@ module XCPretty
|
|
91
91
|
)
|
92
92
|
end
|
93
93
|
|
94
|
+
it "formats will not be code signed warnings" do
|
95
|
+
@formatter.format_will_not_be_code_signed(SAMPLE_WILL_NOT_BE_CODE_SIGNED).should == "#{@formatter.yellow("⚠️ FrameworkName will not be code signed because its settings don't specify a development team.")}"
|
96
|
+
end
|
97
|
+
|
94
98
|
|
95
99
|
it "formats failures per suite" do
|
96
100
|
Syntax.stub(:highlight) { |snippet| snippet.contents }
|
@@ -7,6 +7,7 @@ require 'fixtures/constants'
|
|
7
7
|
module XCPretty
|
8
8
|
|
9
9
|
describe Parser do
|
10
|
+
|
10
11
|
before(:each) do
|
11
12
|
@formatter = Formatter.new(false, false)
|
12
13
|
@parser = Parser.new(@formatter)
|
@@ -167,6 +168,16 @@ module XCPretty
|
|
167
168
|
@parser.parse(SAMPLE_LIBTOOL)
|
168
169
|
end
|
169
170
|
|
171
|
+
it "parses uitest failing tests" do
|
172
|
+
@formatter.should receive(:format_failing_test).with(
|
173
|
+
"viewUITests.vmtAboutWindow",
|
174
|
+
"testConnectToDesktop",
|
175
|
+
"UI Testing Failure - Unable to find hit point for element Button 0x608001165880: {{74.0, -54.0}, {44.0, 38.0}}, label: 'Disconnect'",
|
176
|
+
"<unknown>:0"
|
177
|
+
)
|
178
|
+
@parser.parse(SAMPLE_UITEST_CASE_WITH_FAILURE)
|
179
|
+
end
|
180
|
+
|
170
181
|
it "parses specta failing tests" do
|
171
182
|
@formatter.should receive(:format_failing_test).with("SKWelcomeViewControllerSpecSpec",
|
172
183
|
"SKWelcomeViewController_When_a_user_opens_the_app_from_a_clean_installation_displays_the_welcome_screen",
|
@@ -320,12 +331,6 @@ module XCPretty
|
|
320
331
|
@parser.parse(SAMPLE_OCUNIT_PASSED_TEST_RUN_COMPLETION)
|
321
332
|
end
|
322
333
|
|
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
|
-
|
329
334
|
it "parses ocunit test run failed" do
|
330
335
|
@formatter.should receive(:format_test_run_finished).with('Macadamia.octest', '2014-09-24 23:09:20 +0000.')
|
331
336
|
@parser.parse(SAMPLE_OCUNIT_FAILED_TEST_RUN_COMPLETION)
|
@@ -468,6 +473,21 @@ module XCPretty
|
|
468
473
|
@formatter.should_not receive(:format_compile_error)
|
469
474
|
@parser.parse("hohohoooo")
|
470
475
|
end
|
476
|
+
|
477
|
+
it "parses provisioning profile doesn't support capability error" do
|
478
|
+
@formatter.should receive(:format_error)
|
479
|
+
@parser.parse(SAMPLE_PROFILE_DOESNT_SUPPORT_CAPABILITY_ERROR)
|
480
|
+
end
|
481
|
+
|
482
|
+
it "parses provisioning profile doesn't include entitlement error" do
|
483
|
+
@formatter.should receive(:format_error)
|
484
|
+
@parser.parse(SAMPLE_PROFILE_DOESNT_INCLUDE_ENTITLEMENT_ERROR)
|
485
|
+
end
|
486
|
+
|
487
|
+
it "parses code signing is required error" do
|
488
|
+
@formatter.should receive(:format_error)
|
489
|
+
@parser.parse(SAMPLE_CODE_SIGNING_IS_REQUIRED_ERROR)
|
490
|
+
end
|
471
491
|
end
|
472
492
|
|
473
493
|
context "warnings" do
|
@@ -492,6 +512,11 @@ module XCPretty
|
|
492
512
|
@formatter.should receive(:format_ld_warning).with("ld: embedded dylibs/frameworks only run on iOS 8 or later")
|
493
513
|
@parser.parse("ld: warning: embedded dylibs/frameworks only run on iOS 8 or later")
|
494
514
|
end
|
515
|
+
|
516
|
+
it "parses will not be code signed warnings" do
|
517
|
+
@formatter.should receive(:format_will_not_be_code_signed).with(SAMPLE_WILL_NOT_BE_CODE_SIGNED)
|
518
|
+
@parser.parse(SAMPLE_WILL_NOT_BE_CODE_SIGNED)
|
519
|
+
end
|
495
520
|
end
|
496
521
|
|
497
522
|
context "summary" do
|
@@ -499,10 +524,6 @@ module XCPretty
|
|
499
524
|
@parser.parse(reporter)
|
500
525
|
end
|
501
526
|
|
502
|
-
def given_a_test_failed(reporter = SAMPLE_OCUNIT_CASE_FAILURE)
|
503
|
-
@parser.parse(reporter)
|
504
|
-
end
|
505
|
-
|
506
527
|
def given_tests_are_done(reporter = SAMPLE_OCUNIT_TEST_RUN_COMPLETION)
|
507
528
|
@parser.parse(reporter)
|
508
529
|
end
|
@@ -543,14 +564,6 @@ module XCPretty
|
|
543
564
|
}
|
544
565
|
end
|
545
566
|
|
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
|
-
|
554
567
|
it "prints OCunit / XCTest summary twice if tests executed twice" do
|
555
568
|
@formatter.should_receive(:format_test_summary).twice
|
556
569
|
2.times {
|
@@ -571,3 +584,4 @@ module XCPretty
|
|
571
584
|
|
572
585
|
end
|
573
586
|
end
|
587
|
+
|
@@ -13,17 +13,17 @@ module XCPretty
|
|
13
13
|
|
14
14
|
it "reports a passing test" do
|
15
15
|
@reporter.format_passing_test("RACCommandSpec", "_tupleByAddingObject__should_add_a_non_nil_object", "0.001")
|
16
|
-
|
16
|
+
@reporter.tests.should include("_tupleByAddingObject__should_add_a_non_nil_object PASSED")
|
17
17
|
end
|
18
18
|
|
19
19
|
it "reports a failing test" do
|
20
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
|
-
|
21
|
+
@reporter.tests.should include("enabled_signal_should_send_YES_while_executing_is_YES_and_allowsConcurrentExecution_is_YES in path/to/file FAILED: expected: 1, got: 0")
|
22
22
|
end
|
23
23
|
|
24
24
|
it "reports a pending test" do
|
25
25
|
@reporter.format_pending_test("RACCommandSpec", "_tupleByAddingObject__should_add_a_non_nil_object")
|
26
|
-
|
26
|
+
@reporter.tests.should include("_tupleByAddingObject__should_add_a_non_nil_object IS PENDING")
|
27
27
|
end
|
28
28
|
|
29
29
|
it "writes to disk" do
|
data/xcpretty.gemspec
CHANGED
@@ -31,7 +31,7 @@ Gem::Specification.new do |spec|
|
|
31
31
|
spec.add_development_dependency "bundler", "~> 1.3"
|
32
32
|
spec.add_development_dependency "rake"
|
33
33
|
spec.add_development_dependency "rubocop", "~> 0.34.0"
|
34
|
-
spec.add_development_dependency "rspec", "
|
34
|
+
spec.add_development_dependency "rspec", "2.99.0"
|
35
35
|
spec.add_development_dependency "cucumber", "~> 1.0"
|
36
36
|
end
|
37
37
|
|
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.
|
4
|
+
version: 0.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Marin Usalj
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2016-
|
12
|
+
date: 2016-10-11 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rouge
|
@@ -71,16 +71,16 @@ dependencies:
|
|
71
71
|
name: rspec
|
72
72
|
requirement: !ruby/object:Gem::Requirement
|
73
73
|
requirements:
|
74
|
-
- -
|
74
|
+
- - '='
|
75
75
|
- !ruby/object:Gem::Version
|
76
|
-
version:
|
76
|
+
version: 2.99.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
|
-
version:
|
83
|
+
version: 2.99.0
|
84
84
|
- !ruby/object:Gem::Dependency
|
85
85
|
name: cucumber
|
86
86
|
requirement: !ruby/object:Gem::Requirement
|
@@ -165,7 +165,6 @@ files:
|
|
165
165
|
- spec/fixtures/raw_kiwi_compilation_fail.txt
|
166
166
|
- spec/fixtures/raw_kiwi_fail.txt
|
167
167
|
- spec/fixtures/raw_specta_fail.txt
|
168
|
-
- spec/fixtures/raw_xcodebuild_uitest_fail.txt
|
169
168
|
- spec/spec_helper.rb
|
170
169
|
- spec/support/matchers/colors.rb
|
171
170
|
- spec/xcpretty/ansi_spec.rb
|
@@ -200,7 +199,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
200
199
|
version: '0'
|
201
200
|
requirements: []
|
202
201
|
rubyforge_project:
|
203
|
-
rubygems_version: 2.
|
202
|
+
rubygems_version: 2.6.6
|
204
203
|
signing_key:
|
205
204
|
specification_version: 4
|
206
205
|
summary: xcodebuild formatter done right
|
@@ -234,7 +233,6 @@ test_files:
|
|
234
233
|
- spec/fixtures/raw_kiwi_compilation_fail.txt
|
235
234
|
- spec/fixtures/raw_kiwi_fail.txt
|
236
235
|
- spec/fixtures/raw_specta_fail.txt
|
237
|
-
- spec/fixtures/raw_xcodebuild_uitest_fail.txt
|
238
236
|
- spec/spec_helper.rb
|
239
237
|
- spec/support/matchers/colors.rb
|
240
238
|
- spec/xcpretty/ansi_spec.rb
|
@@ -1,388 +0,0 @@
|
|
1
|
-
User defaults from command line:
|
2
|
-
IDETestRunOnlyIdentifiers = (
|
3
|
-
"viewUITests/vmtAboutWindow/testConnectToDesktop"
|
4
|
-
)
|
5
|
-
IDETestRunSpecificationPath = /Users/viewci/jenkins/workspace/d2/view_macosx10.12-x86_64.xctestrun
|
6
|
-
|
7
|
-
Build settings from command line:
|
8
|
-
arch = x86_64
|
9
|
-
|
10
|
-
2016-08-18 09:07:17.632 XCTRunner[21009:1710602] Running tests...
|
11
|
-
Test Suite 'Selected tests' started at 2016-08-18 09:07:17.820
|
12
|
-
Test Suite 'viewUITests.xctest' started at 2016-08-18 09:07:17.821
|
13
|
-
Test Suite 'vmtAboutWindow' started at 2016-08-18 09:07:17.821
|
14
|
-
Test Case '-[viewUITests.vmtAboutWindow testConnectToDesktop]' started.
|
15
|
-
t = 0.00s Start Test at 2016-08-18 09:07:17.822
|
16
|
-
t = 0.00s Set Up
|
17
|
-
t = 0.00s Launch com.vmware.horizon
|
18
|
-
t = 1.38s Wait for app to idle
|
19
|
-
t = 1.79s Type '
|
20
|
-
t = 1.79s Wait for app to idle
|
21
|
-
t = 1.87s Find the Grid
|
22
|
-
t = 1.87s Snapshot accessibility hierarchy for com.vmware.horizon
|
23
|
-
t = 2.44s Find: Descendants matching type Window
|
24
|
-
t = 2.44s Find: Elements matching predicate '"VMware Horizon Client" IN identifiers'
|
25
|
-
t = 2.44s Find: Descendants matching type ScrollView
|
26
|
-
t = 2.44s Find: Children matching type Grid
|
27
|
-
t = 2.45s Synthesize event
|
28
|
-
t = 2.75s Wait for app to idle
|
29
|
-
t = 3.09s Click SecureTextField
|
30
|
-
t = 3.09s Wait for app to idle
|
31
|
-
t = 3.80s Find the SecureTextField
|
32
|
-
t = 3.80s Snapshot accessibility hierarchy for com.vmware.horizon
|
33
|
-
t = 4.03s Find: Descendants matching type Group
|
34
|
-
t = 4.03s Find: Elements containing elements matching type Image with identifier 'security error'
|
35
|
-
t = 5.04s Find the SecureTextField (retry 1)
|
36
|
-
t = 5.04s Snapshot accessibility hierarchy for com.vmware.horizon
|
37
|
-
t = 5.13s Find: Descendants matching type Group
|
38
|
-
t = 5.13s Find: Elements containing elements matching type Image with identifier 'security error'
|
39
|
-
t = 5.13s Find: Children matching type SecureTextField
|
40
|
-
t = 5.14s Synthesize event
|
41
|
-
t = 5.45s Wait for app to idle
|
42
|
-
t = 5.53s Type 'ca$hc0w' into SecureTextField
|
43
|
-
t = 5.53s Wait for app to idle
|
44
|
-
t = 5.61s Find the SecureTextField
|
45
|
-
t = 5.61s Snapshot accessibility hierarchy for com.vmware.horizon
|
46
|
-
t = 5.70s Find: Descendants matching type Group
|
47
|
-
t = 5.70s Find: Elements containing elements matching type Image with identifier 'security error'
|
48
|
-
t = 5.70s Find: Children matching type SecureTextField
|
49
|
-
t = 5.71s Synthesize event
|
50
|
-
t = 5.95s Wait for app to idle
|
51
|
-
t = 6.04s Click "Login" Button
|
52
|
-
t = 6.04s Wait for app to idle
|
53
|
-
t = 6.12s Find the "Login" Button
|
54
|
-
t = 6.12s Snapshot accessibility hierarchy for com.vmware.horizon
|
55
|
-
t = 6.22s Find: Descendants matching type Button
|
56
|
-
t = 6.22s Find: Elements matching predicate '"Login" IN identifiers'
|
57
|
-
t = 6.22s Synthesize event
|
58
|
-
t = 6.54s Wait for app to idle
|
59
|
-
t = 6.63s Type 'rdsh1
|
60
|
-
t = 6.63s Wait for app to idle
|
61
|
-
t = 6.71s Find the Grid
|
62
|
-
t = 6.71s Snapshot accessibility hierarchy for com.vmware.horizon
|
63
|
-
t = 6.82s Find: Descendants matching type Window
|
64
|
-
t = 6.83s Find: Elements matching predicate '"VMware Horizon Client" IN identifiers'
|
65
|
-
t = 6.83s Find: Children matching type Group
|
66
|
-
t = 6.83s Find: Descendants matching type ScrollView
|
67
|
-
t = 7.83s Find the Grid (retry 1)
|
68
|
-
t = 7.83s Snapshot accessibility hierarchy for com.vmware.horizon
|
69
|
-
t = 7.95s Find: Descendants matching type Window
|
70
|
-
t = 7.96s Find: Elements matching predicate '"VMware Horizon Client" IN identifiers'
|
71
|
-
t = 7.96s Find: Children matching type Group
|
72
|
-
t = 7.96s Find: Descendants matching type ScrollView
|
73
|
-
t = 8.97s Find the Grid (retry 2)
|
74
|
-
t = 8.97s Snapshot accessibility hierarchy for com.vmware.horizon
|
75
|
-
t = 9.24s Find: Descendants matching type Window
|
76
|
-
t = 9.24s Find: Elements matching predicate '"VMware Horizon Client" IN identifiers'
|
77
|
-
t = 9.25s Find: Children matching type Group
|
78
|
-
t = 9.25s Find: Descendants matching type ScrollView
|
79
|
-
t = 9.25s Find: Children matching type Grid
|
80
|
-
t = 9.26s Synthesize event
|
81
|
-
t = 9.44s Wait for app to idle
|
82
|
-
t = 10.03s Snapshot accessibility hierarchy for com.vmware.horizon
|
83
|
-
t = 10.24s Find: Descendants matching type Window
|
84
|
-
t = 10.24s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
85
|
-
Wait for connect to desktop done
|
86
|
-
t = 10.25s Snapshot accessibility hierarchy for com.vmware.horizon
|
87
|
-
t = 10.33s Find: Descendants matching type Window
|
88
|
-
t = 10.33s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
89
|
-
Wait for connect to desktop done
|
90
|
-
t = 10.33s Snapshot accessibility hierarchy for com.vmware.horizon
|
91
|
-
t = 10.41s Find: Descendants matching type Window
|
92
|
-
t = 10.42s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
93
|
-
Wait for connect to desktop done
|
94
|
-
t = 10.42s Snapshot accessibility hierarchy for com.vmware.horizon
|
95
|
-
t = 10.50s Find: Descendants matching type Window
|
96
|
-
t = 10.50s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
97
|
-
Wait for connect to desktop done
|
98
|
-
t = 10.50s Snapshot accessibility hierarchy for com.vmware.horizon
|
99
|
-
t = 10.58s Find: Descendants matching type Window
|
100
|
-
t = 10.59s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
101
|
-
Wait for connect to desktop done
|
102
|
-
t = 10.59s Snapshot accessibility hierarchy for com.vmware.horizon
|
103
|
-
t = 10.67s Find: Descendants matching type Window
|
104
|
-
t = 10.67s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
105
|
-
Wait for connect to desktop done
|
106
|
-
t = 10.67s Snapshot accessibility hierarchy for com.vmware.horizon
|
107
|
-
t = 10.76s Find: Descendants matching type Window
|
108
|
-
t = 10.76s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
109
|
-
Wait for connect to desktop done
|
110
|
-
t = 10.76s Snapshot accessibility hierarchy for com.vmware.horizon
|
111
|
-
t = 10.84s Find: Descendants matching type Window
|
112
|
-
t = 10.84s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
113
|
-
Wait for connect to desktop done
|
114
|
-
t = 10.84s Snapshot accessibility hierarchy for com.vmware.horizon
|
115
|
-
t = 10.93s Find: Descendants matching type Window
|
116
|
-
t = 10.93s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
117
|
-
Wait for connect to desktop done
|
118
|
-
t = 10.93s Snapshot accessibility hierarchy for com.vmware.horizon
|
119
|
-
t = 11.02s Find: Descendants matching type Window
|
120
|
-
t = 11.02s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
121
|
-
Wait for connect to desktop done
|
122
|
-
t = 11.02s Snapshot accessibility hierarchy for com.vmware.horizon
|
123
|
-
t = 11.49s Find: Descendants matching type Window
|
124
|
-
t = 11.49s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
125
|
-
Wait for connect to desktop done
|
126
|
-
t = 11.49s Snapshot accessibility hierarchy for com.vmware.horizon
|
127
|
-
t = 11.83s Find: Descendants matching type Window
|
128
|
-
t = 11.83s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
129
|
-
Wait for connect to desktop done
|
130
|
-
t = 11.83s Snapshot accessibility hierarchy for com.vmware.horizon
|
131
|
-
t = 11.94s Find: Descendants matching type Window
|
132
|
-
t = 11.94s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
133
|
-
Wait for connect to desktop done
|
134
|
-
t = 11.95s Snapshot accessibility hierarchy for com.vmware.horizon
|
135
|
-
t = 12.71s Find: Descendants matching type Window
|
136
|
-
t = 12.71s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
137
|
-
Wait for connect to desktop done
|
138
|
-
t = 12.72s Snapshot accessibility hierarchy for com.vmware.horizon
|
139
|
-
t = 13.03s Find: Descendants matching type Window
|
140
|
-
t = 13.03s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
141
|
-
Wait for connect to desktop done
|
142
|
-
t = 13.03s Snapshot accessibility hierarchy for com.vmware.horizon
|
143
|
-
t = 13.13s Find: Descendants matching type Window
|
144
|
-
t = 13.13s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
145
|
-
Wait for connect to desktop done
|
146
|
-
t = 13.13s Snapshot accessibility hierarchy for com.vmware.horizon
|
147
|
-
t = 13.56s Find: Descendants matching type Window
|
148
|
-
t = 13.56s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
149
|
-
Wait for connect to desktop done
|
150
|
-
t = 13.56s Snapshot accessibility hierarchy for com.vmware.horizon
|
151
|
-
t = 13.64s Find: Descendants matching type Window
|
152
|
-
t = 13.64s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
153
|
-
Wait for connect to desktop done
|
154
|
-
t = 13.65s Snapshot accessibility hierarchy for com.vmware.horizon
|
155
|
-
t = 13.75s Find: Descendants matching type Window
|
156
|
-
t = 13.75s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
157
|
-
Wait for connect to desktop done
|
158
|
-
t = 13.75s Snapshot accessibility hierarchy for com.vmware.horizon
|
159
|
-
t = 13.83s Find: Descendants matching type Window
|
160
|
-
t = 13.84s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
161
|
-
Wait for connect to desktop done
|
162
|
-
t = 13.84s Snapshot accessibility hierarchy for com.vmware.horizon
|
163
|
-
t = 13.92s Find: Descendants matching type Window
|
164
|
-
t = 13.92s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
165
|
-
Wait for connect to desktop done
|
166
|
-
t = 13.92s Snapshot accessibility hierarchy for com.vmware.horizon
|
167
|
-
t = 14.01s Find: Descendants matching type Window
|
168
|
-
t = 14.02s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
169
|
-
Wait for connect to desktop done
|
170
|
-
t = 14.02s Snapshot accessibility hierarchy for com.vmware.horizon
|
171
|
-
t = 14.10s Find: Descendants matching type Window
|
172
|
-
t = 14.11s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
173
|
-
Wait for connect to desktop done
|
174
|
-
t = 14.11s Snapshot accessibility hierarchy for com.vmware.horizon
|
175
|
-
t = 14.19s Find: Descendants matching type Window
|
176
|
-
t = 14.19s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
177
|
-
Wait for connect to desktop done
|
178
|
-
t = 14.19s Snapshot accessibility hierarchy for com.vmware.horizon
|
179
|
-
t = 14.28s Find: Descendants matching type Window
|
180
|
-
t = 14.28s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
181
|
-
Wait for connect to desktop done
|
182
|
-
t = 14.28s Snapshot accessibility hierarchy for com.vmware.horizon
|
183
|
-
t = 14.37s Find: Descendants matching type Window
|
184
|
-
t = 14.37s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
185
|
-
Wait for connect to desktop done
|
186
|
-
t = 14.37s Snapshot accessibility hierarchy for com.vmware.horizon
|
187
|
-
t = 14.59s Find: Descendants matching type Window
|
188
|
-
t = 14.59s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
189
|
-
Wait for connect to desktop done
|
190
|
-
t = 14.59s Snapshot accessibility hierarchy for com.vmware.horizon
|
191
|
-
t = 14.68s Find: Descendants matching type Window
|
192
|
-
t = 14.68s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
193
|
-
Wait for connect to desktop done
|
194
|
-
t = 14.68s Snapshot accessibility hierarchy for com.vmware.horizon
|
195
|
-
t = 14.78s Find: Descendants matching type Window
|
196
|
-
t = 14.78s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
197
|
-
Wait for connect to desktop done
|
198
|
-
t = 14.79s Snapshot accessibility hierarchy for com.vmware.horizon
|
199
|
-
t = 14.87s Find: Descendants matching type Window
|
200
|
-
t = 14.88s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
201
|
-
Wait for connect to desktop done
|
202
|
-
t = 14.88s Snapshot accessibility hierarchy for com.vmware.horizon
|
203
|
-
t = 14.96s Find: Descendants matching type Window
|
204
|
-
t = 14.96s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
205
|
-
Wait for connect to desktop done
|
206
|
-
t = 14.96s Snapshot accessibility hierarchy for com.vmware.horizon
|
207
|
-
t = 15.04s Find: Descendants matching type Window
|
208
|
-
t = 15.05s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
209
|
-
Wait for connect to desktop done
|
210
|
-
t = 15.05s Snapshot accessibility hierarchy for com.vmware.horizon
|
211
|
-
t = 15.13s Find: Descendants matching type Window
|
212
|
-
t = 15.14s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
213
|
-
Wait for connect to desktop done
|
214
|
-
t = 15.14s Snapshot accessibility hierarchy for com.vmware.horizon
|
215
|
-
t = 15.23s Find: Descendants matching type Window
|
216
|
-
t = 15.24s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
217
|
-
Wait for connect to desktop done
|
218
|
-
t = 15.24s Snapshot accessibility hierarchy for com.vmware.horizon
|
219
|
-
t = 15.33s Find: Descendants matching type Window
|
220
|
-
t = 15.33s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
221
|
-
Wait for connect to desktop done
|
222
|
-
t = 15.33s Snapshot accessibility hierarchy for com.vmware.horizon
|
223
|
-
t = 15.41s Find: Descendants matching type Window
|
224
|
-
t = 15.42s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
225
|
-
Wait for connect to desktop done
|
226
|
-
t = 15.42s Snapshot accessibility hierarchy for com.vmware.horizon
|
227
|
-
t = 15.64s Find: Descendants matching type Window
|
228
|
-
t = 15.64s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
229
|
-
Wait for connect to desktop done
|
230
|
-
t = 15.64s Snapshot accessibility hierarchy for com.vmware.horizon
|
231
|
-
t = 15.72s Find: Descendants matching type Window
|
232
|
-
t = 15.73s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
233
|
-
Wait for connect to desktop done
|
234
|
-
t = 15.73s Snapshot accessibility hierarchy for com.vmware.horizon
|
235
|
-
t = 15.83s Find: Descendants matching type Window
|
236
|
-
t = 15.83s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
237
|
-
Wait for connect to desktop done
|
238
|
-
t = 15.83s Snapshot accessibility hierarchy for com.vmware.horizon
|
239
|
-
t = 15.92s Find: Descendants matching type Window
|
240
|
-
t = 15.92s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
241
|
-
Wait for connect to desktop done
|
242
|
-
t = 15.92s Snapshot accessibility hierarchy for com.vmware.horizon
|
243
|
-
t = 16.00s Find: Descendants matching type Window
|
244
|
-
t = 16.00s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
245
|
-
Wait for connect to desktop done
|
246
|
-
t = 16.00s Snapshot accessibility hierarchy for com.vmware.horizon
|
247
|
-
t = 16.08s Find: Descendants matching type Window
|
248
|
-
t = 16.09s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
249
|
-
Wait for connect to desktop done
|
250
|
-
t = 16.09s Snapshot accessibility hierarchy for com.vmware.horizon
|
251
|
-
t = 16.17s Find: Descendants matching type Window
|
252
|
-
t = 16.17s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
253
|
-
Wait for connect to desktop done
|
254
|
-
t = 16.17s Snapshot accessibility hierarchy for com.vmware.horizon
|
255
|
-
t = 16.26s Find: Descendants matching type Window
|
256
|
-
t = 16.26s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
257
|
-
Wait for connect to desktop done
|
258
|
-
t = 16.26s Snapshot accessibility hierarchy for com.vmware.horizon
|
259
|
-
t = 16.34s Find: Descendants matching type Window
|
260
|
-
t = 16.35s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
261
|
-
Wait for connect to desktop done
|
262
|
-
t = 16.35s Snapshot accessibility hierarchy for com.vmware.horizon
|
263
|
-
t = 16.43s Find: Descendants matching type Window
|
264
|
-
t = 16.44s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
265
|
-
Wait for connect to desktop done
|
266
|
-
t = 16.44s Snapshot accessibility hierarchy for com.vmware.horizon
|
267
|
-
t = 16.66s Find: Descendants matching type Window
|
268
|
-
t = 16.66s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
269
|
-
Wait for connect to desktop done
|
270
|
-
t = 16.66s Snapshot accessibility hierarchy for com.vmware.horizon
|
271
|
-
t = 16.75s Find: Descendants matching type Window
|
272
|
-
t = 16.75s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
273
|
-
Wait for connect to desktop done
|
274
|
-
t = 16.75s Snapshot accessibility hierarchy for com.vmware.horizon
|
275
|
-
t = 16.85s Find: Descendants matching type Window
|
276
|
-
t = 16.85s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
277
|
-
Wait for connect to desktop done
|
278
|
-
t = 16.85s Snapshot accessibility hierarchy for com.vmware.horizon
|
279
|
-
t = 16.94s Find: Descendants matching type Window
|
280
|
-
t = 16.94s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
281
|
-
Wait for connect to desktop done
|
282
|
-
t = 16.94s Snapshot accessibility hierarchy for com.vmware.horizon
|
283
|
-
t = 17.02s Find: Descendants matching type Window
|
284
|
-
t = 17.02s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
285
|
-
Wait for connect to desktop done
|
286
|
-
t = 17.03s Snapshot accessibility hierarchy for com.vmware.horizon
|
287
|
-
t = 17.11s Find: Descendants matching type Window
|
288
|
-
t = 17.11s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
289
|
-
Wait for connect to desktop done
|
290
|
-
t = 17.11s Snapshot accessibility hierarchy for com.vmware.horizon
|
291
|
-
t = 17.20s Find: Descendants matching type Window
|
292
|
-
t = 17.20s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
293
|
-
Wait for connect to desktop done
|
294
|
-
t = 17.20s Snapshot accessibility hierarchy for com.vmware.horizon
|
295
|
-
t = 17.29s Find: Descendants matching type Window
|
296
|
-
t = 17.29s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
297
|
-
Wait for connect to desktop done
|
298
|
-
t = 17.29s Snapshot accessibility hierarchy for com.vmware.horizon
|
299
|
-
t = 17.38s Find: Descendants matching type Window
|
300
|
-
t = 17.38s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
301
|
-
Wait for connect to desktop done
|
302
|
-
t = 17.38s Snapshot accessibility hierarchy for com.vmware.horizon
|
303
|
-
t = 17.46s Find: Descendants matching type Window
|
304
|
-
t = 17.46s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
305
|
-
Wait for connect to desktop done
|
306
|
-
t = 17.47s Snapshot accessibility hierarchy for com.vmware.horizon
|
307
|
-
t = 17.69s Find: Descendants matching type Window
|
308
|
-
t = 17.70s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
309
|
-
Wait for connect to desktop done
|
310
|
-
t = 17.70s Snapshot accessibility hierarchy for com.vmware.horizon
|
311
|
-
t = 17.78s Find: Descendants matching type Window
|
312
|
-
t = 17.78s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
313
|
-
Wait for connect to desktop done
|
314
|
-
t = 17.78s Snapshot accessibility hierarchy for com.vmware.horizon
|
315
|
-
t = 17.89s Find: Descendants matching type Window
|
316
|
-
t = 17.89s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
317
|
-
Wait for connect to desktop done
|
318
|
-
t = 17.89s Snapshot accessibility hierarchy for com.vmware.horizon
|
319
|
-
t = 17.98s Find: Descendants matching type Window
|
320
|
-
t = 17.98s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
321
|
-
Wait for connect to desktop done
|
322
|
-
t = 17.98s Snapshot accessibility hierarchy for com.vmware.horizon
|
323
|
-
t = 18.07s Find: Descendants matching type Window
|
324
|
-
t = 18.07s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
325
|
-
Wait for connect to desktop done
|
326
|
-
t = 18.07s Snapshot accessibility hierarchy for com.vmware.horizon
|
327
|
-
t = 18.16s Find: Descendants matching type Window
|
328
|
-
t = 18.16s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
329
|
-
Wait for connect to desktop done
|
330
|
-
t = 18.16s Snapshot accessibility hierarchy for com.vmware.horizon
|
331
|
-
t = 18.24s Find: Descendants matching type Window
|
332
|
-
t = 18.25s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
333
|
-
Wait for connect to desktop done
|
334
|
-
t = 18.25s Snapshot accessibility hierarchy for com.vmware.horizon
|
335
|
-
t = 18.33s Find: Descendants matching type Window
|
336
|
-
t = 18.34s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
337
|
-
Wait for connect to desktop done
|
338
|
-
t = 18.34s Snapshot accessibility hierarchy for com.vmware.horizon
|
339
|
-
t = 18.43s Find: Descendants matching type Window
|
340
|
-
t = 18.43s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
341
|
-
Wait for connect to desktop done
|
342
|
-
t = 18.43s Snapshot accessibility hierarchy for com.vmware.horizon
|
343
|
-
t = 18.52s Find: Descendants matching type Window
|
344
|
-
t = 18.52s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
345
|
-
Wait for connect to desktop done
|
346
|
-
t = 18.52s Snapshot accessibility hierarchy for com.vmware.horizon
|
347
|
-
t = 18.75s Find: Descendants matching type Window
|
348
|
-
t = 18.75s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
349
|
-
Wait for connect to desktop done
|
350
|
-
t = 18.76s Snapshot accessibility hierarchy for com.vmware.horizon
|
351
|
-
t = 18.84s Find: Descendants matching type Window
|
352
|
-
t = 18.84s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
353
|
-
Wait for connect to desktop done
|
354
|
-
t = 18.84s Snapshot accessibility hierarchy for com.vmware.horizon
|
355
|
-
t = 18.96s Find: Descendants matching type Window
|
356
|
-
t = 18.97s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
357
|
-
Wait for connect to desktop done
|
358
|
-
t = 18.97s Snapshot accessibility hierarchy for com.vmware.horizon
|
359
|
-
t = 19.05s Find: Descendants matching type Window
|
360
|
-
t = 19.06s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
361
|
-
Wait for connect to desktop done
|
362
|
-
t = 19.06s Snapshot accessibility hierarchy for com.vmware.horizon
|
363
|
-
t = 20.31s Find: Descendants matching type Window
|
364
|
-
t = 20.32s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
365
|
-
Connect to desktop done
|
366
|
-
t = 20.32s Click "Disconnect" Button
|
367
|
-
t = 20.32s Wait for app to idle
|
368
|
-
t = 20.39s Find the "Disconnect" Button
|
369
|
-
t = 20.39s Snapshot accessibility hierarchy for com.vmware.horizon
|
370
|
-
t = 20.53s Find: Descendants matching type Window
|
371
|
-
t = 20.53s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
372
|
-
t = 21.54s Find the "Disconnect" Button (retry 1)
|
373
|
-
t = 21.54s Snapshot accessibility hierarchy for com.vmware.horizon
|
374
|
-
t = 21.80s Find: Descendants matching type Window
|
375
|
-
t = 21.80s Find: Elements matching predicate '"rdsh1" IN identifiers'
|
376
|
-
t = 21.81s Find: Descendants matching type Toolbar
|
377
|
-
t = 21.81s Find: Descendants matching type Button
|
378
|
-
t = 21.81s Find: Elements matching predicate '"Disconnect" IN identifiers'
|
379
|
-
t = 21.81s Synthesize event
|
380
|
-
t = 22.27s Assertion Failure: <unknown>:0: UI Testing Failure - Unable to find hit point for element Button 0x608001165880: {{74.0, -54.0}, {44.0, 38.0}}, label: 'Disconnect'
|
381
|
-
t = 22.29s Tear Down
|
382
|
-
Test Case '-[viewUITests.vmtAboutWindow testConnectToDesktop]' failed (22.490 seconds).
|
383
|
-
Test Suite 'vmtAboutWindow' failed at 2016-08-18 09:07:40.331.
|
384
|
-
Executed 1 test, with 1 failure (0 unexpected) in 22.490 (22.510) seconds
|
385
|
-
Test Suite 'viewUITests.xctest' failed at 2016-08-18 09:07:40.332.
|
386
|
-
Executed 1 test, with 1 failure (0 unexpected) in 22.490 (22.511) seconds
|
387
|
-
Test Suite 'Selected tests' failed at 2016-08-18 09:07:40.332.
|
388
|
-
Executed 1 test, with 1 failure (0 unexpected) in 22.490 (22.513) seconds
|