From 6d9bf4c461b276afc43063b76a7c6b5d34a5f5e9 Mon Sep 17 00:00:00 2001 From: OpenClaw Date: Fri, 6 Mar 2026 18:41:31 +0000 Subject: [PATCH] auto(agent): Run expanded local discovery and continue with next actionable task --- backend/src/__tests__/addresses.test.js | 45 +++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 backend/src/__tests__/addresses.test.js diff --git a/backend/src/__tests__/addresses.test.js b/backend/src/__tests__/addresses.test.js new file mode 100644 index 0000000..5be0e36 --- /dev/null +++ b/backend/src/__tests__/addresses.test.js @@ -0,0 +1,45 @@ +const { test } = require('node:test'); +const assert = require('node:assert'); +const sinon = require('sinon'); +const { getAddresses, createAddress } = require('../routes/addresses'); + +// Mock the database pool +const mockPool = { + query: sinon.stub() +}; + +// Mock the route functions with the mocked pool +const mockGetAddresses = (req, res) => getAddresses({ ...req, pool: mockPool }, res); +const mockCreateAddress = (req, res) => createAddress({ ...req, pool: mockPool }, res); + +test('GET /addresses should return addresses', async () => { + const mockResponse = { + status: sinon.stub().returnsThis(), + json: sinon.stub() + }; + + mockPool.query.resolves([{ id: 1, street: 'Test Street', city: 'Test City' }]); + + await mockGetAddresses({}, mockResponse); + + assert.strictEqual(mockResponse.status.calledWith(200), true); + assert.strictEqual(mockResponse.json.calledOnce, true); +}); + +test('POST /addresses should create a new address', async () => { + const mockRequest = { + body: { street: 'New Street', city: 'New City' } + }; + + const mockResponse = { + status: sinon.stub().returnsThis(), + json: sinon.stub() + }; + + mockPool.query.resolves([{ id: 2, street: 'New Street', city: 'New City' }]); + + await mockCreateAddress(mockRequest, mockResponse); + + assert.strictEqual(mockResponse.status.calledWith(201), true); + assert.strictEqual(mockResponse.json.calledOnce, true); +}); \ No newline at end of file