typeorm-test-db 1.0.1 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.en.md +10 -16
- package/README.es.md +11 -17
- package/README.pt.md +10 -16
- package/dist/constants/messages.d.ts +3 -3
- package/dist/constants/messages.d.ts.map +1 -1
- package/dist/constants/messages.js +3 -3
- package/dist/constants/messages.js.map +1 -1
- package/dist/index.d.ts +4 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -7
- package/dist/index.js.map +1 -1
- package/dist/lifecycle/{TransactionalTestContext.d.ts → TypeormTestDbContext.d.ts} +5 -5
- package/dist/lifecycle/TypeormTestDbContext.d.ts.map +1 -0
- package/dist/lifecycle/{TransactionalTestContext.js → TypeormTestDbContext.js} +9 -9
- package/dist/lifecycle/TypeormTestDbContext.js.map +1 -0
- package/package.json +16 -7
- package/dist/lifecycle/TransactionalTestContext.d.ts.map +0 -1
- package/dist/lifecycle/TransactionalTestContext.js.map +0 -1
- package/dist/lifecycle/registerTransactionalHooks.d.ts +0 -17
- package/dist/lifecycle/registerTransactionalHooks.d.ts.map +0 -1
- package/dist/lifecycle/registerTransactionalHooks.js +0 -16
- package/dist/lifecycle/registerTransactionalHooks.js.map +0 -1
package/README.en.md
CHANGED
|
@@ -6,8 +6,8 @@ TypeORM Test DB wraps every Jest spec in an isolated database transaction. The h
|
|
|
6
6
|
|
|
7
7
|
## Features
|
|
8
8
|
|
|
9
|
-
-
|
|
10
|
-
-
|
|
9
|
+
- TypeORM test database lifecycle helper with explicit `init` and `finish` hooks.
|
|
10
|
+
- Framework-agnostic integration by invoking the lifecycle inside your test runner hooks.
|
|
11
11
|
- Compatibility with MySQL, MariaDB, PostgreSQL, SQLite, and Better SQLite 3.
|
|
12
12
|
- Deterministic data factories driven by a reproducible execution seed.
|
|
13
13
|
- Shared test setup that initializes one data source per worker and runs specs in parallel.
|
|
@@ -25,12 +25,12 @@ Install TypeORM in the host project if it is not already available.
|
|
|
25
25
|
|
|
26
26
|
## Usage
|
|
27
27
|
|
|
28
|
-
Create a Jest setup file that initializes the data source and registers the
|
|
28
|
+
Create a Jest setup file that initializes the data source and registers the TypeORM test database lifecycle.
|
|
29
29
|
|
|
30
30
|
```typescript
|
|
31
31
|
import { afterAll, afterEach, beforeAll, beforeEach } from "@jest/globals";
|
|
32
32
|
import { DataSource } from "typeorm";
|
|
33
|
-
import {
|
|
33
|
+
import { TypeormTestDB } from "typeorm-test-db";
|
|
34
34
|
|
|
35
35
|
const dataSource = new DataSource({
|
|
36
36
|
type: "mysql",
|
|
@@ -43,20 +43,14 @@ const dataSource = new DataSource({
|
|
|
43
43
|
entities: [],
|
|
44
44
|
});
|
|
45
45
|
|
|
46
|
-
|
|
47
|
-
dataSource,
|
|
48
|
-
hooks: {
|
|
49
|
-
beforeEach,
|
|
50
|
-
afterEach,
|
|
51
|
-
},
|
|
52
|
-
});
|
|
46
|
+
const lifecycle = TypeormTestDB(dataSource);
|
|
53
47
|
|
|
54
|
-
|
|
55
|
-
await
|
|
48
|
+
beforeEach(async () => {
|
|
49
|
+
await lifecycle.init();
|
|
56
50
|
});
|
|
57
51
|
|
|
58
|
-
|
|
59
|
-
await
|
|
52
|
+
afterEach(async () => {
|
|
53
|
+
await lifecycle.finish();
|
|
60
54
|
});
|
|
61
55
|
```
|
|
62
56
|
|
|
@@ -64,7 +58,7 @@ Import your repositories or managers inside the specs. Every mutation executed b
|
|
|
64
58
|
|
|
65
59
|
## Test Execution
|
|
66
60
|
|
|
67
|
-
The suite seeds reproducible fixtures per spec and exposes the `TEST_SEED` environment variable to control execution order. `pnpm test` runs Jest in parallel workers
|
|
61
|
+
The suite seeds reproducible fixtures per spec and exposes the `TEST_SEED` environment variable to control execution order. `pnpm test` runs Jest in parallel workers and enforces coverage collection.
|
|
68
62
|
|
|
69
63
|
## Continuous Integration
|
|
70
64
|
|
package/README.es.md
CHANGED
|
@@ -6,10 +6,10 @@ TypeORM Test DB envuelve cada spec de Jest en una transacción de base de datos
|
|
|
6
6
|
|
|
7
7
|
## Características
|
|
8
8
|
|
|
9
|
-
- Helper
|
|
10
|
-
-
|
|
9
|
+
- Helper del ciclo de vida de la base de datos de pruebas para TypeORM con hooks explícitos `init` y `finish`.
|
|
10
|
+
- Integración agnóstica del framework invocando el ciclo de vida dentro de los hooks del runner de pruebas.
|
|
11
11
|
- Compatibilidad con MySQL, MariaDB, PostgreSQL, SQLite y Better SQLite 3.
|
|
12
|
-
-
|
|
12
|
+
- Fábricas de datos deterministas impulsadas por una semilla de ejecución reproducible.
|
|
13
13
|
- Configuración de pruebas compartida que inicializa una única conexión por worker y ejecuta las specs en paralelo.
|
|
14
14
|
- Informes de cobertura generados por defecto mediante `pnpm test`.
|
|
15
15
|
- Artefactos de build generados por `pnpm build` y consumidos por Jest para simular una instalación del paquete.
|
|
@@ -25,12 +25,12 @@ Instala TypeORM en el proyecto anfitrión si aún no está disponible.
|
|
|
25
25
|
|
|
26
26
|
## Uso
|
|
27
27
|
|
|
28
|
-
Crea un archivo de configuración de Jest que inicialice la conexión y registre el ciclo de vida
|
|
28
|
+
Crea un archivo de configuración de Jest que inicialice la conexión y registre el ciclo de vida de la base de datos de pruebas para TypeORM.
|
|
29
29
|
|
|
30
30
|
```typescript
|
|
31
31
|
import { afterAll, afterEach, beforeAll, beforeEach } from "@jest/globals";
|
|
32
32
|
import { DataSource } from "typeorm";
|
|
33
|
-
import {
|
|
33
|
+
import { TypeormTestDB } from "typeorm-test-db";
|
|
34
34
|
|
|
35
35
|
const dataSource = new DataSource({
|
|
36
36
|
type: "mysql",
|
|
@@ -43,20 +43,14 @@ const dataSource = new DataSource({
|
|
|
43
43
|
entities: [],
|
|
44
44
|
});
|
|
45
45
|
|
|
46
|
-
|
|
47
|
-
dataSource,
|
|
48
|
-
hooks: {
|
|
49
|
-
beforeEach,
|
|
50
|
-
afterEach,
|
|
51
|
-
},
|
|
52
|
-
});
|
|
46
|
+
const lifecycle = TypeormTestDB(dataSource);
|
|
53
47
|
|
|
54
|
-
|
|
55
|
-
await
|
|
48
|
+
beforeEach(async () => {
|
|
49
|
+
await lifecycle.init();
|
|
56
50
|
});
|
|
57
51
|
|
|
58
|
-
|
|
59
|
-
await
|
|
52
|
+
afterEach(async () => {
|
|
53
|
+
await lifecycle.finish();
|
|
60
54
|
});
|
|
61
55
|
```
|
|
62
56
|
|
|
@@ -74,7 +68,7 @@ El workflow de GitHub Actions ejecuta el linting y la suite de Jest contra una m
|
|
|
74
68
|
|
|
75
69
|
- `pnpm lint` verifica la calidad del código.
|
|
76
70
|
- `pnpm build` genera el bundle de producción en `dist`.
|
|
77
|
-
- `pnpm test` recompila el paquete
|
|
71
|
+
- `pnpm test` recompila el paquete y ejecuta las pruebas con datos semilla.
|
|
78
72
|
|
|
79
73
|
## Licencia
|
|
80
74
|
|
package/README.pt.md
CHANGED
|
@@ -6,8 +6,8 @@ TypeORM Test DB envolve cada spec do Jest em uma transação de banco de dados i
|
|
|
6
6
|
|
|
7
7
|
## Recursos
|
|
8
8
|
|
|
9
|
-
- Helper
|
|
10
|
-
-
|
|
9
|
+
- Helper do ciclo de vida do banco de dados de testes para TypeORM com hooks explícitos `init` e `finish`.
|
|
10
|
+
- Integração agnóstica de framework ao invocar o ciclo de vida dentro dos hooks do runner de testes.
|
|
11
11
|
- Compatibilidade com MySQL, MariaDB, PostgreSQL, SQLite e Better SQLite 3.
|
|
12
12
|
- Fábricas de dados determinísticas impulsionadas por uma semente de execução reproduzível.
|
|
13
13
|
- Configuração de testes compartilhada que inicializa uma única conexão por worker e executa as specs em paralelo.
|
|
@@ -25,12 +25,12 @@ Instale o TypeORM no projeto hospedeiro caso ainda não esteja disponível.
|
|
|
25
25
|
|
|
26
26
|
## Uso
|
|
27
27
|
|
|
28
|
-
Crie um arquivo de configuração do Jest que inicialize a conexão e registre o ciclo de vida
|
|
28
|
+
Crie um arquivo de configuração do Jest que inicialize a conexão e registre o ciclo de vida do banco de dados de testes para TypeORM.
|
|
29
29
|
|
|
30
30
|
```typescript
|
|
31
31
|
import { afterAll, afterEach, beforeAll, beforeEach } from "@jest/globals";
|
|
32
32
|
import { DataSource } from "typeorm";
|
|
33
|
-
import {
|
|
33
|
+
import { TypeormTestDB } from "typeorm-test-db";
|
|
34
34
|
|
|
35
35
|
const dataSource = new DataSource({
|
|
36
36
|
type: "mysql",
|
|
@@ -43,20 +43,14 @@ const dataSource = new DataSource({
|
|
|
43
43
|
entities: [],
|
|
44
44
|
});
|
|
45
45
|
|
|
46
|
-
|
|
47
|
-
dataSource,
|
|
48
|
-
hooks: {
|
|
49
|
-
beforeEach,
|
|
50
|
-
afterEach,
|
|
51
|
-
},
|
|
52
|
-
});
|
|
46
|
+
const lifecycle = TypeormTestDB(dataSource);
|
|
53
47
|
|
|
54
|
-
|
|
55
|
-
await
|
|
48
|
+
beforeEach(async () => {
|
|
49
|
+
await lifecycle.init();
|
|
56
50
|
});
|
|
57
51
|
|
|
58
|
-
|
|
59
|
-
await
|
|
52
|
+
afterEach(async () => {
|
|
53
|
+
await lifecycle.finish();
|
|
60
54
|
});
|
|
61
55
|
```
|
|
62
56
|
|
|
@@ -64,7 +58,7 @@ Importe seus repositórios ou managers dentro das specs. Todas as mutações exe
|
|
|
64
58
|
|
|
65
59
|
## Execução dos testes
|
|
66
60
|
|
|
67
|
-
A suíte gera dados reproduzíveis por spec e expõe a variável de ambiente `TEST_SEED` para controlar a ordem de execução. `pnpm test` executa o Jest em workers paralelos
|
|
61
|
+
A suíte gera dados reproduzíveis por spec e expõe a variável de ambiente `TEST_SEED` para controlar a ordem de execução. `pnpm test` executa o Jest em workers paralelos e força a coleta de cobertura.
|
|
68
62
|
|
|
69
63
|
## Integração contínua
|
|
70
64
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export declare const errorMessages: {
|
|
2
|
-
readonly dataSourceNotInitialized: "
|
|
3
|
-
readonly transactionAlreadyStarted: "A
|
|
4
|
-
readonly transactionCallbackMissing: "
|
|
2
|
+
readonly dataSourceNotInitialized: "TypeORM test database context requires an initialized data source.";
|
|
3
|
+
readonly transactionAlreadyStarted: "A TypeORM test database context is already active for the provided data source.";
|
|
4
|
+
readonly transactionCallbackMissing: "TypeORM test database execution requires a callback to operate on the shared entity manager.";
|
|
5
5
|
};
|
|
6
6
|
//# sourceMappingURL=messages.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/constants/messages.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa;;;;
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/constants/messages.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa;;;;CAKhB,CAAC"}
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.errorMessages = void 0;
|
|
4
4
|
exports.errorMessages = {
|
|
5
|
-
dataSourceNotInitialized: '
|
|
6
|
-
transactionAlreadyStarted: 'A
|
|
7
|
-
transactionCallbackMissing: '
|
|
5
|
+
dataSourceNotInitialized: 'TypeORM test database context requires an initialized data source.',
|
|
6
|
+
transactionAlreadyStarted: 'A TypeORM test database context is already active for the provided data source.',
|
|
7
|
+
transactionCallbackMissing: 'TypeORM test database execution requires a callback to operate on the shared entity manager.'
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=messages.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/constants/messages.ts"],"names":[],"mappings":";;;AAAa,QAAA,aAAa,GAAG;IAC3B,wBAAwB,EAAE,
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/constants/messages.ts"],"names":[],"mappings":";;;AAAa,QAAA,aAAa,GAAG;IAC3B,wBAAwB,EAAE,oEAAoE;IAC9F,yBAAyB,EAAE,iFAAiF;IAC5G,0BAA0B,EACxB,8FAA8F;CACxF,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
import type { DataSource } from
|
|
2
|
-
import { type
|
|
3
|
-
|
|
4
|
-
export
|
|
5
|
-
export { registerTransactionalTestHooks };
|
|
6
|
-
export type { TransactionalTestLifecycle } from './lifecycle/TransactionalTestContext';
|
|
7
|
-
export type { RegisterTransactionalTestHooksOptions, RegisteredTransactionalTestHooks, TransactionalTestHooks } from './lifecycle/registerTransactionalHooks';
|
|
1
|
+
import type { DataSource } from "typeorm";
|
|
2
|
+
import { type TypeormTestDbLifecycle } from "./lifecycle/TypeormTestDbContext";
|
|
3
|
+
export declare const TypeormTestDB: (dataSource: DataSource) => TypeormTestDbLifecycle;
|
|
4
|
+
export type { TypeormTestDbLifecycle };
|
|
8
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,kCAAkC,CAAC;AAE1C,eAAO,MAAM,aAAa,eACZ,UAAU,KACrB,sBAEF,CAAC;AAEF,YAAY,EAAE,sBAAsB,EAAE,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
const createTransactionalTestContext = (dataSource) => {
|
|
8
|
-
return new TransactionalTestContext_1.TransactionalTestContext(dataSource);
|
|
3
|
+
exports.TypeormTestDB = void 0;
|
|
4
|
+
const TypeormTestDbContext_1 = require("./lifecycle/TypeormTestDbContext");
|
|
5
|
+
const TypeormTestDB = (dataSource) => {
|
|
6
|
+
return new TypeormTestDbContext_1.TypeormTestDbContext(dataSource);
|
|
9
7
|
};
|
|
10
|
-
exports.
|
|
8
|
+
exports.TypeormTestDB = TypeormTestDB;
|
|
11
9
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,2EAG0C;AAEnC,MAAM,aAAa,GAAG,CAC3B,UAAsB,EACE,EAAE;IAC1B,OAAO,IAAI,2CAAoB,CAAC,UAAU,CAAC,CAAC;AAC9C,CAAC,CAAC;AAJW,QAAA,aAAa,iBAIxB"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { DataSource } from 'typeorm';
|
|
2
|
-
export interface
|
|
2
|
+
export interface TypeormTestDbLifecycle {
|
|
3
3
|
readonly init: () => Promise<void>;
|
|
4
4
|
readonly finish: () => Promise<void>;
|
|
5
5
|
}
|
|
6
|
-
export declare class
|
|
6
|
+
export declare class TypeormTestDbContext implements TypeormTestDbLifecycle {
|
|
7
7
|
private readonly dataSource;
|
|
8
8
|
private originalManager;
|
|
9
9
|
private queryRunner;
|
|
@@ -15,9 +15,9 @@ export declare class TransactionalTestContext implements TransactionalTestLifecy
|
|
|
15
15
|
readonly init: () => Promise<void>;
|
|
16
16
|
readonly finish: () => Promise<void>;
|
|
17
17
|
private restoreManager;
|
|
18
|
-
private
|
|
19
|
-
private
|
|
18
|
+
private extractLifecycleCallback;
|
|
19
|
+
private isLifecycleCallback;
|
|
20
20
|
private patchTransactions;
|
|
21
21
|
private restoreTransactions;
|
|
22
22
|
}
|
|
23
|
-
//# sourceMappingURL=
|
|
23
|
+
//# sourceMappingURL=TypeormTestDbContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TypeormTestDbContext.d.ts","sourceRoot":"","sources":["../../src/lifecycle/TypeormTestDbContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAA8B,MAAM,SAAS,CAAC;AAGtE,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACtC;AAID,qBAAa,oBAAqB,YAAW,sBAAsB;IACjE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,eAAe,CAA8B;IACrD,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,iBAAiB,CAAmC;IAC5D,OAAO,CAAC,6BAA6B,CAA0C;IAC/E,OAAO,CAAC,0BAA0B,CAA6C;IAC/E,OAAO,CAAC,cAAc,CAA8B;gBAExC,UAAU,EAAE,UAAU;IAIlC,SAAgB,IAAI,QAAa,QAAQ,IAAI,CAAC,CAyB5C;IAEF,SAAgB,MAAM,QAAa,QAAQ,IAAI,CAAC,CAiB9C;IAEF,OAAO,CAAC,cAAc;IAoBtB,OAAO,CAAC,wBAAwB;IAWhC,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,mBAAmB;CAa5B"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.TypeormTestDbContext = void 0;
|
|
4
4
|
const messages_1 = require("../constants/messages");
|
|
5
|
-
class
|
|
5
|
+
class TypeormTestDbContext {
|
|
6
6
|
constructor(dataSource) {
|
|
7
7
|
this.originalManager = null;
|
|
8
8
|
this.queryRunner = null;
|
|
@@ -66,17 +66,17 @@ class TransactionalTestContext {
|
|
|
66
66
|
value: this.originalManager
|
|
67
67
|
});
|
|
68
68
|
}
|
|
69
|
-
|
|
69
|
+
extractLifecycleCallback(args) {
|
|
70
70
|
const [first, second] = args;
|
|
71
|
-
if (this.
|
|
71
|
+
if (this.isLifecycleCallback(first)) {
|
|
72
72
|
return first;
|
|
73
73
|
}
|
|
74
|
-
if (this.
|
|
74
|
+
if (this.isLifecycleCallback(second)) {
|
|
75
75
|
return second;
|
|
76
76
|
}
|
|
77
77
|
throw new Error(messages_1.errorMessages.transactionCallbackMissing);
|
|
78
78
|
}
|
|
79
|
-
|
|
79
|
+
isLifecycleCallback(candidate) {
|
|
80
80
|
return typeof candidate === 'function';
|
|
81
81
|
}
|
|
82
82
|
patchTransactions(manager) {
|
|
@@ -84,7 +84,7 @@ class TransactionalTestContext {
|
|
|
84
84
|
this.originalDataSourceTransaction = this.dataSource.transaction.bind(this.dataSource);
|
|
85
85
|
this.originalManagerTransaction = manager.transaction.bind(manager);
|
|
86
86
|
const patched = async (...args) => {
|
|
87
|
-
const callback = this.
|
|
87
|
+
const callback = this.extractLifecycleCallback(args);
|
|
88
88
|
const result = callback(manager);
|
|
89
89
|
return Promise.resolve(result);
|
|
90
90
|
};
|
|
@@ -106,5 +106,5 @@ class TransactionalTestContext {
|
|
|
106
106
|
this.originalManagerTransaction = null;
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
|
-
exports.
|
|
110
|
-
//# sourceMappingURL=
|
|
109
|
+
exports.TypeormTestDbContext = TypeormTestDbContext;
|
|
110
|
+
//# sourceMappingURL=TypeormTestDbContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TypeormTestDbContext.js","sourceRoot":"","sources":["../../src/lifecycle/TypeormTestDbContext.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "typeorm-test-db",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"description": "Automated transactional lifecycle helpers for TypeORM tests",
|
|
5
5
|
"license": "GPL-3.0-only",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -15,10 +15,17 @@
|
|
|
15
15
|
"build": "tsc -p tsconfig.build.json",
|
|
16
16
|
"clean": "rimraf dist",
|
|
17
17
|
"prebuild": "pnpm clean",
|
|
18
|
-
"test": "jest --ci --
|
|
19
|
-
"test:ci": "
|
|
18
|
+
"test": "jest --ci --maxWorkers=50% --verbose --showSeed --coverage --config ./tests/jest.config.ts",
|
|
19
|
+
"test:ci": "pnpm test",
|
|
20
|
+
"docker": "docker compose up -d",
|
|
20
21
|
"lint": "eslint --fix",
|
|
21
|
-
"release": "standard-version"
|
|
22
|
+
"release": "standard-version",
|
|
23
|
+
"test:mysql": "cross-env TEST_DB_TYPE=mysql pnpm test:ci",
|
|
24
|
+
"test:mariadb": "cross-env TEST_DB_TYPE=mariadb pnpm test:ci",
|
|
25
|
+
"test:postgres": "cross-env TEST_DB_TYPE=postgres pnpm test:ci",
|
|
26
|
+
"test:sqlite": "cross-env TEST_DB_TYPE=sqlite pnpm test:ci",
|
|
27
|
+
"test:better-sqlite3": "pnpm -s shx mkdir -p .tmp/better-sqlite && cross-env TEST_DB_TYPE=better-sqlite3 pnpm test:ci",
|
|
28
|
+
"test:all": "pnpm test:mysql && pnpm test:mariadb && pnpm test:postgres && pnpm test:sqlite && pnpm test:better-sqlite3"
|
|
22
29
|
},
|
|
23
30
|
"repository": {
|
|
24
31
|
"type": "git",
|
|
@@ -39,7 +46,7 @@
|
|
|
39
46
|
},
|
|
40
47
|
"devDependencies": {
|
|
41
48
|
"@jest/globals": "^30.1.2",
|
|
42
|
-
"@jest/test-result": "^
|
|
49
|
+
"@jest/test-result": "^30.2.0",
|
|
43
50
|
"@jest/test-sequencer": "^30.1.3",
|
|
44
51
|
"@types/jest": "^30.0.0",
|
|
45
52
|
"@types/node": "^24.5.2",
|
|
@@ -48,6 +55,7 @@
|
|
|
48
55
|
"@typescript-eslint/eslint-plugin": "^7.0.0",
|
|
49
56
|
"@typescript-eslint/parser": "^6.21.0",
|
|
50
57
|
"better-sqlite3": "^9.4.3",
|
|
58
|
+
"cross-env": "7.0.3",
|
|
51
59
|
"eslint": "^8.57.0",
|
|
52
60
|
"eslint-config-prettier": "^9.1.0",
|
|
53
61
|
"jest": "^30.1.3",
|
|
@@ -55,16 +63,17 @@
|
|
|
55
63
|
"pg": "^8.11.5",
|
|
56
64
|
"rimraf": "^5.0.5",
|
|
57
65
|
"seedrandom": "^3.0.5",
|
|
66
|
+
"shx": "^0.4.0",
|
|
58
67
|
"sqlite3": "^5.1.7",
|
|
59
68
|
"standard-version": "^9.5.0",
|
|
60
69
|
"ts-jest": "^29.1.1",
|
|
61
70
|
"ts-node": "^10.9.2",
|
|
62
|
-
"typeorm": "0.3.
|
|
71
|
+
"typeorm": "0.3.27",
|
|
63
72
|
"typescript": "^5.3.3"
|
|
64
73
|
},
|
|
65
74
|
"packageManager": "pnpm@8.15.4",
|
|
66
75
|
"volta": {
|
|
67
|
-
"node": "20.
|
|
76
|
+
"node": "18.20.8",
|
|
68
77
|
"pnpm": "8.15.4"
|
|
69
78
|
}
|
|
70
79
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TransactionalTestContext.d.ts","sourceRoot":"","sources":["../../src/lifecycle/TransactionalTestContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAA8B,MAAM,SAAS,CAAC;AAGtE,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACtC;AAID,qBAAa,wBAAyB,YAAW,0BAA0B;IACzE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,eAAe,CAA8B;IACrD,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,iBAAiB,CAAmC;IAC5D,OAAO,CAAC,6BAA6B,CAA0C;IAC/E,OAAO,CAAC,0BAA0B,CAA6C;IAC/E,OAAO,CAAC,cAAc,CAA8B;gBAExC,UAAU,EAAE,UAAU;IAIlC,SAAgB,IAAI,QAAa,QAAQ,IAAI,CAAC,CAyB5C;IAEF,SAAgB,MAAM,QAAa,QAAQ,IAAI,CAAC,CAiB9C;IAEF,OAAO,CAAC,cAAc;IAoBtB,OAAO,CAAC,0BAA0B;IAWlC,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,mBAAmB;CAa5B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TransactionalTestContext.js","sourceRoot":"","sources":["../../src/lifecycle/TransactionalTestContext.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import type { DataSource } from 'typeorm';
|
|
2
|
-
import { type TransactionalTestLifecycle } from './TransactionalTestContext';
|
|
3
|
-
type HookCallback = () => Promise<void> | void;
|
|
4
|
-
export interface TransactionalTestHooks {
|
|
5
|
-
readonly beforeEach: (callback: HookCallback) => unknown;
|
|
6
|
-
readonly afterEach: (callback: HookCallback) => unknown;
|
|
7
|
-
}
|
|
8
|
-
export interface RegisterTransactionalTestHooksOptions {
|
|
9
|
-
readonly dataSource: DataSource;
|
|
10
|
-
readonly hooks: TransactionalTestHooks;
|
|
11
|
-
}
|
|
12
|
-
export interface RegisteredTransactionalTestHooks {
|
|
13
|
-
readonly lifecycle: TransactionalTestLifecycle;
|
|
14
|
-
}
|
|
15
|
-
export declare const registerTransactionalTestHooks: (options: RegisterTransactionalTestHooksOptions) => RegisteredTransactionalTestHooks;
|
|
16
|
-
export {};
|
|
17
|
-
//# sourceMappingURL=registerTransactionalHooks.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"registerTransactionalHooks.d.ts","sourceRoot":"","sources":["../../src/lifecycle/registerTransactionalHooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAA4B,KAAK,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAEvG,KAAK,YAAY,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAE/C,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,OAAO,CAAC;IACzD,QAAQ,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,OAAO,CAAC;CACzD;AAED,MAAM,WAAW,qCAAqC;IACpD,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,sBAAsB,CAAC;CACxC;AAED,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,SAAS,EAAE,0BAA0B,CAAC;CAChD;AAED,eAAO,MAAM,8BAA8B,YAChC,qCAAqC,KAC7C,gCAYF,CAAC"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.registerTransactionalTestHooks = void 0;
|
|
4
|
-
const TransactionalTestContext_1 = require("./TransactionalTestContext");
|
|
5
|
-
const registerTransactionalTestHooks = (options) => {
|
|
6
|
-
const context = new TransactionalTestContext_1.TransactionalTestContext(options.dataSource);
|
|
7
|
-
options.hooks.beforeEach(async () => {
|
|
8
|
-
await context.init();
|
|
9
|
-
});
|
|
10
|
-
options.hooks.afterEach(async () => {
|
|
11
|
-
await context.finish();
|
|
12
|
-
});
|
|
13
|
-
return { lifecycle: context };
|
|
14
|
-
};
|
|
15
|
-
exports.registerTransactionalTestHooks = registerTransactionalTestHooks;
|
|
16
|
-
//# sourceMappingURL=registerTransactionalHooks.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"registerTransactionalHooks.js","sourceRoot":"","sources":["../../src/lifecycle/registerTransactionalHooks.ts"],"names":[],"mappings":";;;AACA,yEAAuG;AAkBhG,MAAM,8BAA8B,GAAG,CAC5C,OAA8C,EACZ,EAAE;IACpC,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAEjE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,IAAI,EAAE;QAClC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE;QACjC,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;AAChC,CAAC,CAAC;AAdW,QAAA,8BAA8B,kCAczC"}
|