test(e2e): add login tests

This commit is contained in:
QAComet 2024-04-21 17:18:05 -06:00
parent 489ad14c3b
commit 163bf6a0cc

View File

@ -0,0 +1,32 @@
import { expect, test } from "../../index"
test("Logging in without credentials displays an error", async ({ loginPage }) => {
await loginPage.submitLoginButton.click()
const toast = await loginPage.getLatestToast()
await expect(toast.locator).toBeVisible()
await expect(toast.locator).toHaveAttribute("data-type", "error")
})
test("Logging in with an erroneous password displays an error", async ({ loginPage }) => {
await loginPage.usernameInput.fill(process.env['TEST_USERNAME'] || "")
await loginPage.passwordInput.fill("NOT_MY_PASSWORD_DNE_ERROR")
await loginPage.submitLoginButton.click()
const toast = await loginPage.getLatestToast()
await expect(toast.locator).toBeVisible()
await expect(toast.locator).toHaveAttribute("data-type", "error")
})
test("Logging in without valid credentials displays an error", async ({ loginPage }) => {
await loginPage.submitLoginButton.click()
const toast = await loginPage.getLatestToast()
await expect(toast.locator).toBeVisible()
await expect(toast.locator).toHaveAttribute("data-type", "error")
})
test("Logging in with a valid username and password works as expected", async ({ page, loginPage, dashboardPage }) => {
await loginPage.usernameInput.fill(process.env['TEST_USERNAME'] || "")
await loginPage.passwordInput.fill(process.env['TEST_PASSWORD'] || "")
await loginPage.submitLoginButton.click()
await expect(loginPage.loginForm).not.toBeVisible()
await expect(dashboardPage.container).toBeVisible()
})