import { testView } from "../../../test/_globals.js";
import { logout, login } from "../../support/index.js";
describe("Read Only User", () => {
    before(logout);
    after(logout);
    it("Logs In Successfully", () => {
        login(testView);
    });
    describe("Dashboard", () => {
        before(() => {
            cy.visit("/dashboard");
        });
        it("Has no detectable accessibility issues", () => {
            cy.injectAxe();
            cy.checkA11y();
        });
        it("Has no links to new areas", () => {
            cy.get("a[href*='/new']").should("not.exist");
        });
        it("Has no links to admin areas", () => {
            cy.get("a[href*='/admin']").should("not.exist");
        });
    });
    it("Has no link to create maps on Map Search", () => {
        cy.visit("/maps");
        cy.get("a[href*='/new']").should("not.exist");
    });
    it("Has no link to create lots on Lot Search", () => {
        cy.visit("/lots");
        cy.get("a[href*='/new']").should("not.exist");
    });
    it("Has no link to create occupancies on Occupancy Search", () => {
        cy.visit("/lotOccupancies");
        cy.get("a[href*='/new']").should("not.exist");
    });
    it("Has no link to create work orders on Work Order Search", () => {
        cy.visit("/workOrders");
        cy.get("a[href*='/new']").should("not.exist");
    });
    it("Redirects to Dashboard when attempting to create a work order", () => {
        cy.visit("/workOrders/new");
        cy.wait(200);
        cy.location("pathname").should("equal", "/dashboard/");
    });
    it("Redirects to Dashboard when attempting to alter fees", () => {
        cy.visit("/admin/fees");
        cy.wait(200);
        cy.location("pathname").should("not.contain", "/admin");
    });
});
