@@ -74,6 +74,20 @@ func TestQueries(t *testing.T, harness Harness) {
74
74
})
75
75
}
76
76
77
+ for _ , tt := range queries .FunctionQueryTests {
78
+ t .Run (tt .Query , func (t * testing.T ) {
79
+ if sh , ok := harness .(SkippingHarness ); ok {
80
+ if sh .SkipQueryTest (tt .Query ) {
81
+ t .Skipf ("Skipping query plan for %s" , tt .Query )
82
+ }
83
+ }
84
+ if IsServerEngine (e ) && tt .SkipServerEngine {
85
+ t .Skip ("skipping for server engine" )
86
+ }
87
+ TestQueryWithContext (t , ctx , e , harness , tt .Query , tt .Expected , tt .ExpectedColumns , nil , nil )
88
+ })
89
+ }
90
+
77
91
// TODO: move this into its own test method
78
92
if keyless , ok := harness .(KeylessTableHarness ); ok && keyless .SupportsKeylessTables () {
79
93
for _ , tt := range queries .KeylessQueries {
@@ -218,6 +232,17 @@ func TestQueriesPrepared(t *testing.T, harness Harness) {
218
232
}
219
233
})
220
234
235
+ t .Run ("function query prepared tests" , func (t * testing.T ) {
236
+ for _ , tt := range queries .FunctionQueryTests {
237
+ if tt .SkipPrepared {
238
+ continue
239
+ }
240
+ t .Run (tt .Query , func (t * testing.T ) {
241
+ TestPreparedQueryWithEngine (t , harness , e , tt )
242
+ })
243
+ }
244
+ })
245
+
221
246
t .Run ("keyless prepared tests" , func (t * testing.T ) {
222
247
harness .Setup (setup .MydbData , setup .KeylessData , setup .Keyless_idxData , setup .MytableData )
223
248
for _ , tt := range queries .KeylessQueries {
@@ -487,6 +512,7 @@ func TestReadOnlyDatabases(t *testing.T, harness ReadOnlyDatabaseHarness) {
487
512
488
513
for _ , querySet := range [][]queries.QueryTest {
489
514
queries .QueryTests ,
515
+ queries .FunctionQueryTests ,
490
516
queries .KeylessQueries ,
491
517
} {
492
518
for _ , tt := range querySet {
0 commit comments