From c5b861bece8c2281546d74d754d998200d5d63b5 Mon Sep 17 00:00:00 2001 From: Richard Petersen <richard.petersen@open-xchange.com> Date: Mon, 28 Feb 2022 14:37:18 +0100 Subject: [PATCH] Deshakerize unit test --- spec/server_test.js | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/spec/server_test.js b/spec/server_test.js index 08c4afa..cc7592f 100644 --- a/spec/server_test.js +++ b/spec/server_test.js @@ -66,22 +66,30 @@ describe('UI Middleware', function () { }) it('refreshes manifest data after caching timeout', async function () { - process.env.CACHE_TTL = 1 + process.env.CACHE_TTL = 0 app = await mockApp() const response = await request(app).get('/manifests') expect(response.statusCode).to.equal(200) expect(response.body).to.deep.equal([{ namespace: 'test', path: 'example' }]) - fetchConfig['http://ui-server'] = { - '/manifest.json': generateSimpleViteManifest({ 'example.js': 'other' }), - '/example.js': '' - } + const refreshedCache = new Promise(resolve => { + fetchConfig['http://ui-server'] = { + '/manifest.json': generateSimpleViteManifest({ 'example.js': 'other' }), + '/example.js': () => { + try { + return new Response('new content') + } finally { + resolve() + } + } + } + }) // trigger update await request(app).get('/manifests') // wait some time - await new Promise(resolve => setTimeout(resolve, 10)) + await refreshedCache const response2 = await request(app).get('/manifests') expect(response2.statusCode).to.equal(200) -- GitLab