Files
Athou_commafeed/commafeed-server/src/test/java/com/commafeed/e2e/AuthentificationIT.java

63 lines
1.7 KiB
Java
Raw Normal View History

2025-03-10 08:38:21 +01:00
package com.commafeed.e2e;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
2025-03-10 08:38:21 +01:00
import org.junit.jupiter.api.Test;
import com.commafeed.TestConstants;
import com.microsoft.playwright.BrowserContext;
2025-03-10 08:38:21 +01:00
import com.microsoft.playwright.Page;
import com.microsoft.playwright.assertions.PlaywrightAssertions;
import com.microsoft.playwright.options.AriaRole;
import io.quarkiverse.playwright.InjectPlaywright;
import io.quarkiverse.playwright.WithPlaywright;
2025-03-10 08:38:21 +01:00
import io.quarkus.test.junit.QuarkusTest;
@QuarkusTest
@WithPlaywright
2025-03-10 08:38:21 +01:00
class AuthentificationIT {
@InjectPlaywright
private BrowserContext context;
2025-03-10 08:38:21 +01:00
@BeforeEach
void setup() {
PlaywrightTestUtils.initialSetup();
}
2025-03-10 08:38:21 +01:00
@AfterEach
void cleanup() {
context.clearCookies();
2025-03-10 08:38:21 +01:00
}
@Test
void loginFail() {
Page page = context.newPage();
2025-03-10 08:38:21 +01:00
page.navigate(getLoginPageUrl());
PlaywrightTestUtils.login(page, TestConstants.ADMIN_USERNAME, "wrong_password");
2025-03-10 08:38:21 +01:00
PlaywrightAssertions.assertThat(page.getByRole(AriaRole.ALERT)).containsText("wrong username or password");
}
@Test
void loginSuccess() {
Page page = context.newPage();
2025-03-10 08:38:21 +01:00
page.navigate(getLoginPageUrl());
PlaywrightTestUtils.login(page);
PlaywrightAssertions.assertThat(page).hasURL("http://localhost:8085/#/app/category/all");
}
@Test
void registerSuccess() {
Page page = context.newPage();
2025-03-10 08:38:21 +01:00
page.navigate(getLoginPageUrl());
page.getByText("Sign up!").click();
2025-06-30 08:08:01 +02:00
PlaywrightTestUtils.register(page, "user", "user@domain.com", "MyPassword1!");
2025-03-10 08:38:21 +01:00
PlaywrightAssertions.assertThat(page).hasURL("http://localhost:8085/#/app/category/all");
}
private String getLoginPageUrl() {
return "http://localhost:8085/#/login";
}
}