| 2165 | }; |
| 2166 | |
| 2167 | export const diffTestSchemasSqlite = async ( |
| 2168 | left: SqliteSchema, |
| 2169 | right: SqliteSchema, |
| 2170 | renamesArr: string[], |
| 2171 | cli: boolean = false, |
| 2172 | casing?: CasingType | undefined, |
| 2173 | ) => { |
| 2174 | const leftTables = Object.values(left).filter((it) => is(it, SQLiteTable)) as SQLiteTable[]; |
| 2175 | |
| 2176 | const leftViews = Object.values(left).filter((it) => is(it, SQLiteView)) as SQLiteView[]; |
| 2177 | |
| 2178 | const rightTables = Object.values(right).filter((it) => is(it, SQLiteTable)) as SQLiteTable[]; |
| 2179 | |
| 2180 | const rightViews = Object.values(right).filter((it) => is(it, SQLiteView)) as SQLiteView[]; |
| 2181 | |
| 2182 | const serialized1 = generateSqliteSnapshot(leftTables, leftViews, casing); |
| 2183 | const serialized2 = generateSqliteSnapshot(rightTables, rightViews, casing); |
| 2184 | |
| 2185 | const { version: v1, dialect: d1, ...rest1 } = serialized1; |
| 2186 | const { version: v2, dialect: d2, ...rest2 } = serialized2; |
| 2187 | |
| 2188 | const sch1 = { |
| 2189 | version: '6', |
| 2190 | dialect: 'sqlite', |
| 2191 | id: '0', |
| 2192 | prevId: '0', |
| 2193 | ...rest1, |
| 2194 | } as const; |
| 2195 | |
| 2196 | const sch2 = { |
| 2197 | version: '6', |
| 2198 | dialect: 'sqlite', |
| 2199 | id: '0', |
| 2200 | prevId: '0', |
| 2201 | ...rest2, |
| 2202 | } as const; |
| 2203 | |
| 2204 | const sn1 = squashSqliteScheme(sch1); |
| 2205 | const sn2 = squashSqliteScheme(sch2); |
| 2206 | |
| 2207 | const renames = new Set(renamesArr); |
| 2208 | |
| 2209 | if (!cli) { |
| 2210 | const { sqlStatements, statements } = await applySqliteSnapshotsDiff( |
| 2211 | sn1, |
| 2212 | sn2, |
| 2213 | testTablesResolver(renames), |
| 2214 | testColumnsResolver(renames), |
| 2215 | testViewsResolverSqlite(renames), |
| 2216 | sch1, |
| 2217 | sch2, |
| 2218 | ); |
| 2219 | return { sqlStatements, statements }; |
| 2220 | } |
| 2221 | |
| 2222 | const { sqlStatements, statements } = await applySqliteSnapshotsDiff( |
| 2223 | sn1, |
| 2224 | sn2, |