From 7ed6d04863ae5a90a603f5469eeed2ce0de1d705 Mon Sep 17 00:00:00 2001 From: minottic Date: Fri, 15 Mar 2024 12:34:56 +0100 Subject: [PATCH] Fix migration loop continue statement --- .../acceptance/migrate.acceptance.ts | 27 +++++++++++++++---- .../src/repositories/paragraph.repository.ts | 2 +- 2 files changed, 23 insertions(+), 6 deletions(-) diff --git a/sci-log-db/src/__tests__/acceptance/migrate.acceptance.ts b/sci-log-db/src/__tests__/acceptance/migrate.acceptance.ts index dac981fb..b2d22c2a 100644 --- a/sci-log-db/src/__tests__/acceptance/migrate.acceptance.ts +++ b/sci-log-db/src/__tests__/acceptance/migrate.acceptance.ts @@ -26,16 +26,33 @@ describe('Migrate', function (this: Suite) { await paragraph.execute('Paragraph', 'insertOne', { id: '123', ownerGroup: 'paragraphAcceptance', + textcontent: '

', + }); + await paragraph.execute('Paragraph', 'insertOne', { + id: '456', + ownerGroup: 'paragraphAcceptance', textcontent: '

h ♥

', }); const sanitizeTextContentStub = sandbox .stub(util, 'sanitizeTextContent') .callThrough(); await paragraph.migrateHtmlTexcontent(); - expect(sanitizeTextContentStub.args[0][0]).to.be.eql('

h ♥

'); - const modified = await paragraph.execute('Paragraph', 'findOne', { - id: '123', - }); - expect(modified.htmlTextcontent).to.be.eql('h ♥'); + expect(sanitizeTextContentStub.callCount).to.be.eql(2); + expect(sanitizeTextContentStub.args[0][0]).to.be.eql('

'); + expect( + ( + await paragraph.execute('Paragraph', 'findOne', { + id: '123', + }) + ).htmlTextcontent, + ).to.be.eql(undefined); + expect(sanitizeTextContentStub.args[1][0]).to.be.eql('

h ♥

'); + expect( + ( + await paragraph.execute('Paragraph', 'findOne', { + id: '456', + }) + ).htmlTextcontent, + ).to.be.eql('h ♥'); }); }); diff --git a/sci-log-db/src/repositories/paragraph.repository.ts b/sci-log-db/src/repositories/paragraph.repository.ts index b9d2134e..2bd96fd9 100644 --- a/sci-log-db/src/repositories/paragraph.repository.ts +++ b/sci-log-db/src/repositories/paragraph.repository.ts @@ -30,7 +30,7 @@ export class ParagraphRepository extends SnippetRepositoryMixin< const baseSnippetRepository = await this.baseSnippetRepository(); for await (const paragraph of paragraphsCursor) { const sanitised = sanitizeTextContent(paragraph.textcontent); - if (!sanitised) return; + if (!sanitised) continue; await baseSnippetRepository.updateById( `${paragraph._id}`, {htmlTextcontent: sanitised},