From de60dd91a4902ba493d0a14913cf8f21e8215808 Mon Sep 17 00:00:00 2001 From: Tobias Kampmann Date: Wed, 31 Jan 2024 13:51:41 +0100 Subject: [PATCH] feat(backend): pluralize `Sequences`, remove accessionVersion, adapt download format --- website/src/components/Edit/EditPage.tsx | 14 +++++++++----- website/tests/pages/edit/edit.page.ts | 6 +++--- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/website/src/components/Edit/EditPage.tsx b/website/src/components/Edit/EditPage.tsx index f0c606f7f..656de5999 100644 --- a/website/src/components/Edit/EditPage.tsx +++ b/website/src/components/Edit/EditPage.tsx @@ -76,8 +76,11 @@ const InnerEditPage: FC = ({ organism, dataToEdit, clientConfig, @@ -157,16 +160,17 @@ function useSubmitEditedSequence( function generateAndDownloadFastaFile(editedSequences: Row[], editedData: SequenceEntryToEdit) { const accessionVersion = getAccessionVersionString(editedData); - const fileContent = editedSequences - .map((sequence) => `>${accessionVersion}.${sequence.key}\n${sequence.value}\n\n`) - .join(); + const fileContent = + editedSequences.length === 1 + ? `>${accessionVersion}\n${editedSequences[0].value}` + : editedSequences.map((sequence) => `>${accessionVersion}_${sequence.key}\n${sequence.value}\n\n`).join(); const blob = new Blob([fileContent], { type: 'text/plain' }); const url = URL.createObjectURL(blob); const a = document.createElement('a'); a.href = url; - a.download = `accessionVersion${accessionVersion}.fasta`; + a.download = `${accessionVersion}.fasta`; a.click(); URL.revokeObjectURL(url); diff --git a/website/tests/pages/edit/edit.page.ts b/website/tests/pages/edit/edit.page.ts index b14d6a42a..1cca2c59b 100644 --- a/website/tests/pages/edit/edit.page.ts +++ b/website/tests/pages/edit/edit.page.ts @@ -2,7 +2,7 @@ import type { Page } from '@playwright/test'; import { routes } from '../../../src/routes.ts'; import type { AccessionVersion } from '../../../src/types/backend.ts'; -import { getAccessionVersionString } from '../../../src/utils/extractAccessionVersion.ts'; +import { extractAccessionVersion, getAccessionVersionString } from '../../../src/utils/extractAccessionVersion.ts'; import { baseUrl, dummyOrganism, expect } from '../../e2e.fixture'; export class EditPage { @@ -33,7 +33,7 @@ export class EditPage { await this.downloadButton.click(); const download = await downloadPromise; - expect(download.suggestedFilename()).toContain('accessionVersion'); + expect(download.suggestedFilename()).toContain(getAccessionVersionString(accessionVersion)); const downloadStream = await download.createReadStream(); expect(downloadStream).toBeDefined(); @@ -46,7 +46,7 @@ export class EditPage { downloadStream.on('end', resolve); }); - expect(downloadData.toString()).toContain(`>${getAccessionVersionString(accessionVersion)}.main + expect(downloadData.toString()).toContain(`>${getAccessionVersionString(accessionVersion)} ACTG`); } }