From e9d593828cbe47f258e938f2e0a7834b7ea2bc32 Mon Sep 17 00:00:00 2001 From: David de Kloet Date: Thu, 18 Jul 2024 10:42:07 +0200 Subject: [PATCH] NNS1-3094: Make projects without neurons clickable again --- frontend/src/lib/utils/staking.utils.ts | 5 +--- .../components/staking/ProjectsTable.spec.ts | 30 +++++++++++-------- .../src/tests/lib/utils/staking.utils.spec.ts | 8 ++--- 3 files changed, 21 insertions(+), 22 deletions(-) diff --git a/frontend/src/lib/utils/staking.utils.ts b/frontend/src/lib/utils/staking.utils.ts index 9189a51a200..3e6a18c34bd 100644 --- a/frontend/src/lib/utils/staking.utils.ts +++ b/frontend/src/lib/utils/staking.utils.ts @@ -103,10 +103,7 @@ export const getTableProjects = ({ nnsNeurons, snsNeurons, }); - const rowHref = - (neuronCount ?? 0) > 0 - ? buildNeuronsUrl({ universe: universe.canisterId }) - : undefined; + const rowHref = buildNeuronsUrl({ universe: universe.canisterId }); return { rowHref, domKey: universe.canisterId, diff --git a/frontend/src/tests/lib/components/staking/ProjectsTable.spec.ts b/frontend/src/tests/lib/components/staking/ProjectsTable.spec.ts index e886dc24f81..1bf8847f1a4 100644 --- a/frontend/src/tests/lib/components/staking/ProjectsTable.spec.ts +++ b/frontend/src/tests/lib/components/staking/ProjectsTable.spec.ts @@ -186,11 +186,13 @@ describe("ProjectsTable", () => { const rowPos = await po.getProjectsTableRowPos(); expect(rowPos).toHaveLength(2); expect(await rowPos[0].getNeuronCount()).toBe("-/-"); - expect(await rowPos[0].getHref()).toBe(null); - expect(await rowPos[0].hasGoToNeuronsTableAction()).toBe(false); + expect(await rowPos[0].getHref()).toBe( + `/neurons/?u=${OWN_CANISTER_ID_TEXT}` + ); + expect(await rowPos[0].hasGoToNeuronsTableAction()).toBe(true); expect(await rowPos[1].getNeuronCount()).toBe("-/-"); - expect(await rowPos[1].getHref()).toBe(null); - expect(await rowPos[1].hasGoToNeuronsTableAction()).toBe(false); + expect(await rowPos[1].getHref()).toBe(`/neurons/?u=${snsCanisterId}`); + expect(await rowPos[1].hasGoToNeuronsTableAction()).toBe(true); }); it("should not render SNS neurons count when not loaded", async () => { @@ -198,11 +200,13 @@ describe("ProjectsTable", () => { const rowPos = await po.getProjectsTableRowPos(); expect(rowPos).toHaveLength(2); expect(await rowPos[0].getNeuronCount()).toBe("-/-"); - expect(await rowPos[0].getHref()).toBe(null); - expect(await rowPos[0].hasGoToNeuronsTableAction()).toBe(false); + expect(await rowPos[0].getHref()).toBe( + `/neurons/?u=${OWN_CANISTER_ID_TEXT}` + ); + expect(await rowPos[0].hasGoToNeuronsTableAction()).toBe(true); expect(await rowPos[1].getNeuronCount()).toBe("-/-"); - expect(await rowPos[0].getHref()).toBe(null); - expect(await rowPos[1].hasGoToNeuronsTableAction()).toBe(false); + expect(await rowPos[1].getHref()).toBe(`/neurons/?u=${snsCanisterId}`); + expect(await rowPos[1].hasGoToNeuronsTableAction()).toBe(true); }); it("should not render clickable row with zero neurons", async () => { @@ -219,11 +223,13 @@ describe("ProjectsTable", () => { const rowPos = await po.getProjectsTableRowPos(); expect(rowPos).toHaveLength(2); expect(await rowPos[0].getNeuronCount()).toBe("0"); - expect(await rowPos[0].getHref()).toBe(null); - expect(await rowPos[0].hasGoToNeuronsTableAction()).toBe(false); + expect(await rowPos[0].getHref()).toBe( + `/neurons/?u=${OWN_CANISTER_ID_TEXT}` + ); + expect(await rowPos[0].hasGoToNeuronsTableAction()).toBe(true); expect(await rowPos[1].getNeuronCount()).toBe("0"); - expect(await rowPos[1].getHref()).toBe(null); - expect(await rowPos[1].hasGoToNeuronsTableAction()).toBe(false); + expect(await rowPos[1].getHref()).toBe(`/neurons/?u=${snsCanisterId}`); + expect(await rowPos[1].hasGoToNeuronsTableAction()).toBe(true); }); }); diff --git a/frontend/src/tests/lib/utils/staking.utils.spec.ts b/frontend/src/tests/lib/utils/staking.utils.spec.ts index f857635ff43..6a6711c37e0 100644 --- a/frontend/src/tests/lib/utils/staking.utils.spec.ts +++ b/frontend/src/tests/lib/utils/staking.utils.spec.ts @@ -34,7 +34,7 @@ describe("staking.utils", () => { const snsHref = `/neurons/?u=${universeId2}`; const defaultExpectedNnsTableProject = { - rowHref: undefined, + rowHref: nnsHref, domKey: OWN_CANISTER_ID_TEXT, title: "Internet Computer", logo: IC_LOGO_ROUNDED, @@ -46,7 +46,7 @@ describe("staking.utils", () => { }; const defaultExpectedSnsTableProject = { - rowHref: undefined, + rowHref: snsHref, domKey: universeId2, title: "title2", logo: "logo2", @@ -223,13 +223,11 @@ describe("staking.utils", () => { expect(tableProjects).toEqual([ { ...defaultExpectedNnsTableProject, - rowHref: undefined, neuronCount: undefined, stake: undefined, }, { ...defaultExpectedSnsTableProject, - rowHref: undefined, neuronCount: undefined, stake: undefined, }, @@ -249,13 +247,11 @@ describe("staking.utils", () => { expect(tableProjects).toEqual([ { ...defaultExpectedNnsTableProject, - rowHref: undefined, neuronCount: undefined, stake: undefined, }, { ...defaultExpectedSnsTableProject, - rowHref: undefined, neuronCount: undefined, stake: undefined, },