From f14f54dad871ff305f09e2f972458bc16478925d Mon Sep 17 00:00:00 2001 From: alexpolo1 Date: Sun, 4 Oct 2026 21:28:09 +0200 Subject: [PATCH] test(ordrestyring): preserve DatabaseService query contract --- backend/src/services/__tests__/ordrestyringReadModel.test.js | 5 ++++- backend/src/services/ordrestyringReadModel.js | 4 ++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/backend/src/services/__tests__/ordrestyringReadModel.test.js b/backend/src/services/__tests__/ordrestyringReadModel.test.js index d3a6701..1631c2e 100644 --- a/backend/src/services/__tests__/ordrestyringReadModel.test.js +++ b/backend/src/services/__tests__/ordrestyringReadModel.test.js @@ -6,7 +6,10 @@ const model = (rows = [], options = {}) => new OrdrestyringReadModel({ describe('consumer read model safety contract', () => { test('binds a database service pool lazily after application initialization', async () => { - const databaseService = { pool: null }; + const databaseService = { pool: null, query: async (sql, params) => { + const [rows] = await databaseService.pool.execute(sql, params); + return rows; + } }; const readModel = new OrdrestyringReadModel(databaseService, { env: {} }); databaseService.pool = { execute: jest.fn().mockResolvedValue([[{ case_number: 'A' }]]) }; await expect(readModel.cases(['A'])).resolves.toEqual([{ case_number: 'A' }]); diff --git a/backend/src/services/ordrestyringReadModel.js b/backend/src/services/ordrestyringReadModel.js index 97357a5..32ea600 100644 --- a/backend/src/services/ordrestyringReadModel.js +++ b/backend/src/services/ordrestyringReadModel.js @@ -73,6 +73,10 @@ class OrdrestyringReadModel { } async rows(sql, params = []) { + if (this.connection && Object.prototype.hasOwnProperty.call(this.connection, 'pool') + && typeof this.connection.query === 'function') { + return this.connection.query(sql, params); + } const connection = this.connection?.pool || this.connection; if (!connection) throw new Error('Ordrestyring canonical database unavailable'); if (connection.execute) {