| 1 | import { it } from "@effect/vitest" |
| 2 | import { Layer } from "effect" |
| 3 | import * as PersistedCacheTest from "effect-test/persistence/PersistedCacheTest" |
| 4 | import * as PersistedQueueTest from "effect-test/persistence/PersistedQueueTest" |
| 5 | import { PersistedQueue, Persistence } from "effect/persistence" |
| 6 | import { MssqlContainer } from "./utils.ts" |
| 7 | |
| 8 | PersistedCacheTest.suite( |
| 9 | "sql-mssql-multi", |
| 10 | Persistence.layerSqlMultiTable.pipe(Layer.provide(MssqlContainer.layerClient)) |
| 11 | ) |
| 12 | |
| 13 | PersistedCacheTest.suite( |
| 14 | "sql-mssql-single", |
| 15 | Persistence.layerSql.pipe(Layer.provide(MssqlContainer.layerClient)) |
| 16 | ) |
| 17 | |
| 18 | // Allow extra time for MSSQL-backed layer setup and teardown under CI load. |
| 19 | // Keep the queue test bodies at their 30-second timeout. |
| 20 | PersistedQueueTest.suiteWith( |
| 21 | "sql-mssql", |
| 22 | PersistedQueue.layerStoreSql().pipe(Layer.provide(MssqlContainer.layerClient)), |
| 23 | it, |
| 24 | "30 seconds", |
| 25 | "90 seconds" |
| 26 | ) |