Skip to content

Commit 7bd2688

Browse files
committed
[Overlay] Fix XCTest overlay to avoid passing autoclosures through
1 parent c532583 commit 7bd2688

File tree

1 file changed

+58
-58
lines changed

1 file changed

+58
-58
lines changed

stdlib/public/SDK/XCTest/XCTest.swift

Lines changed: 58 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -146,17 +146,17 @@ public func XCTAssertNil(_ expression: @autoclosure () throws -> Any?, _ message
146146
if !passed {
147147
// TODO: @auto_string expression
148148

149-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr as NSString), message, file, line)
149+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr as NSString), message(), file, line)
150150
}
151151

152152
case .failedWithError(let error):
153-
_XCTRegisterFailure(false, "XCTAssertNil failed: threw error \"\(error)\"", message, file, line)
153+
_XCTRegisterFailure(false, "XCTAssertNil failed: threw error \"\(error)\"", message(), file, line)
154154

155155
case .failedWithException(_, _, let reason):
156-
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message, file, line)
156+
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message(), file, line)
157157

158158
case .failedWithUnknownException:
159-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message, file, line)
159+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message(), file, line)
160160
}
161161
}
162162

@@ -185,23 +185,23 @@ public func XCTAssertNotNil(_ expression: @autoclosure () throws -> Any?, _ mess
185185
if !passed {
186186
// TODO: @auto_string expression
187187

188-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr as NSString), message, file, line)
188+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr as NSString), message(), file, line)
189189
}
190190

191191
case .failedWithError(let error):
192-
_XCTRegisterFailure(false, "XCTAssertNotNil failed: threw error \"\(error)\"", message, file, line)
192+
_XCTRegisterFailure(false, "XCTAssertNotNil failed: threw error \"\(error)\"", message(), file, line)
193193

194194
case .failedWithException(_, _, let reason):
195-
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message, file, line)
195+
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message(), file, line)
196196

197197
case .failedWithUnknownException:
198-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message, file, line)
198+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message(), file, line)
199199
}
200200
}
201201

202202
public func XCTAssert(_ expression: @autoclosure () throws -> Bool, _ message: @autoclosure () -> String = "", file: StaticString = #file, line: UInt = #line) {
203203
// XCTAssert is just a cover for XCTAssertTrue.
204-
XCTAssertTrue(expression, message, file: file, line: line)
204+
XCTAssertTrue(try expression(), message(), file: file, line: line)
205205
}
206206

207207
public func XCTAssertTrue(_ expression: @autoclosure () throws -> Bool, _ message: @autoclosure () -> String = "", file: StaticString = #file, line: UInt = #line) {
@@ -221,17 +221,17 @@ public func XCTAssertTrue(_ expression: @autoclosure () throws -> Bool, _ messag
221221
if !expressionValue {
222222
// TODO: @auto_string expression
223223

224-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0), message, file, line)
224+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0), message(), file, line)
225225
}
226226

227227
case .failedWithError(let error):
228-
_XCTRegisterFailure(false, "XCTAssertTrue failed: threw error \"\(error)\"", message, file, line)
228+
_XCTRegisterFailure(false, "XCTAssertTrue failed: threw error \"\(error)\"", message(), file, line)
229229

230230
case .failedWithException(_, _, let reason):
231-
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message, file, line)
231+
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message(), file, line)
232232

233233
case .failedWithUnknownException:
234-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message, file, line)
234+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message(), file, line)
235235
}
236236
}
237237

@@ -252,17 +252,17 @@ public func XCTAssertFalse(_ expression: @autoclosure () throws -> Bool, _ messa
252252
if expressionValue {
253253
// TODO: @auto_string expression
254254

255-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0), message, file, line)
255+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0), message(), file, line)
256256
}
257257

258258
case .failedWithError(let error):
259-
_XCTRegisterFailure(false, "XCTAssertFalse failed: threw error \"\(error)\"", message, file, line)
259+
_XCTRegisterFailure(false, "XCTAssertFalse failed: threw error \"\(error)\"", message(), file, line)
260260

261261
case .failedWithException(_, _, let reason):
262-
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message, file, line)
262+
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message(), file, line)
263263

264264
case .failedWithUnknownException:
265-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message, file, line)
265+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message(), file, line)
266266
}
267267
}
268268

@@ -290,17 +290,17 @@ public func XCTAssertEqual<T : Equatable>(_ expression1: @autoclosure () throws
290290
let expressionValueStr1 = "\(expressionValue1)"
291291
let expressionValueStr2 = "\(expressionValue2)"
292292

293-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr1 as NSString, expressionValueStr2 as NSString), message, file, line)
293+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr1 as NSString, expressionValueStr2 as NSString), message(), file, line)
294294
}
295295

296296
case .failedWithError(let error):
297-
_XCTRegisterFailure(false, "XCTAssertEqual failed: threw error \"\(error)\"", message, file, line)
297+
_XCTRegisterFailure(false, "XCTAssertEqual failed: threw error \"\(error)\"", message(), file, line)
298298

299299
case .failedWithException(_, _, let reason):
300-
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message, file, line)
300+
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message(), file, line)
301301

302302
case .failedWithUnknownException:
303-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message, file, line)
303+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message(), file, line)
304304
}
305305
}
306306

@@ -328,17 +328,17 @@ public func XCTAssertNotEqual<T : Equatable>(_ expression1: @autoclosure () thro
328328
let expressionValueStr1 = "\(expressionValue1)"
329329
let expressionValueStr2 = "\(expressionValue2)"
330330

331-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr1 as NSString, expressionValueStr2 as NSString), message, file, line)
331+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr1 as NSString, expressionValueStr2 as NSString), message(), file, line)
332332
}
333333

334334
case .failedWithError(let error):
335-
_XCTRegisterFailure(false, "XCTAssertNotEqual failed: threw error \"\(error)\"", message, file, line)
335+
_XCTRegisterFailure(false, "XCTAssertNotEqual failed: threw error \"\(error)\"", message(), file, line)
336336

337337
case .failedWithException(_, _, let reason):
338-
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message, file, line)
338+
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message(), file, line)
339339

340340
case .failedWithUnknownException:
341-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message, file, line)
341+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message(), file, line)
342342
}
343343
}
344344

@@ -399,23 +399,23 @@ public func XCTAssertEqual<T : FloatingPoint>(_ expression1: @autoclosure () thr
399399
let expressionValueStr2 = "\(expressionValue2)"
400400
let accuracyStr = "\(accuracy)"
401401

402-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr1 as NSString, expressionValueStr2 as NSString, accuracyStr as NSString), message, file, line)
402+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr1 as NSString, expressionValueStr2 as NSString, accuracyStr as NSString), message(), file, line)
403403
}
404404

405405
case .failedWithError(let error):
406-
_XCTRegisterFailure(false, "XCTAssertEqual failed: threw error \"\(error)\"", message, file, line)
406+
_XCTRegisterFailure(false, "XCTAssertEqual failed: threw error \"\(error)\"", message(), file, line)
407407

408408
case .failedWithException(_, _, let reason):
409-
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message, file, line)
409+
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message(), file, line)
410410

411411
case .failedWithUnknownException:
412-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message, file, line)
412+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message(), file, line)
413413
}
414414
}
415415

416416
@available(*, deprecated, renamed: "XCTAssertEqual(_:_:accuracy:file:line:)")
417417
public func XCTAssertEqualWithAccuracy<T : FloatingPoint>(_ expression1: @autoclosure () throws -> T, _ expression2: @autoclosure () throws -> T, accuracy: T, _ message: @autoclosure () -> String = "", file: StaticString = #file, line: UInt = #line) {
418-
XCTAssertEqual(expression1, expression2, accuracy: accuracy, message, file: file, line: line)
418+
XCTAssertEqual(try expression1(), try expression2(), accuracy: accuracy, message(), file: file, line: line)
419419
}
420420

421421
func _XCTCheckNotEqualWithAccuracy_Double(_ value1: Double, _ value2: Double, _ accuracy: Double) -> Bool {
@@ -475,23 +475,23 @@ public func XCTAssertNotEqual<T : FloatingPoint>(_ expression1: @autoclosure ()
475475
let expressionValueStr2 = "\(expressionValue2)"
476476
let accuracyStr = "\(accuracy)"
477477

478-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr1 as NSString, expressionValueStr2 as NSString, accuracyStr as NSString), message, file, line)
478+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr1 as NSString, expressionValueStr2 as NSString, accuracyStr as NSString), message(), file, line)
479479
}
480480

481481
case .failedWithError(let error):
482-
_XCTRegisterFailure(false, "XCTAssertNotEqual failed: threw error \"\(error)\"", message, file, line)
482+
_XCTRegisterFailure(false, "XCTAssertNotEqual failed: threw error \"\(error)\"", message(), file, line)
483483

484484
case .failedWithException(_, _, let reason):
485-
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message, file, line)
485+
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message(), file, line)
486486

487487
case .failedWithUnknownException:
488-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message, file, line)
488+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message(), file, line)
489489
}
490490
}
491491

492492
@available(*, deprecated, renamed: "XCTAssertNotEqual(_:_:accuracy:file:line:)")
493493
public func XCTAssertNotEqualWithAccuracy<T : FloatingPoint>(_ expression1: @autoclosure () throws -> T, _ expression2: @autoclosure () throws -> T, _ accuracy: T, _ message: @autoclosure () -> String = "", file: StaticString = #file, line: UInt = #line) {
494-
XCTAssertNotEqual(expression1, expression2, accuracy: accuracy, message, file: file, line: line)
494+
XCTAssertNotEqual(try expression1(), try expression2(), accuracy: accuracy, message(), file: file, line: line)
495495
}
496496

497497
public func XCTAssertGreaterThan<T : Comparable>(_ expression1: @autoclosure () throws -> T, _ expression2: @autoclosure () throws -> T, _ message: @autoclosure () -> String = "", file: StaticString = #file, line: UInt = #line) {
@@ -518,17 +518,17 @@ public func XCTAssertGreaterThan<T : Comparable>(_ expression1: @autoclosure ()
518518
let expressionValueStr1 = "\(expressionValue1)"
519519
let expressionValueStr2 = "\(expressionValue2)"
520520

521-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr1 as NSString, expressionValueStr2 as NSString), message, file, line)
521+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr1 as NSString, expressionValueStr2 as NSString), message(), file, line)
522522
}
523523

524524
case .failedWithError(let error):
525-
_XCTRegisterFailure(false, "XCTAssertGreaterThan failed: threw error \"\(error)\"", message, file, line)
525+
_XCTRegisterFailure(false, "XCTAssertGreaterThan failed: threw error \"\(error)\"", message(), file, line)
526526

527527
case .failedWithException(_, _, let reason):
528-
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message, file, line)
528+
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message(), file, line)
529529

530530
case .failedWithUnknownException:
531-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message, file, line)
531+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message(), file, line)
532532
}
533533
}
534534

@@ -557,17 +557,17 @@ public func XCTAssertGreaterThanOrEqual<T : Comparable>(_ expression1: @autoclos
557557
let expressionValueStr1 = "\(expressionValue1)"
558558
let expressionValueStr2 = "\(expressionValue2)"
559559

560-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr1 as NSString, expressionValueStr2 as NSString), message, file, line)
560+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr1 as NSString, expressionValueStr2 as NSString), message(), file, line)
561561
}
562562

563563
case .failedWithError(let error):
564-
_XCTRegisterFailure(false, "XCTAssertGreaterThanOrEqual failed: threw error \"\(error)\"", message, file, line)
564+
_XCTRegisterFailure(false, "XCTAssertGreaterThanOrEqual failed: threw error \"\(error)\"", message(), file, line)
565565

566566
case .failedWithException(_, _, let reason):
567-
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message, file, line)
567+
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message(), file, line)
568568

569569
case .failedWithUnknownException:
570-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message, file, line)
570+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message(), file, line)
571571
}
572572
}
573573

@@ -595,17 +595,17 @@ public func XCTAssertLessThan<T : Comparable>(_ expression1: @autoclosure () thr
595595
let expressionValueStr1 = "\(expressionValue1)"
596596
let expressionValueStr2 = "\(expressionValue2)"
597597

598-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr1 as NSString, expressionValueStr2 as NSString), message, file, line)
598+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr1 as NSString, expressionValueStr2 as NSString), message(), file, line)
599599
}
600600

601601
case .failedWithError(let error):
602-
_XCTRegisterFailure(false, "XCTAssertLessThan failed: threw error \"\(error)\"", message, file, line)
602+
_XCTRegisterFailure(false, "XCTAssertLessThan failed: threw error \"\(error)\"", message(), file, line)
603603

604604
case .failedWithException(_, _, let reason):
605-
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message, file, line)
605+
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message(), file, line)
606606

607607
case .failedWithUnknownException:
608-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message, file, line)
608+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message(), file, line)
609609
}
610610
}
611611

@@ -634,17 +634,17 @@ public func XCTAssertLessThanOrEqual<T : Comparable>(_ expression1: @autoclosure
634634
let expressionValueStr1 = "\(expressionValue1)"
635635
let expressionValueStr2 = "\(expressionValue2)"
636636

637-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr1 as NSString, expressionValueStr2 as NSString), message, file, line)
637+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 0, expressionValueStr1 as NSString, expressionValueStr2 as NSString), message(), file, line)
638638
}
639639

640640
case .failedWithError(let error):
641-
_XCTRegisterFailure(false, "XCTAssertLessThanOrEqual failed: threw error \"\(error)\"", message, file, line)
641+
_XCTRegisterFailure(false, "XCTAssertLessThanOrEqual failed: threw error \"\(error)\"", message(), file, line)
642642

643643
case .failedWithException(_, _, let reason):
644-
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message, file, line)
644+
_XCTRegisterFailure(false, _XCTFailureDescription(assertionType, 1, reason as NSString), message(), file, line)
645645

646646
case .failedWithUnknownException:
647-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message, file, line)
647+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message(), file, line)
648648
}
649649
}
650650

@@ -665,17 +665,17 @@ public func XCTAssertThrowsError<T>(_ expression: @autoclosure () throws -> T, _
665665
if let caughtError = caughtErrorOptional {
666666
errorHandler(caughtError)
667667
} else {
668-
_XCTRegisterFailure(true, "XCTAssertThrowsError failed: did not throw an error", message, file, line)
668+
_XCTRegisterFailure(true, "XCTAssertThrowsError failed: did not throw an error", message(), file, line)
669669
}
670670

671671
case .failedWithError(let error):
672-
_XCTRegisterFailure(false, "XCTAssertThrowsError failed: threw error \"\(error)\"", message, file, line)
672+
_XCTRegisterFailure(false, "XCTAssertThrowsError failed: threw error \"\(error)\"", message(), file, line)
673673

674674
case .failedWithException(_, _, let reason):
675-
_XCTRegisterFailure(true, "XCTAssertThrowsError failed: throwing \(reason)", message, file, line)
675+
_XCTRegisterFailure(true, "XCTAssertThrowsError failed: throwing \(reason)", message(), file, line)
676676

677677
case .failedWithUnknownException:
678-
_XCTRegisterFailure(true, "XCTAssertThrowsError failed: throwing an unknown exception", message, file, line)
678+
_XCTRegisterFailure(true, "XCTAssertThrowsError failed: throwing an unknown exception", message(), file, line)
679679
}
680680
}
681681

@@ -689,13 +689,13 @@ public func XCTAssertNoThrow<T>(_ expression: @autoclosure () throws -> T, _ mes
689689
return
690690

691691
case .failedWithError(let error):
692-
_XCTRegisterFailure(true, "XCTAssertNoThrow failed: threw error \"\(error)\"", message, file, line)
692+
_XCTRegisterFailure(true, "XCTAssertNoThrow failed: threw error \"\(error)\"", message(), file, line)
693693

694694
case .failedWithException(_, _, let reason):
695-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 1, reason as NSString), message, file, line)
695+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 1, reason as NSString), message(), file, line)
696696

697697
case .failedWithUnknownException:
698-
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message, file, line)
698+
_XCTRegisterFailure(true, _XCTFailureDescription(assertionType, 2), message(), file, line)
699699
}
700700
}
701701

0 commit comments

Comments
 (0)