test
This commit is contained in:
19
__tests__/App.test.jsx
Normal file
19
__tests__/App.test.jsx
Normal file
@@ -0,0 +1,19 @@
|
||||
// src/__ tests __/App.test.tsx
|
||||
|
||||
import { expect, test } from "vitest";
|
||||
import { render } from "@testing-library/react";
|
||||
import App from "../src/App.jsx";
|
||||
import { BrowserRouter } from "react-router-dom";
|
||||
|
||||
test("demo", () => {
|
||||
expect(true).toBe(true);
|
||||
});
|
||||
|
||||
test("Renders the main page", () => {
|
||||
render(
|
||||
<BrowserRouter>
|
||||
<App />
|
||||
</BrowserRouter>,
|
||||
);
|
||||
expect(true).toBeTruthy();
|
||||
});
|
51
__tests__/pages/authenticated/Login.test.jsx
Normal file
51
__tests__/pages/authenticated/Login.test.jsx
Normal file
@@ -0,0 +1,51 @@
|
||||
import { describe, it, expect, beforeEach, vi, afterEach } from "vitest";
|
||||
import { render, fireEvent, screen, cleanup } from "@testing-library/react";
|
||||
import { Login } from "../../../src/pages/index.js";
|
||||
import { AuthenticationContext } from "../../../src/contexts/index.js";
|
||||
|
||||
describe("Login Component", () => {
|
||||
let loginFunction;
|
||||
|
||||
beforeEach(() => {
|
||||
loginFunction = vi.fn(); // Mock login function
|
||||
render(
|
||||
<AuthenticationContext.Provider value={{ login: loginFunction }}>
|
||||
<Login />
|
||||
</AuthenticationContext.Provider>,
|
||||
);
|
||||
});
|
||||
|
||||
afterEach(() => {
|
||||
cleanup();
|
||||
});
|
||||
|
||||
it("renders without errors", () => {
|
||||
expect(screen.getByText("Login page")).toBeTruthy();
|
||||
});
|
||||
|
||||
it("allows entering a username and password", () => {
|
||||
fireEvent.change(screen.getByPlaceholderText("username"), {
|
||||
target: { value: "testuser" },
|
||||
});
|
||||
fireEvent.change(screen.getByPlaceholderText("password"), {
|
||||
target: { value: "password123" },
|
||||
});
|
||||
|
||||
expect(screen.getByPlaceholderText("username").value).toBe("testuser");
|
||||
expect(screen.getByPlaceholderText("password").value).toBe("password123");
|
||||
});
|
||||
|
||||
it("handles submit event", async () => {
|
||||
fireEvent.change(screen.getByPlaceholderText("username"), {
|
||||
target: { value: "testuser" },
|
||||
});
|
||||
fireEvent.change(screen.getByPlaceholderText("password"), {
|
||||
target: { value: "password123" },
|
||||
});
|
||||
fireEvent.click(screen.getByText("submit"));
|
||||
|
||||
expect(loginFunction).toHaveBeenCalledWith("testuser", "password123");
|
||||
});
|
||||
|
||||
//TODO add more tests please :)
|
||||
});
|
Reference in New Issue
Block a user