2025-01-16 18:06:37 +01:00
|
|
|
import {test, expect} from "@playwright/test";
|
|
|
|
|
|
|
|
test.describe('mitarbeiter', () => {
|
|
|
|
test.beforeEach(async ({ page }) => {
|
|
|
|
await page.goto('http://localhost:4200');
|
|
|
|
|
|
|
|
await page.getByRole('button').click();
|
|
|
|
await page.waitForFunction(() => window.location.href.includes('keycloak'));
|
|
|
|
await page.getByLabel('Username or email').fill('user');
|
|
|
|
await page.getByLabel('Password').fill('test');
|
|
|
|
await page.click('#kc-login');
|
|
|
|
|
|
|
|
await page.goto('http://localhost:4200/mitarbeiter');
|
|
|
|
});
|
|
|
|
|
|
|
|
test('ShouldLoad', async ({ page }) => {
|
|
|
|
await expect(page.getByRole('heading')).toHaveText("Employees");
|
|
|
|
});
|
|
|
|
|
|
|
|
test('ShouldLoadEmployees', async ({page}) => {
|
|
|
|
expect(page.getByText('Max')).toBeTruthy();
|
|
|
|
});
|
|
|
|
|
|
|
|
test('AddEmployeeShouldRedirect', async ({page}) => {
|
|
|
|
await page.getByText('Add employee').click();
|
|
|
|
|
|
|
|
expect(page.url()).toContain('mitarbeitererstellen');
|
|
|
|
});
|
|
|
|
|
|
|
|
test('EditShouldRedirectToCorrespondingPage', async ({page}) => {
|
|
|
|
const button = page.getByText('Edit').first();
|
|
|
|
await button.click();
|
|
|
|
|
|
|
|
expect(page.url()).toContain('mitarbeiterbearbeiten');
|
|
|
|
expect(page.url()).toContain('1');
|
|
|
|
});
|
2025-01-17 11:30:24 +01:00
|
|
|
|
|
|
|
test('DeleteShouldRemoveUser', async ({page}) => {
|
|
|
|
const button = page.getByText('Delete').first();
|
|
|
|
await button.click();
|
|
|
|
|
|
|
|
const user = page.getByText('Max');
|
|
|
|
expect(user).toBeFalsy();
|
|
|
|
});
|
2025-01-16 18:06:37 +01:00
|
|
|
});
|
2025-01-17 11:30:24 +01:00
|
|
|
|