kopia lustrzana https://github.com/magicbug/Cloudlog
add tests for new account alerts
rodzic
0e7232a50c
commit
e1f75906ee
|
@ -0,0 +1,91 @@
|
|||
// Test suite for new account notifications within the application
|
||||
describe("New account notifications", () => {
|
||||
// Before each test, perform login operation. Assumes cy.login() is a custom command.
|
||||
beforeEach(() => {
|
||||
cy.login();
|
||||
});
|
||||
|
||||
// Notification messages expected to be seen by new accounts
|
||||
const locationsNotificationMessage =
|
||||
"You have no station locations. Go here to create it!";
|
||||
const logbookNotificationMessage =
|
||||
"You have no station logbook. Go here to create it!";
|
||||
const activeStationNotificationMessage =
|
||||
"Attention: you need to set an active station location.";
|
||||
const noQSONotificationMessage =
|
||||
"You have made no QSOs today; time to turn on the radio!";
|
||||
|
||||
// Test to verify the locations notification message and its link
|
||||
it(`should show a "${locationsNotificationMessage}" notification with a valid link to create it`, () => {
|
||||
// Verify notification visibility and class for urgency
|
||||
cy.get("body")
|
||||
.contains(locationsNotificationMessage)
|
||||
.should("be.visible")
|
||||
.and("have.class", "alert-danger");
|
||||
|
||||
// Validate the hyperlink's destination within the notification
|
||||
cy.contains(locationsNotificationMessage).within(() => {
|
||||
cy.get("a")
|
||||
.contains("here")
|
||||
.should("have.attr", "href")
|
||||
.and("equal", "http://localhost/index.php/station");
|
||||
});
|
||||
});
|
||||
|
||||
// Test navigation to the station creation page via the notification link
|
||||
it("should navigate to the station creation page after clicking the link in the notification", () => {
|
||||
// Trigger click on the link within the notification message
|
||||
cy.contains(locationsNotificationMessage).within(() => {
|
||||
cy.get("a").contains("here").click();
|
||||
});
|
||||
|
||||
// Assert the correct page has been loaded by checking the URL
|
||||
cy.url().should("include", "/station");
|
||||
});
|
||||
|
||||
// Test to verify the logbook notification message and its link
|
||||
it(`should show a "${logbookNotificationMessage}" notification with a valid link to create it`, () => {
|
||||
// Verify notification visibility and class for urgency
|
||||
cy.get("body")
|
||||
.contains(logbookNotificationMessage)
|
||||
.should("be.visible")
|
||||
.and("have.class", "alert-danger");
|
||||
|
||||
// Validate the hyperlink's destination within the notification
|
||||
cy.contains(logbookNotificationMessage).within(() => {
|
||||
cy.get("a")
|
||||
.contains("here")
|
||||
.should("have.attr", "href")
|
||||
.and("equal", "http://localhost/index.php/logbooks");
|
||||
});
|
||||
});
|
||||
|
||||
// Test navigation to the logbook creation page via the notification link
|
||||
it("should navigate to the logbook creation page after clicking the link in the notification", () => {
|
||||
// Trigger click on the link within the notification message
|
||||
cy.contains(logbookNotificationMessage).within(() => {
|
||||
cy.get("a").contains("here").click();
|
||||
});
|
||||
|
||||
// Assert the correct page has been loaded by checking the URL
|
||||
cy.url().should("include", "/logbooks");
|
||||
});
|
||||
|
||||
// Test to verify the active station notification is properly displayed
|
||||
it(`should display an "${activeStationNotificationMessage}" notification`, () => {
|
||||
// Verify notification visibility and class for urgency
|
||||
cy.get("body")
|
||||
.contains(activeStationNotificationMessage)
|
||||
.should("be.visible")
|
||||
.and("have.class", "alert-danger");
|
||||
});
|
||||
|
||||
// Test to verify the no QSO notification is properly displayed
|
||||
it(`should display a "${noQSONotificationMessage}" notification`, () => {
|
||||
// Verify notification visibility and class for importance
|
||||
cy.get("body")
|
||||
.contains(noQSONotificationMessage)
|
||||
.should("be.visible")
|
||||
.and("have.class", "alert-warning");
|
||||
});
|
||||
});
|
Ładowanie…
Reference in New Issue