@akanjs/test 0.9.55 → 0.9.57

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.
@@ -24,11 +24,18 @@ var import_register = require("tsconfig-paths/register");
24
24
  var import_jest = require("./jest.testServer");
25
25
  const setup = async (globalConfig, projectConfig) => {
26
26
  const { env } = require(`${globalConfig.rootDir}/env/env.server.testing`);
27
- const { fetch, registerModules } = require(`${globalConfig.rootDir}/server`);
27
+ const { fetch, registerModules, registerMiddlewares } = require(`${globalConfig.rootDir}/server`);
28
28
  const maxWorkers = globalConfig.maxWorkers;
29
29
  if (!maxWorkers)
30
30
  throw new Error("maxWorkers is not defined");
31
- const testServers = new Array(maxWorkers).fill(0).map((_, idx) => new import_jest.TestServer(registerModules, env, idx + 1));
31
+ const testServers = new Array(maxWorkers).fill(0).map(
32
+ (_, idx) => new import_jest.TestServer(
33
+ registerModules,
34
+ registerMiddlewares,
35
+ env,
36
+ idx + 1
37
+ )
38
+ );
32
39
  await Promise.all(testServers.map((server) => server.init()));
33
40
  global.__TEST_SERVERS__ = testServers;
34
41
  global.fetch = fetch;
@@ -47,6 +47,7 @@ class TestServer {
47
47
  #mongod;
48
48
  #redis;
49
49
  #registerModules;
50
+ #registerMiddlewares;
50
51
  #env;
51
52
  workerId;
52
53
  #startAt = Date.now();
@@ -60,7 +61,7 @@ class TestServer {
60
61
  const endpoint = `http://localhost:${port}/backend/graphql`;
61
62
  import_signal.client.init({ uri: endpoint });
62
63
  }
63
- constructor(registerModules, env, workerId) {
64
+ constructor(registerModules, registerMiddlewares, env, workerId) {
64
65
  this.workerId = workerId ?? parseInt(process.env.JEST_WORKER_ID ?? "0");
65
66
  if (this.workerId === 0)
66
67
  throw new Error("TestServer should not be used in main thread");
@@ -69,6 +70,7 @@ class TestServer {
69
70
  this.#redis = new import_redis_memory_server.RedisMemoryServer({ instance: { port: TEST_REDIS_PORT_BASE + this.#portOffset } });
70
71
  this.#env = { ...env };
71
72
  this.#registerModules = registerModules;
73
+ this.#registerMiddlewares = registerMiddlewares;
72
74
  }
73
75
  async init() {
74
76
  for (let i = 0; i < MAX_RETRY; i++) {
@@ -101,7 +103,11 @@ class TestServer {
101
103
  this.#env.onCleanup = async () => {
102
104
  await this.cleanup();
103
105
  };
104
- this.#app = await (0, import_server.createNestApp)({ registerModules: this.#registerModules, env: this.#env });
106
+ this.#app = await (0, import_server.createNestApp)({
107
+ registerModules: this.#registerModules,
108
+ registerMiddlewares: this.#registerMiddlewares,
109
+ env: this.#env
110
+ });
105
111
  this.#logger.log(`Test System #${this.workerId} Initialized, Mongo: ${mongoUri}, Redis: ${redisHost}:${redisPort}`);
106
112
  this.#startAt = Date.now();
107
113
  this.#logger.log(`Test System #${this.workerId} Activation Time: ${this.#startAt - now}ms`);
@@ -2,11 +2,18 @@ import "tsconfig-paths/register";
2
2
  import { TestServer } from "./jest.testServer";
3
3
  const setup = async (globalConfig, projectConfig) => {
4
4
  const { env } = require(`${globalConfig.rootDir}/env/env.server.testing`);
5
- const { fetch, registerModules } = require(`${globalConfig.rootDir}/server`);
5
+ const { fetch, registerModules, registerMiddlewares } = require(`${globalConfig.rootDir}/server`);
6
6
  const maxWorkers = globalConfig.maxWorkers;
7
7
  if (!maxWorkers)
8
8
  throw new Error("maxWorkers is not defined");
9
- const testServers = new Array(maxWorkers).fill(0).map((_, idx) => new TestServer(registerModules, env, idx + 1));
9
+ const testServers = new Array(maxWorkers).fill(0).map(
10
+ (_, idx) => new TestServer(
11
+ registerModules,
12
+ registerMiddlewares,
13
+ env,
14
+ idx + 1
15
+ )
16
+ );
10
17
  await Promise.all(testServers.map((server) => server.init()));
11
18
  global.__TEST_SERVERS__ = testServers;
12
19
  global.fetch = fetch;
@@ -15,6 +15,7 @@ class TestServer {
15
15
  #mongod;
16
16
  #redis;
17
17
  #registerModules;
18
+ #registerMiddlewares;
18
19
  #env;
19
20
  workerId;
20
21
  #startAt = Date.now();
@@ -28,7 +29,7 @@ class TestServer {
28
29
  const endpoint = `http://localhost:${port}/backend/graphql`;
29
30
  client.init({ uri: endpoint });
30
31
  }
31
- constructor(registerModules, env, workerId) {
32
+ constructor(registerModules, registerMiddlewares, env, workerId) {
32
33
  this.workerId = workerId ?? parseInt(process.env.JEST_WORKER_ID ?? "0");
33
34
  if (this.workerId === 0)
34
35
  throw new Error("TestServer should not be used in main thread");
@@ -37,6 +38,7 @@ class TestServer {
37
38
  this.#redis = new RedisMemoryServer({ instance: { port: TEST_REDIS_PORT_BASE + this.#portOffset } });
38
39
  this.#env = { ...env };
39
40
  this.#registerModules = registerModules;
41
+ this.#registerMiddlewares = registerMiddlewares;
40
42
  }
41
43
  async init() {
42
44
  for (let i = 0; i < MAX_RETRY; i++) {
@@ -69,7 +71,11 @@ class TestServer {
69
71
  this.#env.onCleanup = async () => {
70
72
  await this.cleanup();
71
73
  };
72
- this.#app = await createNestApp({ registerModules: this.#registerModules, env: this.#env });
74
+ this.#app = await createNestApp({
75
+ registerModules: this.#registerModules,
76
+ registerMiddlewares: this.#registerMiddlewares,
77
+ env: this.#env
78
+ });
73
79
  this.#logger.log(`Test System #${this.workerId} Initialized, Mongo: ${mongoUri}, Redis: ${redisHost}:${redisPort}`);
74
80
  this.#startAt = Date.now();
75
81
  this.#logger.log(`Test System #${this.workerId} Activation Time: ${this.#startAt - now}ms`);
@@ -3,7 +3,7 @@ export declare class TestServer {
3
3
  #private;
4
4
  workerId: number;
5
5
  static initClient(env: BackendEnv, workerId?: number): void;
6
- constructor(registerModules: (options: any) => any[], env: BackendEnv, workerId?: number);
6
+ constructor(registerModules: (options: any) => any[], registerMiddlewares: (options: any) => any[], env: BackendEnv, workerId?: number);
7
7
  init(): Promise<void>;
8
8
  startMongo(): Promise<string>;
9
9
  cleanup(): Promise<void>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@akanjs/test",
3
- "version": "0.9.55",
3
+ "version": "0.9.57",
4
4
  "sourceType": "module",
5
5
  "publishConfig": {
6
6
  "access": "public"