Skip to content

Commit

Permalink
test: filteredActionableProposals
Browse files Browse the repository at this point in the history
  • Loading branch information
mstrasinskis committed Mar 26, 2024
1 parent dff58ed commit 5acc3e0
Showing 1 changed file with 68 additions and 2 deletions.
70 changes: 68 additions & 2 deletions frontend/src/tests/lib/derived/proposals.derived.spec.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
import { sortedProposals } from "$lib/derived/proposals.derived";
import { proposalsStore } from "$lib/stores/proposals.store";
import {
filteredActionableProposals,
sortedProposals,
} from "$lib/derived/proposals.derived";
import { actionableNnsProposalsStore } from "$lib/stores/actionable-nns-proposals.store";
import {
proposalsFiltersStore,
proposalsStore,
} from "$lib/stores/proposals.store";
import { mockProposals } from "$tests/mocks/proposals.store.mock";
import type { ProposalInfo } from "@dfinity/nns";
import { get } from "svelte/store";

Expand Down Expand Up @@ -43,4 +51,62 @@ describe("proposals-derived", () => {
const { proposals } = get(sortedProposals);
expect(proposals).toEqual(expectedProposals);
});

describe("filteredActionableProposals", () => {
beforeEach(() => {
proposalsStore.reset();
proposalsFiltersStore.reset();
actionableNnsProposalsStore.reset();
});

it("should append isActionable", () => {
proposalsStore.setProposals({
proposals: [...mockProposals],
certified: true,
});
actionableNnsProposalsStore.setProposals([mockProposals[0]]);

expect(get(filteredActionableProposals)?.proposals).toHaveLength(
mockProposals.length
);
expect(get(filteredActionableProposals)).toEqual({
proposals: [
{
...mockProposals[0],
hidden: false,
isActionable: true,
},
{
...mockProposals[1],
hidden: false,
isActionable: false,
},
],
certified: true,
});
});

it("should add isActionable=undefined when actionables not available", () => {
proposalsStore.setProposals({
proposals: [...mockProposals],
certified: true,
});

expect(get(filteredActionableProposals)).toEqual({
proposals: [
{
...mockProposals[0],
hidden: false,
isActionable: undefined,
},
{
...mockProposals[1],
hidden: false,
isActionable: undefined,
},
],
certified: true,
});
});
});
});

0 comments on commit 5acc3e0

Please sign in to comment.