From adecf0d5fe18aec3aff4199c42627909150b5136 Mon Sep 17 00:00:00 2001 From: Andrew Rumble Date: Wed, 20 Nov 2024 10:39:13 +0000 Subject: [PATCH] Merge pull request #21998 from overleaf/ar-fix-flaky-project-archive-test [history-v1] Handle race condition in project archive test GitOrigin-RevId: c32f4646f08223da0ed42068fa3fb613a6595b95 --- .../acceptance/js/storage/project_archive.test.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/services/history-v1/test/acceptance/js/storage/project_archive.test.js b/services/history-v1/test/acceptance/js/storage/project_archive.test.js index bfc77a6a96..d9112b1b67 100644 --- a/services/history-v1/test/acceptance/js/storage/project_archive.test.js +++ b/services/history-v1/test/acceptance/js/storage/project_archive.test.js @@ -121,7 +121,7 @@ describe('ProjectArchive', function () { beforeEach(function () { const testStream = new stream.Readable({ read: function () { - testStream.emit('error', new Error('test read error')) + testStream.destroy(new Error('test read error')) }, }) sinon.stub(blobStore, 'getStream').resolves(testStream) @@ -141,7 +141,11 @@ describe('ProjectArchive', function () { expect.fail() }) .catch(err => { - expect(err.message).to.match(/test read error/) + let message = err.message + if (err instanceof ProjectArchive.DownloadError) { + message = err.cause.message + } + expect(message).to.match(/test read error/) }) }) }) @@ -150,8 +154,8 @@ describe('ProjectArchive', function () { beforeEach(function () { sinon.stub(fs, 'createWriteStream').callsFake(path => { const testStream = new stream.Writable({ - write: function () { - testStream.emit('error', new Error('test write error')) + write: function (chunk, encoding, callback) { + callback(new Error('test write error')) }, }) return testStream