@@ -1160,8 +1160,12 @@ await db.refreshMaterializedView(newYorkers2).withNoData().concurrently();
1160
1160
}
1161
1161
1162
1162
{
1163
+ const testSchema = pgSchema ( 'test' ) ;
1164
+
1163
1165
const e1 = pgEnum ( 'test' , [ 'a' , 'b' , 'c' ] ) ;
1164
1166
const e2 = pgEnum ( 'test' , [ 'a' , 'b' , 'c' ] as const ) ;
1167
+ const e3 = testSchema . enum ( 'test' , [ 'a' , 'b' , 'c' ] ) ;
1168
+ const e4 = testSchema . enum ( 'test' , [ 'a' , 'b' , 'c' ] as const ) ;
1165
1169
1166
1170
const test = pgTable ( 'test' , {
1167
1171
col1 : char ( 'col1' , { enum : [ 'a' , 'b' , 'c' ] as const } ) ,
@@ -1175,6 +1179,8 @@ await db.refreshMaterializedView(newYorkers2).withNoData().concurrently();
1175
1179
col9 : varchar ( 'col9' , { enum : [ 'a' , 'b' , 'c' ] as const } ) ,
1176
1180
col10 : varchar ( 'col10' , { enum : [ 'a' , 'b' , 'c' ] } ) ,
1177
1181
col11 : varchar ( 'col11' ) ,
1182
+ col12 : e3 ( 'col4' ) ,
1183
+ col13 : e4 ( 'col5' ) ,
1178
1184
} ) ;
1179
1185
1180
1186
Expect < Equal < [ 'a' , 'b' , 'c' ] , typeof test . col1 . enumValues > > ;
@@ -1188,11 +1194,17 @@ await db.refreshMaterializedView(newYorkers2).withNoData().concurrently();
1188
1194
Expect < Equal < [ 'a' , 'b' , 'c' ] , typeof test . col9 . enumValues > > ;
1189
1195
Expect < Equal < [ 'a' , 'b' , 'c' ] , typeof test . col10 . enumValues > > ;
1190
1196
Expect < Equal < [ string , ...string [ ] ] , typeof test . col11 . enumValues > > ;
1197
+ Expect < Equal < [ 'a' , 'b' , 'c' ] , typeof test . col12 . enumValues > > ;
1198
+ Expect < Equal < [ 'a' , 'b' , 'c' ] , typeof test . col13 . enumValues > > ;
1191
1199
}
1192
1200
1193
1201
{
1202
+ const testSchema = pgSchema ( 'test' ) ;
1203
+
1194
1204
const e1 = pgEnum ( 'test' , [ 'a' , 'b' , 'c' ] ) ;
1195
1205
const e2 = pgEnum ( 'test' , [ 'a' , 'b' , 'c' ] as const ) ;
1206
+ const e3 = testSchema . enum ( 'test' , [ 'a' , 'b' , 'c' ] ) ;
1207
+ const e4 = testSchema . enum ( 'test' , [ 'a' , 'b' , 'c' ] as const ) ;
1196
1208
1197
1209
const test = pgTable ( 'test' , {
1198
1210
col1 : char ( 'col1' , { enum : [ 'a' , 'b' , 'c' ] as const } ) . generatedAlwaysAs ( sql `` ) ,
@@ -1206,6 +1218,8 @@ await db.refreshMaterializedView(newYorkers2).withNoData().concurrently();
1206
1218
col9 : varchar ( 'col9' , { enum : [ 'a' , 'b' , 'c' ] as const } ) . generatedAlwaysAs ( sql `` ) ,
1207
1219
col10 : varchar ( 'col10' , { enum : [ 'a' , 'b' , 'c' ] } ) . generatedAlwaysAs ( sql `` ) ,
1208
1220
col11 : varchar ( 'col11' ) . generatedAlwaysAs ( sql `` ) ,
1221
+ col12 : e3 ( 'col4' ) . generatedAlwaysAs ( sql `` ) ,
1222
+ col13 : e4 ( 'col5' ) . generatedAlwaysAs ( sql `` ) ,
1209
1223
} ) ;
1210
1224
1211
1225
Expect < Equal < [ 'a' , 'b' , 'c' ] , typeof test . col1 . enumValues > > ;
@@ -1219,6 +1233,8 @@ await db.refreshMaterializedView(newYorkers2).withNoData().concurrently();
1219
1233
Expect < Equal < [ 'a' , 'b' , 'c' ] , typeof test . col9 . enumValues > > ;
1220
1234
Expect < Equal < [ 'a' , 'b' , 'c' ] , typeof test . col10 . enumValues > > ;
1221
1235
Expect < Equal < [ string , ...string [ ] ] , typeof test . col11 . enumValues > > ;
1236
+ Expect < Equal < [ 'a' , 'b' , 'c' ] , typeof test . col12 . enumValues > > ;
1237
+ Expect < Equal < [ 'a' , 'b' , 'c' ] , typeof test . col13 . enumValues > > ;
1222
1238
}
1223
1239
1224
1240
{
@@ -1439,4 +1455,22 @@ await db.refreshMaterializedView(newYorkers2).withNoData().concurrently();
1439
1455
const res = await db . select ( ) . from ( table ) ;
1440
1456
1441
1457
Expect < Equal < { enum : Role | null } [ ] , typeof res > > ;
1458
+
1459
+ const mySchema = pgSchema ( 'my_schema' ) ;
1460
+
1461
+ const schemaRole = mySchema . enum ( 'role' , Role ) ;
1462
+
1463
+ // @ts -expect-error
1464
+ mySchema . enum ( 'role' , RoleNonString ) ;
1465
+
1466
+ // @ts -expect-error
1467
+ mySchema . enum ( 'role' , RolePartiallyString ) ;
1468
+
1469
+ const schemaTable = mySchema . table ( 'table' , {
1470
+ enum : schemaRole ( 'enum' ) ,
1471
+ } ) ;
1472
+
1473
+ const schemaRes = await db . select ( ) . from ( schemaTable ) ;
1474
+
1475
+ Expect < Equal < { enum : Role | null } [ ] , typeof schemaRes > > ;
1442
1476
}
0 commit comments