add swiftUI code
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
import XCTest
|
||||
import GRDB
|
||||
|
||||
class FoundationNSStringTests: GRDBTestCase {
|
||||
|
||||
func testNSStringDatabaseRoundTrip() throws {
|
||||
let dbQueue = try makeDatabaseQueue()
|
||||
func roundTrip(_ value: NSString) throws -> Bool {
|
||||
guard let back = try dbQueue.inDatabase({ try NSString.fetchOne($0, sql: "SELECT ?", arguments: [value]) }) else {
|
||||
XCTFail()
|
||||
return false
|
||||
}
|
||||
return back == value
|
||||
}
|
||||
|
||||
XCTAssertTrue(try roundTrip(NSString(string: "")))
|
||||
XCTAssertTrue(try roundTrip(NSString(string: "foo")))
|
||||
XCTAssertTrue(try roundTrip(NSString(string: "'fooéı👨👨🏿🇫🇷🇨🇮'")))
|
||||
}
|
||||
|
||||
func testNSStringDatabaseValueRoundTrip() {
|
||||
|
||||
func roundTrip(_ value: NSString) -> Bool
|
||||
{
|
||||
let dbValue = value.databaseValue
|
||||
guard let back = NSString.fromDatabaseValue(dbValue) else
|
||||
{
|
||||
XCTFail("Failed to convert from DatabaseValue to NSString")
|
||||
return false
|
||||
}
|
||||
return back.isEqual(value)
|
||||
}
|
||||
|
||||
XCTAssertTrue(roundTrip(NSString(string: "")))
|
||||
XCTAssertTrue(roundTrip(NSString(string: "foo")))
|
||||
XCTAssertTrue(roundTrip(NSString(string: "'fooéı👨👨🏿🇫🇷🇨🇮'")))
|
||||
}
|
||||
|
||||
func testNSStringFromStringDatabaseValueSuccess() {
|
||||
let databaseValue_String = "foo".databaseValue
|
||||
XCTAssertEqual(NSString.fromDatabaseValue(databaseValue_String), "foo")
|
||||
}
|
||||
|
||||
func testNSStringFromDatabaseValueFailure() {
|
||||
let databaseValue_Null = DatabaseValue.null
|
||||
let databaseValue_Int64 = Int64(1).databaseValue
|
||||
let databaseValue_Double = Double(100000.1).databaseValue
|
||||
let databaseValue_Blob = "bar".data(using: .utf8)!.databaseValue
|
||||
XCTAssertNil(NSString.fromDatabaseValue(databaseValue_Null))
|
||||
XCTAssertNil(NSString.fromDatabaseValue(databaseValue_Int64))
|
||||
XCTAssertNil(NSString.fromDatabaseValue(databaseValue_Double))
|
||||
XCTAssertEqual(NSString.fromDatabaseValue(databaseValue_Blob), "bar")
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user