Skip to content

Instantly share code, notes, and snippets.

@sgrgrsn
Created May 20, 2019 20:14
Show Gist options
  • Save sgrgrsn/899f85e03d11b677a38d6314a853e0e8 to your computer and use it in GitHub Desktop.
Save sgrgrsn/899f85e03d11b677a38d6314a853e0e8 to your computer and use it in GitHub Desktop.
Clean up your assertions by removing `XCTAssert`
import XCTest
public func _true(_ expression: @autoclosure () throws -> Bool, _ message: String = "", file: StaticString = #file, line: UInt = #line) {
XCTAssert(try expression(), message, file: file, line: line)
}
public func _false(_ expression: @autoclosure () throws -> Bool, _ message: String = "", file: StaticString = #file, line: UInt = #line) {
XCTAssertFalse(try expression(), message, file: file, line: line)
}
public func _equal<T>(_ expected: @autoclosure () throws -> T, _ actual: @autoclosure () throws -> T, _ message: String = "", file: StaticString = #file, line: UInt = #line) where T : Equatable {
XCTAssertEqual(try expected(), try actual(), message, file: file, line: line)
}
public func _count<T>(_ expected: Int, _ countable: T, _ message: String = "", file: StaticString = #file, line: UInt = #line) where T : Collection {
XCTAssertEqual(countable.count, expected, message, file: file, line: line)
}
public func _nil(_ expression: @autoclosure () throws -> Any?, _ message: String = "", file: StaticString = #file, line: UInt = #line) {
XCTAssertNil(try expression(), message, file: file, line: line)
}
public func _notNil(_ expression: @autoclosure () throws -> Any?, _ message: String = "", file: StaticString = #file, line: UInt = #line) {
XCTAssertNotNil(try expression(), message, file: file, line: line)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment