@@ -142,5 +142,50 @@ func TestWHSchemasRepo(t *testing.T) {
142
142
t .Log ("empty" )
143
143
_ , err = r .GetTablesForConnection (ctx , []warehouseutils.SourceIDDestinationID {})
144
144
require .EqualError (t , err , errors .New ("no source id and destination id pairs provided" ).Error ())
145
+
146
+ t .Log ("multiple" )
147
+ latestNamespace := "latest_namespace"
148
+ sourceID2 := "source_id_2"
149
+ destinationID2 := "destination_id_2"
150
+ connection2 := warehouseutils.SourceIDDestinationID {SourceID : sourceID2 , DestinationID : destinationID2 }
151
+ schemaLatest := model.WHSchema {
152
+ UploadID : 2 ,
153
+ SourceID : sourceID ,
154
+ Namespace : latestNamespace ,
155
+ DestinationID : destinationID ,
156
+ DestinationType : destinationType ,
157
+ Schema : schemaModel ,
158
+ CreatedAt : now ,
159
+ UpdatedAt : now ,
160
+ }
161
+ schema2 := model.WHSchema {
162
+ UploadID : 3 ,
163
+ SourceID : sourceID2 ,
164
+ Namespace : namespace ,
165
+ DestinationID : destinationID2 ,
166
+ DestinationType : destinationType ,
167
+ Schema : schemaModel ,
168
+ CreatedAt : now ,
169
+ UpdatedAt : now ,
170
+ }
171
+ _ , err = r .Insert (ctx , & schemaLatest )
172
+ require .NoError (t , err )
173
+ _ , err = r .Insert (ctx , & schema2 )
174
+ require .NoError (t , err )
175
+ expectedTableNames , err = r .GetTablesForConnection (ctx , []warehouseutils.SourceIDDestinationID {connection , connection2 })
176
+ require .NoError (t , err )
177
+ require .Equal (t , len (expectedTableNames ), 2 )
178
+ require .Contains (t , expectedTableNames , warehouseutils.FetchTableInfo {
179
+ SourceID : sourceID ,
180
+ DestinationID : destinationID ,
181
+ Namespace : latestNamespace ,
182
+ Tables : []string {"table_name_1" , "table_name_2" },
183
+ })
184
+ require .Contains (t , expectedTableNames , warehouseutils.FetchTableInfo {
185
+ SourceID : sourceID2 ,
186
+ DestinationID : destinationID2 ,
187
+ Namespace : namespace ,
188
+ Tables : []string {"table_name_1" , "table_name_2" },
189
+ })
145
190
})
146
191
}
0 commit comments