From d8ab2decef6424facd1d839041514b5614ccfbfd Mon Sep 17 00:00:00 2001 From: Jerko Steiner Date: Sun, 25 Aug 2019 23:37:27 +0700 Subject: [PATCH] Fix correlation id for tests --- packages/server/src/middleware/Transaction.ts | 3 ++- packages/server/src/test-utils/TestUtils.ts | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/server/src/middleware/Transaction.ts b/packages/server/src/middleware/Transaction.ts index 36d8518..e5c6984 100644 --- a/packages/server/src/middleware/Transaction.ts +++ b/packages/server/src/middleware/Transaction.ts @@ -15,7 +15,8 @@ export class Transaction implements IMiddleware { ns.run(() => { // use pregenerated request correlationId - const correlationId = req.correlationId || shortid.generate(); + const correlationId = ns.get(CORRELATION_ID) || req.correlationId || + shortid.generate(); (req as any).correlationId = correlationId ns.set(CORRELATION_ID, correlationId) next() diff --git a/packages/server/src/test-utils/TestUtils.ts b/packages/server/src/test-utils/TestUtils.ts index 79cdf70..350d5f3 100644 --- a/packages/server/src/test-utils/TestUtils.ts +++ b/packages/server/src/test-utils/TestUtils.ts @@ -9,6 +9,8 @@ import {IRoutes} from '@rondo.dev/common' import {IBootstrap} from '../application/IBootstrap' import {RequestTester} from './RequestTester' import {Role} from '../entities/Role' +import {CORRELATION_ID} from '../middleware' +import shortid from 'shortid' export class TestUtils { readonly username = `test${process.env.JEST_WORKER_ID}@user.com` @@ -41,6 +43,7 @@ export class TestUtils { connection = await database.connect() queryRunner = connection.createQueryRunner() await queryRunner.connect() + namespace.set(CORRELATION_ID, shortid()) await queryRunner.startTransaction() namespace.set(ENTITY_MANAGER, queryRunner.manager) }) @@ -51,6 +54,7 @@ export class TestUtils { await queryRunner.rollbackTransaction() } await queryRunner.release() + namespace.set(CORRELATION_ID, undefined) namespace.set(ENTITY_MANAGER, undefined) await connection.close() })