This commit is contained in:
zeus
2025-01-22 16:22:33 +08:00
parent 09b9cec8ec
commit 738c373a77
2534 changed files with 0 additions and 486292 deletions
@@ -1,33 +0,0 @@
import XCTest
import Foundation
@testable import GRDB
private struct UseDefaultKeysRecord: PersistableRecord, Encodable {
static var databaseColumnEncodingStrategy: DatabaseColumnEncodingStrategy { .useDefaultKeys }
var recordID: String
}
private struct ConvertToSnakeCaseRecord: PersistableRecord, Encodable {
static var databaseColumnEncodingStrategy: DatabaseColumnEncodingStrategy { .convertToSnakeCase }
var recordID: String
}
class DatabaseColumnEncodingStrategyTests: GRDBTestCase {
func testUseDefaultKeys() throws {
let record = UseDefaultKeysRecord(recordID: "test")
var container = PersistenceContainer()
try record.encode(to: &container)
XCTAssertNil(container["record_id"]?.databaseValue.storage)
XCTAssertEqual(container["recordID"]?.databaseValue.storage, "test".databaseValue.storage)
}
func testConvertToSnakeCase() throws {
let record = ConvertToSnakeCaseRecord(recordID: "test")
var container = PersistenceContainer()
try record.encode(to: &container)
XCTAssertNil(container["recordID"]?.databaseValue.storage)
XCTAssertEqual(container["record_id"]?.databaseValue.storage, "test".databaseValue.storage)
}
}