Skip to content

Commit

Permalink
fix tests
Browse files Browse the repository at this point in the history
  • Loading branch information
bgptr committed Jun 28, 2023
1 parent 31f0a17 commit cd5a978
Show file tree
Hide file tree
Showing 6 changed files with 207 additions and 146 deletions.
32 changes: 17 additions & 15 deletions test/unit/components/SideBar/Sidebar.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -136,21 +136,7 @@ const expectToHaveDefaultMenuLinks = async (user, params) => {
"/transactions",
"On-chain Transactions"
);
await expectToHaveMenuLink(
"menuLinkContent-governance",
"Governance",
"governanceIcon",
"/governance",
"Governance"
);
if (!sidebarOnBottom || expandSideBar) {
await expectToHaveMenuLink(
"menuLinkContent-tickets",
"Staking",
"ticketsIcon",
"/tickets",
"Staking"
);
await expectToHaveMenuLink(
"menuLinkContent-accounts",
"Accounts",
Expand All @@ -177,6 +163,20 @@ const expectToHaveDefaultMenuLinks = async (user, params) => {
"/dex",
"DEX"
);
await expectToHaveMenuLink(
"menuLinkContent-tickets",
"Staking",
"ticketsIcon",
"/tickets",
"Staking"
);
await expectToHaveMenuLink(
"menuLinkContent-governance",
"Governance",
"governanceIcon",
"/governance",
"Governance"
);
}
}
if (isLnEnabled) {
Expand Down Expand Up @@ -301,7 +301,9 @@ test("renders sidebar on the bottom", async () => {
mockSidebarOnBottom.mockRestore();
});

test("renders sidebar with trezor enabled, should not find trezor menu, it have been moved to a separate tab under settings", async () => {
test("renders sidebar with trezor enabled, should not find trezor menu,\
it have been moved to a separate tab under settings. Governance and Tickets\
should be hidden.", async () => {
const mockIsTrezor = (selectors.isTrezor = jest.fn(() => true));
const { user } = render(<SideBar />);
await expectToHaveDefaultMenuLinks(user, {
Expand Down
7 changes: 4 additions & 3 deletions test/unit/components/Snackbar/Snackbar.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -184,22 +184,23 @@ test("test multi notification", async () => {
jest.useFakeTimers();
user.click(snackbarSenderButton);
user.click(snackbarSenderButton);
user.click(snackbarSenderButton);
await waitFor(() =>
expect(screen.getAllByTestId("snackbar-message").length).toBe(2)
expect(screen.getAllByTestId("snackbar-message").length).toBe(3)
);
// simulate that 10 * 500 seconds have passed
act(() => {
jest.advanceTimersByTime(5000);
});
await waitFor(() =>
expect(screen.getAllByTestId("snackbar-message").length).toBe(1)
expect(screen.getAllByTestId("snackbar-message").length).toBe(2)
);
// simulate that 10 * 500 seconds have passed
act(() => {
jest.advanceTimersByTime(5000);
});
await waitFor(() =>
expect(screen.queryByTestId("snackbar-message")).not.toBeInTheDocument()
expect(screen.getAllByTestId("snackbar-message").length).toBe(1)
);
});

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import ProcessManagedTickets from "components/views/GetStartedPage/SetupWallet/ProcessManagedTickets";
import { render } from "test-utils.js";
import { screen, wait } from "@testing-library/react";
import user from "@testing-library/user-event";
import { screen, waitFor } from "@testing-library/react";
import * as sel from "selectors";
import * as wal from "wallet";
import * as arrs from "../../../../../../app/helpers/arrays";
Expand Down Expand Up @@ -108,37 +107,40 @@ const initialState = {
}
};

test("skip ProcessManagedTickets and show error", () => {
render(
test("skip ProcessManagedTickets and show error", async () => {
const { user } = render(
<ProcessManagedTickets
send={mockSend}
cancel={mockCancel}
error={testError}
/>
);
user.click(getSkipButton());
await user.click(getSkipButton());
expect(screen.getByText(testError)).toBeInTheDocument();
expect(mockCancel).toHaveBeenCalled();
});

test("do ProcessManagedTickets - in a private wallet", async () => {
mockUnlockLockAndGetAccountsAttempt();
render(<ProcessManagedTickets send={mockSend} cancel={mockCancel} />, {
initialState
});
const { user } = render(
<ProcessManagedTickets send={mockSend} cancel={mockCancel} />,
{
initialState
}
);
const continueButton = getContinueButton();
user.click(continueButton);
await user.click(continueButton);

expect(screen.getByText("Passphrase")).toBeInTheDocument();

// cancel first
user.click(getCancelButton());
await user.click(getCancelButton());

user.click(continueButton);
user.type(screen.getByLabelText("Private Passphrase"), testPassphrase);
user.click(getModalContinueButton());
await user.click(continueButton);
await user.type(screen.getByLabelText("Private Passphrase"), testPassphrase);
await user.click(getModalContinueButton());

await wait(() => expect(mockSend).toHaveBeenCalled());
await waitFor(() => expect(mockSend).toHaveBeenCalled());

expect(mockProcessManagedTickets).toHaveBeenNthCalledWith(
1,
Expand Down Expand Up @@ -201,22 +203,25 @@ test("do ProcessManagedTickets - in a default wallet, available vps pubkeys have
selectors.getMixedAccount = jest.fn(() => null);
selectors.getChangeAccount = jest.fn(() => null);
mockUnlockLockAndGetAccountsAttempt();
render(<ProcessManagedTickets send={mockSend} cancel={mockCancel} />, {
initialState
});
const { user } = render(
<ProcessManagedTickets send={mockSend} cancel={mockCancel} />,
{
initialState
}
);
const continueButton = getContinueButton();
user.click(continueButton);
await user.click(continueButton);

expect(screen.getByText("Passphrase")).toBeInTheDocument();

// cancel first
user.click(getCancelButton());
await user.click(getCancelButton());

user.click(continueButton);
user.type(screen.getByLabelText("Private Passphrase"), testPassphrase);
user.click(getModalContinueButton());
await user.click(continueButton);
await user.type(screen.getByLabelText("Private Passphrase"), testPassphrase);
await user.click(getModalContinueButton());

await wait(() => expect(mockSend).toHaveBeenCalled());
await waitFor(() => expect(mockSend).toHaveBeenCalled());

expect(mockProcessManagedTickets).toHaveBeenNthCalledWith(
1,
Expand Down Expand Up @@ -279,22 +284,25 @@ test("do ProcessManagedTickets - in a default wallet, available vps pubkeys have
selectors.getMixedAccount = jest.fn(() => null);
selectors.getChangeAccount = jest.fn(() => null);
mockUnlockLockAndGetAccountsAttempt();
render(<ProcessManagedTickets send={mockSend} cancel={mockCancel} />, {
initialState
});
const { user } = render(
<ProcessManagedTickets send={mockSend} cancel={mockCancel} />,
{
initialState
}
);
const continueButton = getContinueButton();
user.click(continueButton);
await user.click(continueButton);

expect(screen.getByText("Passphrase")).toBeInTheDocument();

// cancel first
user.click(getCancelButton());
await user.click(getCancelButton());

user.click(continueButton);
user.type(screen.getByLabelText("Private Passphrase"), testPassphrase);
user.click(getModalContinueButton());
await user.click(continueButton);
await user.type(screen.getByLabelText("Private Passphrase"), testPassphrase);
await user.click(getModalContinueButton());

await wait(() => expect(mockSend).toHaveBeenCalled());
await waitFor(() => expect(mockSend).toHaveBeenCalled());

expect(mockProcessManagedTickets).toHaveBeenNthCalledWith(
1,
Expand Down Expand Up @@ -355,16 +363,19 @@ test("do ProcessManagedTickets - failed to fetch vsps", async () => {
mockGetAllVSPs = wallet.getAllVSPs = jest.fn(() => {
throw testError;
});
render(<ProcessManagedTickets send={mockSend} cancel={mockCancel} />, {
initialState
});
const { user } = render(
<ProcessManagedTickets send={mockSend} cancel={mockCancel} />,
{
initialState
}
);
const continueButton = getContinueButton();
user.click(continueButton);
await user.click(continueButton);

user.type(screen.getByLabelText("Private Passphrase"), testPassphrase);
user.click(getModalContinueButton());
await user.type(screen.getByLabelText("Private Passphrase"), testPassphrase);
await user.click(getModalContinueButton());

await wait(() => expect(mockSend).toHaveBeenCalled());
await waitFor(() => expect(mockSend).toHaveBeenCalled());

expect(mockGetAllVSPs).toHaveBeenCalled();
expect(mockProcessManagedTickets).not.toHaveBeenCalled();
Expand Down

0 comments on commit cd5a978

Please sign in to comment.