Skip to content
This repository was archived by the owner on Nov 7, 2025. It is now read-only.

Commit b0d4b8c

Browse files
committed
test cleanup
1 parent b3c7e4a commit b0d4b8c

File tree

1 file changed

+78
-67
lines changed

1 file changed

+78
-67
lines changed

platform/frontend_connectors/schema_transformer_test.go

Lines changed: 78 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -2154,87 +2154,98 @@ func Test_acceptIntsAsTimestamps(t *testing.T) {
21542154
}
21552155

21562156
func TestApplySelectFromCluster(t *testing.T) {
2157-
query := &model.Query{
2158-
TableName: "test_table",
2159-
SelectCommand: model.SelectCommand{
2160-
FromClause: model.NewTableRefWithDatabaseName("test_table", "test_db"),
2161-
},
2162-
}
2157+
originalTableReference := model.NewTableRefWithDatabaseName("test_table", "test_db")
2158+
expectedTableReference := model.NewLiteral(`cluster("my_cluster", "test_db", "test_table")`)
21632159
cfg := &config.QuesmaConfiguration{
21642160
ClusterName: "my_cluster",
21652161
}
2166-
transform := NewSchemaCheckPass(cfg, nil, defaultSearchAfterStrategy)
21672162

2168-
result, err := transform.ApplySelectFromCluster(schema.Schema{}, query)
2169-
assert.NoError(t, err)
2170-
expected := model.NewLiteral(`cluster("my_cluster", "test_db", "test_table")`)
2171-
assert.Equal(t, expected, result.SelectCommand.FromClause)
2172-
}
2173-
2174-
func TestApplySelectFromCluster2(t *testing.T) {
2175-
2176-
query := &model.Query{
2177-
SelectCommand: model.SelectCommand{
2178-
Columns: []model.Expr{model.NewFunction("sum", model.NewColumnRef("FirstColumn"))},
2179-
FromClause: model.SelectCommand{
2180-
Columns: []model.Expr{model.NewFunction("sum", model.NewColumnRef("SecondColumn"))},
2181-
FromClause: model.SelectCommand{
2182-
Columns: []model.Expr{model.NewFunction("sum", model.NewColumnRef("ThirdColumn"))},
2183-
FromClause: model.NewTableRefWithDatabaseName("test_table", "test_db"),
2163+
tests := []struct {
2164+
name string
2165+
query *model.Query
2166+
expected *model.Query
2167+
}{
2168+
{
2169+
name: "simple FROM <tableName> substitution",
2170+
query: &model.Query{
2171+
TableName: "test_table",
2172+
SelectCommand: model.SelectCommand{
2173+
FromClause: originalTableReference,
2174+
},
2175+
},
2176+
expected: &model.Query{
2177+
TableName: "test_table",
2178+
SelectCommand: model.SelectCommand{
2179+
FromClause: expectedTableReference,
2180+
},
2181+
},
2182+
},
2183+
{
2184+
name: "nested FROM (SELECT ...) substitution",
2185+
query: &model.Query{
2186+
SelectCommand: model.SelectCommand{
2187+
Columns: []model.Expr{model.NewFunction("sum", model.NewColumnRef("FirstColumn"))},
2188+
FromClause: model.SelectCommand{
2189+
Columns: []model.Expr{model.NewFunction("sum", model.NewColumnRef("SecondColumn"))},
2190+
FromClause: model.SelectCommand{
2191+
Columns: []model.Expr{model.NewFunction("sum", model.NewColumnRef("ThirdColumn"))},
2192+
FromClause: originalTableReference,
2193+
WhereClause: model.NewInfixExpr(
2194+
model.NewColumnRef("ThirdColumn"),
2195+
">=",
2196+
model.NewLiteral(50),
2197+
),
2198+
},
2199+
WhereClause: model.NewInfixExpr(
2200+
model.NewColumnRef("SecondColumn"),
2201+
">=",
2202+
model.NewLiteral(50),
2203+
),
2204+
},
21842205
WhereClause: model.NewInfixExpr(
2185-
model.NewColumnRef("ThirdColumn"),
2206+
model.NewColumnRef("FirstColumn"),
21862207
">=",
21872208
model.NewLiteral(50),
21882209
),
21892210
},
2190-
WhereClause: model.NewInfixExpr(
2191-
model.NewColumnRef("SecondColumn"),
2192-
">=",
2193-
model.NewLiteral(50),
2194-
),
2195-
},
2196-
WhereClause: model.NewInfixExpr(
2197-
model.NewColumnRef("FirstColumn"),
2198-
">=",
2199-
model.NewLiteral(50),
2200-
),
2201-
},
2202-
}
2203-
cfg := &config.QuesmaConfiguration{
2204-
ClusterName: "my_cluster",
2205-
}
2206-
transform := NewSchemaCheckPass(cfg, nil, defaultSearchAfterStrategy)
2207-
2208-
// When
2209-
result, err := transform.ApplySelectFromCluster(schema.Schema{}, query)
2210-
// Then
2211-
assert.NoError(t, err)
2212-
expected := &model.Query{
2213-
SelectCommand: model.SelectCommand{
2214-
Columns: []model.Expr{model.NewFunction("sum", model.NewColumnRef("FirstColumn"))},
2215-
FromClause: model.SelectCommand{
2216-
Columns: []model.Expr{model.NewFunction("sum", model.NewColumnRef("SecondColumn"))},
2217-
FromClause: model.SelectCommand{
2218-
Columns: []model.Expr{model.NewFunction("sum", model.NewColumnRef("ThirdColumn"))},
2219-
FromClause: model.NewLiteral(`cluster("my_cluster", "test_db", "test_table")`),
2211+
},
2212+
expected: &model.Query{
2213+
SelectCommand: model.SelectCommand{
2214+
Columns: []model.Expr{model.NewFunction("sum", model.NewColumnRef("FirstColumn"))},
2215+
FromClause: model.SelectCommand{
2216+
Columns: []model.Expr{model.NewFunction("sum", model.NewColumnRef("SecondColumn"))},
2217+
FromClause: model.SelectCommand{
2218+
Columns: []model.Expr{model.NewFunction("sum", model.NewColumnRef("ThirdColumn"))},
2219+
FromClause: expectedTableReference,
2220+
WhereClause: model.NewInfixExpr(
2221+
model.NewColumnRef("ThirdColumn"),
2222+
">=",
2223+
model.NewLiteral(50),
2224+
),
2225+
},
2226+
WhereClause: model.NewInfixExpr(
2227+
model.NewColumnRef("SecondColumn"),
2228+
">=",
2229+
model.NewLiteral(50),
2230+
),
2231+
},
22202232
WhereClause: model.NewInfixExpr(
2221-
model.NewColumnRef("ThirdColumn"),
2233+
model.NewColumnRef("FirstColumn"),
22222234
">=",
22232235
model.NewLiteral(50),
22242236
),
22252237
},
2226-
WhereClause: model.NewInfixExpr(
2227-
model.NewColumnRef("SecondColumn"),
2228-
">=",
2229-
model.NewLiteral(50),
2230-
),
2231-
},
2232-
WhereClause: model.NewInfixExpr(
2233-
model.NewColumnRef("FirstColumn"),
2234-
">=",
2235-
model.NewLiteral(50),
2236-
),
2238+
},
22372239
},
22382240
}
2239-
assert.Equal(t, expected, result)
2241+
2242+
transform := NewSchemaCheckPass(cfg, nil, defaultSearchAfterStrategy)
2243+
2244+
for _, tt := range tests {
2245+
t.Run(tt.name, func(t *testing.T) {
2246+
result, err := transform.ApplySelectFromCluster(schema.Schema{}, tt.query)
2247+
assert.NoError(t, err)
2248+
assert.Equal(t, tt.expected, result)
2249+
})
2250+
}
22402251
}

0 commit comments

Comments
 (0)