changement test items
This commit is contained in:
parent
560226b6a8
commit
05b0a4514b
@ -1,35 +1,78 @@
|
|||||||
/*import { describe, it, expect, beforeEach, vi, afterEach } from "vitest";
|
import { describe, it, vi, expect, beforeEach, afterEach } from "vitest";
|
||||||
import { render, fireEvent, screen, cleanup } from "@testing-library/react";
|
import { render, fireEvent, screen, cleanup } from "@testing-library/react";
|
||||||
import { Login } from "../../../src/pages/index.js";
|
import { ItemPage } from "../../../src/components/item/ItemPage.jsx"; // Assurez-vous d'importer correctement votre composant
|
||||||
import { AuthenticationContext } from "../../../src/contexts/index.js";
|
import { AuthenticationContext } from "../../../src/contexts/index.js";
|
||||||
|
|
||||||
describe('Items Page', () => {
|
describe("Item Page with Authentication", () => {
|
||||||
|
let rooms;
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
// Se connecter à l'application avec le compte pseudo : Juvisi!0TEST et mdp : Juvisi!0TEST
|
// Simuler la connexion de l'utilisateur
|
||||||
cy.visit('/');
|
const user = { username: "Juvisi!0TEST", password: "Juvisi!0TEST" };
|
||||||
cy.findByPlaceholderText('username').type('Juvisi!0TEST');
|
const loginFunction = vi.fn().mockResolvedValue(user); // Mock de la fonction de connexion
|
||||||
cy.findByPlaceholderText('password').type('Juvisi!0TEST');
|
rooms = [{ _id: "66425c9d8869396c3e853633", name: "test" }];
|
||||||
cy.findByText('submit').click();
|
render(
|
||||||
// Vérifier que la connexion est réussie et que vous êtes redirigé vers la page '/items'
|
<AuthenticationContext.Provider value={{ login: loginFunction }}>
|
||||||
cy.findByText('Welcome Juvisi!0TEST').should('exist');
|
<ItemPage />
|
||||||
|
</AuthenticationContext.Provider>,
|
||||||
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('creates an item', () => {
|
afterEach(cleanup); // Nettoyer après chaque test pour éviter les fuites de mémoire
|
||||||
// Créer un nouvel item
|
|
||||||
cy.findByPlaceholderText('Item name').type('New Item');
|
it("renders without errors", () => {
|
||||||
cy.findByText('Add Item').click();
|
expect(screen.getByTestId("item-container")).toBeTruthy();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('verifies the item is created', () => {
|
/*it('allows filtering items', async () => {
|
||||||
// Vérifier que l'élément est ajouté à la liste
|
// Simuler une saisie dans le champ de recherche par nom
|
||||||
cy.findByText('New Item').should('exist');
|
fireEvent.change(screen.getByLabelText('Search by name:'), { target: { value: 'Item' } });
|
||||||
});
|
// Attendre que les éléments filtrés soient rendus dans la liste
|
||||||
|
await screen.findByText('Filtered Item');
|
||||||
|
});*/
|
||||||
|
|
||||||
it('deletes the item', () => {
|
/*it('allows creating an item', async () => {
|
||||||
// Supprimer l'élément
|
// Simuler un clic sur le bouton "Create Item"
|
||||||
cy.findByText('New Item').siblings('button').click();
|
fireEvent.click(screen.getByTestId('create-item-button'));
|
||||||
});
|
// Attendre que le modal de création d'élément s'ouvre
|
||||||
});
|
await screen.findByTestId('create-item-button');
|
||||||
|
// Simuler une saisie dans les champs du formulaire de création d'élément
|
||||||
|
fireEvent.change(screen.getByTestId("create-item-Brand-Input"), { target: { value: 'Brand X' } });
|
||||||
|
fireEvent.change(screen.getByTestId("create-item-Model-Input"), { target: { value: 'Model Y' } });
|
||||||
|
// Simuler un clic pour ouvrir le menu déroulant
|
||||||
|
fireEvent.mouseDown(screen.getByTestId("create-item-Room-Select"));
|
||||||
|
|
||||||
|
// Attendre que les options du menu déroulant soient rendues
|
||||||
|
await screen.findByText('test');
|
||||||
|
|
||||||
|
// Simuler un clic pour choisir l'option "test"
|
||||||
|
fireEvent.click(screen.getByText('test'));
|
||||||
|
|
||||||
|
|
||||||
*/ //impossible de tester car element pas encore terminé
|
// Simuler un clic sur le bouton "Submit" du formulaire
|
||||||
|
fireEvent.click(screen.getByText('Submit'));
|
||||||
|
// Attendre que l'élément soit ajouté à la liste
|
||||||
|
await screen.findByText('Brand X');
|
||||||
|
await screen.findByText('Model Y');
|
||||||
|
});*/
|
||||||
|
|
||||||
|
/*it('allows updating an item', async () => {
|
||||||
|
// Simuler un clic sur le bouton "Edit" de l'élément à mettre à jour
|
||||||
|
fireEvent.click(screen.getByText('Edit'));
|
||||||
|
// Attendre que le modal de mise à jour de l'élément s'ouvre
|
||||||
|
await screen.findByText('Update Item');
|
||||||
|
// Simuler une saisie dans les champs du formulaire de mise à jour d'élément
|
||||||
|
fireEvent.change(screen.getByLabelText('Brand'), { target: { value: 'Updated Brand' } });
|
||||||
|
fireEvent.change(screen.getByLabelText('Model'), { target: { value: 'Updated Model' } });
|
||||||
|
// Simuler un clic sur le bouton "Submit" du formulaire de mise à jour
|
||||||
|
fireEvent.click(screen.getByText('Submit'));
|
||||||
|
// Attendre que l'élément mis à jour soit affiché dans la liste
|
||||||
|
await screen.findByText('Updated Brand Updated Model');
|
||||||
|
});*/
|
||||||
|
|
||||||
|
/*it('allows deleting an item', async () => {
|
||||||
|
// Simuler un clic sur le bouton "Delete" de l'élément à supprimer
|
||||||
|
fireEvent.click(screen.getByText('Delete'));
|
||||||
|
// Attendre que l'élément soit supprimé de la liste
|
||||||
|
await screen.findByText('Updated Brand Updated Model', { timeout: 5000, shouldNotExist: true });
|
||||||
|
});*/
|
||||||
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user