Skip to content

Instantly share code, notes, and snippets.

@adam-fowler
Forked from ptoffy/XCTAssert(Not)Nil
Last active June 20, 2025 10:48
Show Gist options
  • Save adam-fowler/295f331f3de1f7ab35e6f491966f919b to your computer and use it in GitHub Desktop.
Save adam-fowler/295f331f3de1f7ab35e6f491966f919b to your computer and use it in GitHub Desktop.
Swift Testing Migration Utilities
replace: func test(.*)\(\)
with: @Test func test$1()
replace: (try\s+)?XCTAssertEqual\((.*),\s*([^,]+)\)
with: #expect($2 == $3)
replace: (try\s+)?XCTAssertNotEqual\((.*),\s*([^,]+)\)
with: #expect($2 != $3)
replace: XCTAssertNil\((.*)\)
with: #expect($1 == nil)
replace: XCTAssertNotNil\((.*)\)
with: #expect($1 != nil)
replace: XCTAssertNoThrow\((.*)\)
with: #expect(throws: Never.self) { $1 }
replace: XCTAssertThrowsError\((.*)\)
with: #expect(throws: (any Error).self) { $1 }
replace: XCTFail
with: Issue.record
replace: XCTUnwrap\((.*)\)
with: #require($1)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment