Skip to content

Commit

Permalink
Increase test coverage.
Browse files Browse the repository at this point in the history
  • Loading branch information
fniessink committed Jul 9, 2023
1 parent a367a80 commit 569daf3
Showing 1 changed file with 26 additions and 0 deletions.
26 changes: 26 additions & 0 deletions components/frontend/src/header_footer/Menubar.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,32 @@ it('logs in', async () => {
expect(set_user).toHaveBeenCalledWith("user@example.org", "user@example.org", expected_date)
});

it('shows invalid credential message', async () => {
auth.login = jest.fn().mockResolvedValue({ ok: false });
const set_user = jest.fn();
render(<Menubar report_date_string="2019-10-10" onDate={() => {/* Dummy handler */ }} user={null} set_user={set_user} />);
fireEvent.click(screen.getByText(/Login/));
fireEvent.change(screen.getByLabelText("Username"), { target: { value: 'user@example.org' } })
fireEvent.change(screen.getByLabelText("Password"), { target: { value: 'secret' } })
await act(async () => fireEvent.click(screen.getByText(/Submit/)));
expect(screen.getAllByText(/Invalid credentials/).length).toBe(1);
expect(auth.login).toHaveBeenCalledWith("user@example.org", "secret")
expect(set_user).not.toHaveBeenCalled()
});

it('shows connection error message', async () => {
auth.login = jest.fn().mockRejectedValue(new Error('Async error message'));
const set_user = jest.fn();
render(<Menubar report_date_string="2019-10-10" onDate={() => {/* Dummy handler */ }} user={null} set_user={set_user} />);
fireEvent.click(screen.getByText(/Login/));
fireEvent.change(screen.getByLabelText("Username"), { target: { value: 'user@example.org' } })
fireEvent.change(screen.getByLabelText("Password"), { target: { value: 'secret' } })
await act(async () => fireEvent.click(screen.getByText(/Submit/)));
expect(screen.getAllByText(/Connection error/).length).toBe(1);
expect(auth.login).toHaveBeenCalledWith("user@example.org", "secret")
expect(set_user).not.toHaveBeenCalled()
});

it('logs out', async () => {
auth.logout = jest.fn().mockResolvedValue({ ok: true });
const set_user = jest.fn();
Expand Down

0 comments on commit 569daf3

Please sign in to comment.