From e203798657f0868b53d5feadf77aa166de81e8c2 Mon Sep 17 00:00:00 2001 From: sagely1 <114952739+sagely1@users.noreply.github.com> Date: Mon, 13 May 2024 09:04:52 -0700 Subject: [PATCH] AG-1409 fix sort bug when switching categories --- .../gene-comparison-tool.component.ts | 1 + tests/gene-comparison-tool.spec.ts | 37 +++++++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/src/app/features/genes/components/gene-comparison-tool/gene-comparison-tool.component.ts b/src/app/features/genes/components/gene-comparison-tool/gene-comparison-tool.component.ts index d538b0dc..83d8aed6 100644 --- a/src/app/features/genes/components/gene-comparison-tool/gene-comparison-tool.component.ts +++ b/src/app/features/genes/components/gene-comparison-tool/gene-comparison-tool.component.ts @@ -360,6 +360,7 @@ export class GeneComparisonToolComponent implements OnInit, AVI, OnDestroy { if (!this.sortField || !this.columns.includes(this.sortField)) { this.sortField = this.columns[0]; + this.sortOrder = -1; } const preSelection = this.helperService.getGCTSelection(); diff --git a/tests/gene-comparison-tool.spec.ts b/tests/gene-comparison-tool.spec.ts index f203600a..db664d56 100644 --- a/tests/gene-comparison-tool.spec.ts +++ b/tests/gene-comparison-tool.spec.ts @@ -27,4 +27,41 @@ test.describe('specific viewport block', () => { const dropdown = page.locator('#subCategory'); await expect(dropdown).toHaveText('Targeted Selected Reaction Monitoring (SRM)'); }); + + test('switching from RNA to Protein with RNA-specific column ordering reverts back to Risk Score descending', async ({ page }) => { + // set category for Protein - Differential Expression + await page.goto('/genes/comparison?sortField=FP&sortOrder=1'); + + // wait for page to load (i.e. spinner to disappear) + await expect(page.locator('div:nth-child(4) > div > .spinner')) + .not.toBeVisible({ timeout: 150000}); + + // Gene Comparison Overview tutorial modal + const tutorialModal = page.getByText('Gene Comparison Overview'); + await expect(tutorialModal).toBeVisible({ timeout: 10000}); + + // close the Gene Comparison Overview tutorial modal + const closeButton = page.locator('.p-dialog-header-close-icon'); + await closeButton.click(); + + // Gene Comparison Overview tutorial modal + await expect(tutorialModal).not.toBeVisible({ timeout: 10000}); + + // sort by FP ascending + const FPColumn = page.getByText('FP'); + // first click sorts descending + await FPColumn.click(); + // second click sorts ascending + await FPColumn.click(); + + // expect url to be correct + expect(page.url()).toBe('http://localhost:8080/genes/comparison?sortField=FP&sortOrder=1'); + + // change category to Protein + await page.locator('p-dropdown').filter({ hasText: 'RNA - Differential Expression' }).getByLabel('dropdown trigger').click(); + await page.getByText('Protein - Differential Expression').click(); + + // expect url to be correct + expect(page.url()).toBe('http://localhost:8080/genes/comparison?category=Protein+-+Differential+Expression'); + }); });