Merge pull request #21998 from overleaf/ar-fix-flaky-project-archive-test

[history-v1] Handle race condition in project archive test

GitOrigin-RevId: c32f4646f08223da0ed42068fa3fb613a6595b95
This commit is contained in:
Andrew Rumble 2024-11-20 10:39:13 +00:00 committed by Copybot
parent 623d88bee0
commit adecf0d5fe

View file

@ -121,7 +121,7 @@ describe('ProjectArchive', function () {
beforeEach(function () { beforeEach(function () {
const testStream = new stream.Readable({ const testStream = new stream.Readable({
read: function () { read: function () {
testStream.emit('error', new Error('test read error')) testStream.destroy(new Error('test read error'))
}, },
}) })
sinon.stub(blobStore, 'getStream').resolves(testStream) sinon.stub(blobStore, 'getStream').resolves(testStream)
@ -141,7 +141,11 @@ describe('ProjectArchive', function () {
expect.fail() expect.fail()
}) })
.catch(err => { .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 () { beforeEach(function () {
sinon.stub(fs, 'createWriteStream').callsFake(path => { sinon.stub(fs, 'createWriteStream').callsFake(path => {
const testStream = new stream.Writable({ const testStream = new stream.Writable({
write: function () { write: function (chunk, encoding, callback) {
testStream.emit('error', new Error('test write error')) callback(new Error('test write error'))
}, },
}) })
return testStream return testStream