@@ -443,18 +443,20 @@ struct ExecutedWithoutSkippedCaptureGroup: ExecutedCaptureGroup {
443
443
/// $2 = number of failures
444
444
/// $3 = number of unexpected failures
445
445
/// $4 = wall clock time in seconds (e.g. 0.295)
446
- static let regex = Regex ( pattern: #"^\s*Executed\s(\d+)\stest[s]?,\swith\s(\d+)\sfailure[s]?\s\((\d+)\sunexpected\)\sin\s\d+\.\d{3}\s\((\d+\.\d{3})\)\sseconds"# )
446
+ static let regex = Regex ( pattern: #"^( \s*Executed\s(\d+)\stest[s]?,\swith\s(\d+)\sfailure[s]?\s\((\d+)\sunexpected\)\sin\s\d+\.\d{3}\s\((\d+\.\d{3})\)\sseconds.*)$ "# )
447
447
448
+ let wholeResult : String
448
449
let numberOfTests : Int
449
450
let numberOfSkipped = 0
450
451
let numberOfFailures : Int
451
452
let numberOfUnexpectedFailures : Int
452
453
let wallClockTimeInSeconds : Double
453
454
454
455
init ? ( groups: [ String ] ) {
455
- assert ( groups. count >= 4 )
456
- guard let _numberOfTests = groups [ safe: 0 ] , let _numberOfFailures = groups [ safe: 1 ] , let _numberOfUnexpectedFailures = groups [ safe: 2 ] , let _wallClockTimeInSeconds = groups [ safe: 3 ] else { return nil }
456
+ assert ( groups. count >= 5 )
457
+ guard let wholeResult = groups [ safe: 0 ] , let _numberOfTests = groups [ safe: 1 ] , let _numberOfFailures = groups [ safe: 2 ] , let _numberOfUnexpectedFailures = groups [ safe: 3 ] , let _wallClockTimeInSeconds = groups [ safe : 4 ] else { return nil }
457
458
guard let numberOfTests = Int ( _numberOfTests) , let numberOfFailures = Int ( _numberOfFailures) , let numberOfUnexpectedFailures = Int ( _numberOfUnexpectedFailures) , let wallClockTimeInSeconds = Double ( _wallClockTimeInSeconds) else { return nil }
459
+ self . wholeResult = wholeResult
458
460
self . numberOfTests = numberOfTests
459
461
self . numberOfFailures = numberOfFailures
460
462
self . numberOfUnexpectedFailures = numberOfUnexpectedFailures
@@ -471,18 +473,20 @@ struct ExecutedWithSkippedCaptureGroup: ExecutedCaptureGroup {
471
473
/// $3 = number of failures
472
474
/// $4 = number of unexpected failures
473
475
/// $5 = wall clock time in seconds (e.g. 0.295)
474
- static let regex = Regex ( pattern: #"^\s*Executed\s(\d+)\stest[s]?,\swith\s(\d+)\stest[s]?\sskipped\sand\s(\d+)\sfailure[s]?\s\((\d+)\sunexpected\)\sin\s\d+\.\d{3}\s\((\d+\.\d{3})\)\sseconds"# )
476
+ static let regex = Regex ( pattern: #"^( \s*Executed\s(\d+)\stest[s]?,\swith\s(\d+)\stest[s]?\sskipped\sand\s(\d+)\sfailure[s]?\s\((\d+)\sunexpected\)\sin\s\d+\.\d{3}\s\((\d+\.\d{3})\)\sseconds.*)$ "# )
475
477
478
+ let wholeResult : String
476
479
let numberOfTests : Int
477
480
let numberOfSkipped : Int
478
481
let numberOfFailures : Int
479
482
let numberOfUnexpectedFailures : Int
480
483
let wallClockTimeInSeconds : Double
481
484
482
485
init ? ( groups: [ String ] ) {
483
- assert ( groups. count >= 5 )
484
- guard let _numberOfTests = groups [ safe: 0 ] , let _numberOfSkipped = groups [ safe: 1 ] , let _numberOfFailures = groups [ safe: 2 ] , let _numberOfUnexpectedFailures = groups [ safe: 3 ] , let _wallClockTimeInSeconds = groups [ safe: 4 ] else { return nil }
486
+ assert ( groups. count >= 6 )
487
+ guard let wholeResult = groups [ safe: 0 ] , let _numberOfTests = groups [ safe: 1 ] , let _numberOfSkipped = groups [ safe: 2 ] , let _numberOfFailures = groups [ safe: 3 ] , let _numberOfUnexpectedFailures = groups [ safe: 4 ] , let _wallClockTimeInSeconds = groups [ safe : 5 ] else { return nil }
485
488
guard let numberOfTests = Int ( _numberOfTests) , let numberOfSkipped = Int ( _numberOfSkipped) , let numberOfFailures = Int ( _numberOfFailures) , let numberOfUnexpectedFailures = Int ( _numberOfUnexpectedFailures) , let wallClockTimeInSeconds = Double ( _wallClockTimeInSeconds) else { return nil }
489
+ self . wholeResult = wholeResult
486
490
self . numberOfTests = numberOfTests
487
491
self . numberOfSkipped = numberOfSkipped
488
492
self . numberOfFailures = numberOfFailures
@@ -1115,18 +1119,20 @@ struct TestsRunCompletionCaptureGroup: CaptureGroup {
1115
1119
/// $2 = result
1116
1120
/// $3 = time
1117
1121
#if os(Linux)
1118
- static let regex = Regex ( pattern: #"^\s*Test Suite '(.*)' (finished|passed|failed) at (.*)"# )
1122
+ static let regex = Regex ( pattern: #"^( \s*Test Suite '(.*)' (finished|passed|failed) at (.*) .*)"# )
1119
1123
#else
1120
- static let regex = Regex ( pattern: #"^\s*Test Suite '(?:.*\/)?(.*[ox]ctest.*)' (finished|passed|failed) at (.*)"# )
1124
+ static let regex = Regex ( pattern: #"^( \s*Test Suite '(?:.*\/)?(.*[ox]ctest.*)' (finished|passed|failed) at (.*) .*)"# )
1121
1125
#endif
1122
1126
1127
+ let wholeResult : String
1123
1128
let suite : String
1124
1129
let result : String
1125
1130
let time : String
1126
1131
1127
1132
init ? ( groups: [ String ] ) {
1128
- assert ( groups. count >= 3 )
1129
- guard let suite = groups [ safe: 0 ] , let result = groups [ safe: 1 ] , let time = groups [ safe: 2 ] else { return nil }
1133
+ assert ( groups. count >= 4 )
1134
+ guard let wholeResult = groups [ safe: 0 ] , let suite = groups [ safe: 1 ] , let result = groups [ safe: 2 ] , let time = groups [ safe: 3 ] else { return nil }
1135
+ self . wholeResult = wholeResult
1130
1136
self . suite = suite
1131
1137
self . result = result
1132
1138
self . time = time
@@ -1174,25 +1180,27 @@ struct TestSuiteStartCaptureGroup: CaptureGroup {
1174
1180
1175
1181
struct TestSuiteAllTestsPassedCaptureGroup : CaptureGroup {
1176
1182
static let outputType : OutputType = . result
1177
- static let regex = Regex ( pattern: #"^\s*Test Suite 'All tests' passed at"# )
1183
+ static let regex = Regex ( pattern: #"^( \s*Test Suite 'All tests' passed at.*) "# )
1178
1184
1179
- private init ( ) { }
1185
+ let wholeResult : String
1180
1186
1181
1187
init ? ( groups: [ String ] ) {
1182
1188
assert ( groups. count >= 0 )
1183
- self . init ( )
1189
+ guard let wholeResult = groups [ safe: 0 ] else { return nil }
1190
+ self . wholeResult = wholeResult
1184
1191
}
1185
1192
}
1186
1193
1187
1194
struct TestSuiteAllTestsFailedCaptureGroup : CaptureGroup {
1188
1195
static let outputType : OutputType = . result
1189
- static let regex = Regex ( pattern: #"^\s*Test Suite 'All tests' failed at"# )
1196
+ static let regex = Regex ( pattern: #"^( \s*Test Suite 'All tests' failed at.*) "# )
1190
1197
1191
- private init ( ) { }
1198
+ let wholeResult : String
1192
1199
1193
1200
init ? ( groups: [ String ] ) {
1194
- assert ( groups. count >= 0 )
1195
- self . init ( )
1201
+ assert ( groups. count >= 1 )
1202
+ guard let wholeResult = groups [ safe: 0 ] else { return nil }
1203
+ self . wholeResult = wholeResult
1196
1204
}
1197
1205
}
1198
1206
0 commit comments