@@ -58,9 +58,9 @@ extension SnapshotTests {
58
58
@Table
59
59
struct User {
60
60
/// The user's identifier.
61
- let id: /* TODO: UUID */Int
61
+ let id: /* TODO: UUID */Int // Primary key
62
62
/// The user's email.
63
- var email: String? // TODO: Should this be non-optional?
63
+ var email: String? = " " // TODO: Should this be non-optional?
64
64
/// The user's age.
65
65
var age: Int
66
66
}
@@ -69,16 +69,16 @@ extension SnapshotTests {
69
69
#"""
70
70
struct User {
71
71
/// The user's identifier.
72
- let id: /* TODO: UUID */Int
72
+ let id: /* TODO: UUID */Int // Primary key
73
73
/// The user's email.
74
- var email: String? // TODO: Should this be non-optional?
74
+ var email: String? = "" // TODO: Should this be non-optional?
75
75
/// The user's age.
76
76
var age: Int
77
77
78
78
public nonisolated struct TableColumns: StructuredQueriesCore.TableDefinition, StructuredQueriesCore.PrimaryKeyedTableDefinition {
79
79
public typealias QueryValue = User
80
80
public let id = StructuredQueriesCore.TableColumn<QueryValue, Int>("id", keyPath: \QueryValue.id)
81
- public let email = StructuredQueriesCore.TableColumn<QueryValue, String?>("email", keyPath: \QueryValue.email)
81
+ public let email = StructuredQueriesCore.TableColumn<QueryValue, String?>("email", keyPath: \QueryValue.email, default: "" )
82
82
public let age = StructuredQueriesCore.TableColumn<QueryValue, Int>("age", keyPath: \QueryValue.age)
83
83
public var primaryKey: StructuredQueriesCore.TableColumn<QueryValue, Int> {
84
84
self.id
@@ -96,13 +96,13 @@ extension SnapshotTests {
96
96
97
97
public struct Draft: StructuredQueriesCore.TableDraft {
98
98
public typealias PrimaryTable = User
99
- let id: /* TODO: UUID */ Int?
100
- var email: String?
99
+ let id: /* TODO: UUID */ Int? // Primary key
100
+ var email: String? = ""
101
101
var age: Int
102
102
public nonisolated struct TableColumns: StructuredQueriesCore.TableDefinition {
103
103
public typealias QueryValue = Draft
104
104
public let id = StructuredQueriesCore.TableColumn<QueryValue, Int?>("id", keyPath: \QueryValue.id)
105
- public let email = StructuredQueriesCore.TableColumn<QueryValue, String?>("email", keyPath: \QueryValue.email)
105
+ public let email = StructuredQueriesCore.TableColumn<QueryValue, String?>("email", keyPath: \QueryValue.email, default: "" )
106
106
public let age = StructuredQueriesCore.TableColumn<QueryValue, Int>("age", keyPath: \QueryValue.age)
107
107
public static var allColumns: [any StructuredQueriesCore.TableColumnExpression] {
108
108
[QueryValue.columns.id, QueryValue.columns.email, QueryValue.columns.age]
@@ -124,7 +124,7 @@ extension SnapshotTests {
124
124
125
125
public nonisolated init(decoder: inout some StructuredQueriesCore.QueryDecoder) throws {
126
126
self.id = try decoder.decode(Int.self)
127
- self.email = try decoder.decode(String.self)
127
+ self.email = try decoder.decode(String.self) ?? ""
128
128
let age = try decoder.decode(Int.self)
129
129
guard let age else {
130
130
throw QueryDecodingError.missingRequiredColumn
@@ -139,7 +139,7 @@ extension SnapshotTests {
139
139
}
140
140
public init(
141
141
id: /* TODO: UUID */ Int? = nil,
142
- email: String? = nil ,
142
+ email: String? = "" ,
143
143
age: Int
144
144
) {
145
145
self.id = id
@@ -158,7 +158,7 @@ extension SnapshotTests {
158
158
}
159
159
public nonisolated init(decoder: inout some StructuredQueriesCore.QueryDecoder) throws {
160
160
let id = try decoder.decode(Int.self)
161
- self.email = try decoder.decode(String.self)
161
+ self.email = try decoder.decode(String.self) ?? "" // TODO: Should this be non-optional?
162
162
let age = try decoder.decode(Int.self)
163
163
guard let id else {
164
164
throw QueryDecodingError.missingRequiredColumn
0 commit comments