add
This commit is contained in:
@@ -1,161 +0,0 @@
|
||||
import XCTest
|
||||
import GRDB
|
||||
|
||||
import XCTest
|
||||
|
||||
class ResultCodeTests: GRDBTestCase {
|
||||
|
||||
func testResultCodeEquatable() {
|
||||
XCTAssertEqual(ResultCode(rawValue: 19), .SQLITE_CONSTRAINT)
|
||||
XCTAssertEqual(ResultCode(rawValue: 787), .SQLITE_CONSTRAINT_FOREIGNKEY)
|
||||
XCTAssertNotEqual(ResultCode.SQLITE_CONSTRAINT, .SQLITE_CONSTRAINT_FOREIGNKEY)
|
||||
}
|
||||
|
||||
func testResultCodeMatch() {
|
||||
XCTAssertTrue(ResultCode.SQLITE_CONSTRAINT ~= .SQLITE_CONSTRAINT)
|
||||
XCTAssertTrue(ResultCode.SQLITE_CONSTRAINT ~= .SQLITE_CONSTRAINT_FOREIGNKEY)
|
||||
XCTAssertTrue(ResultCode.SQLITE_CONSTRAINT_FOREIGNKEY ~= .SQLITE_CONSTRAINT_FOREIGNKEY)
|
||||
XCTAssertFalse(ResultCode.SQLITE_CONSTRAINT_FOREIGNKEY ~= .SQLITE_CONSTRAINT)
|
||||
XCTAssertFalse(ResultCode.SQLITE_TOOBIG ~= .SQLITE_CONSTRAINT)
|
||||
}
|
||||
|
||||
func testResultCodeSwitch() {
|
||||
switch ResultCode.SQLITE_CONSTRAINT {
|
||||
case ResultCode.SQLITE_CONSTRAINT_FOREIGNKEY: XCTFail()
|
||||
case ResultCode.SQLITE_CONSTRAINT: break
|
||||
default: XCTFail()
|
||||
}
|
||||
|
||||
switch ResultCode.SQLITE_CONSTRAINT_FOREIGNKEY {
|
||||
case ResultCode.SQLITE_CONSTRAINT_FOREIGNKEY: break
|
||||
case ResultCode.SQLITE_CONSTRAINT: XCTFail()
|
||||
default: XCTFail()
|
||||
}
|
||||
|
||||
switch ResultCode.SQLITE_CONSTRAINT_CHECK {
|
||||
case ResultCode.SQLITE_CONSTRAINT_FOREIGNKEY: XCTFail()
|
||||
case ResultCode.SQLITE_CONSTRAINT: break
|
||||
default: XCTFail()
|
||||
}
|
||||
|
||||
switch ResultCode.SQLITE_TOOBIG {
|
||||
case ResultCode.SQLITE_CONSTRAINT_FOREIGNKEY: XCTFail()
|
||||
case ResultCode.SQLITE_CONSTRAINT: XCTFail()
|
||||
default: break
|
||||
}
|
||||
}
|
||||
|
||||
func testCatchResultCode() throws {
|
||||
do {
|
||||
do {
|
||||
throw DatabaseError(resultCode: .SQLITE_ERROR)
|
||||
} catch DatabaseError.SQLITE_CONSTRAINT_FOREIGNKEY {
|
||||
XCTFail()
|
||||
} catch DatabaseError.SQLITE_CONSTRAINT {
|
||||
XCTFail()
|
||||
} catch DatabaseError.SQLITE_OK {
|
||||
XCTFail()
|
||||
} catch {
|
||||
// Success
|
||||
}
|
||||
|
||||
do {
|
||||
throw DatabaseError(resultCode: .SQLITE_CONSTRAINT)
|
||||
} catch DatabaseError.SQLITE_CONSTRAINT_FOREIGNKEY {
|
||||
XCTFail()
|
||||
} catch DatabaseError.SQLITE_CONSTRAINT {
|
||||
// Success
|
||||
} catch DatabaseError.SQLITE_OK {
|
||||
XCTFail()
|
||||
} catch {
|
||||
XCTFail()
|
||||
}
|
||||
|
||||
do {
|
||||
throw DatabaseError(resultCode: .SQLITE_CONSTRAINT_FOREIGNKEY)
|
||||
} catch DatabaseError.SQLITE_CONSTRAINT_FOREIGNKEY {
|
||||
// Success
|
||||
} catch DatabaseError.SQLITE_CONSTRAINT {
|
||||
XCTFail()
|
||||
} catch DatabaseError.SQLITE_OK {
|
||||
XCTFail()
|
||||
} catch {
|
||||
XCTFail()
|
||||
}
|
||||
|
||||
do {
|
||||
throw DatabaseError(resultCode: .SQLITE_CONSTRAINT_CHECK)
|
||||
} catch DatabaseError.SQLITE_CONSTRAINT_FOREIGNKEY {
|
||||
XCTFail()
|
||||
} catch DatabaseError.SQLITE_CONSTRAINT {
|
||||
// Success
|
||||
} catch DatabaseError.SQLITE_OK {
|
||||
XCTFail()
|
||||
} catch {
|
||||
XCTFail()
|
||||
}
|
||||
}
|
||||
|
||||
do {
|
||||
do {
|
||||
throw DatabaseError(resultCode: .SQLITE_ERROR)
|
||||
} catch let error as DatabaseError {
|
||||
switch error {
|
||||
case DatabaseError.SQLITE_CONSTRAINT_FOREIGNKEY:
|
||||
XCTFail()
|
||||
case DatabaseError.SQLITE_CONSTRAINT:
|
||||
XCTFail()
|
||||
case DatabaseError.SQLITE_OK:
|
||||
XCTFail()
|
||||
default:
|
||||
break // Success
|
||||
}
|
||||
}
|
||||
|
||||
do {
|
||||
throw DatabaseError(resultCode: .SQLITE_CONSTRAINT)
|
||||
} catch let error as DatabaseError {
|
||||
switch error {
|
||||
case DatabaseError.SQLITE_CONSTRAINT_FOREIGNKEY:
|
||||
XCTFail()
|
||||
case DatabaseError.SQLITE_CONSTRAINT:
|
||||
break // Success
|
||||
case DatabaseError.SQLITE_OK:
|
||||
XCTFail()
|
||||
default:
|
||||
XCTFail()
|
||||
}
|
||||
}
|
||||
|
||||
do {
|
||||
throw DatabaseError(resultCode: .SQLITE_CONSTRAINT_FOREIGNKEY)
|
||||
} catch let error as DatabaseError {
|
||||
switch error {
|
||||
case DatabaseError.SQLITE_CONSTRAINT_FOREIGNKEY:
|
||||
break // Success
|
||||
case DatabaseError.SQLITE_CONSTRAINT:
|
||||
XCTFail()
|
||||
case DatabaseError.SQLITE_OK:
|
||||
XCTFail()
|
||||
default:
|
||||
XCTFail()
|
||||
}
|
||||
}
|
||||
|
||||
do {
|
||||
throw DatabaseError(resultCode: .SQLITE_CONSTRAINT_CHECK)
|
||||
} catch let error as DatabaseError {
|
||||
switch error {
|
||||
case DatabaseError.SQLITE_CONSTRAINT_FOREIGNKEY:
|
||||
XCTFail()
|
||||
case DatabaseError.SQLITE_CONSTRAINT:
|
||||
break // Success
|
||||
case DatabaseError.SQLITE_OK:
|
||||
XCTFail()
|
||||
default:
|
||||
XCTFail()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user