import { testUpdate } from "../../../test/_globals.js"; import { logout, login } from "../../support/index.js"; import * as configFunctions from "../../../helpers/functions.config.js"; describe("Update - Maps", () => { before(() => { logout(); login(testUpdate); }); it('Has a "Create" link on the Map Search', () => { cy.visit("/maps"); cy.get("a[href$='/maps/new']").should("exist"); }); describe("Update a New Map", () => { before(() => { cy.visit("/maps/new"); }); it("Has no detectable accessibility issues", () => { cy.injectAxe(); cy.checkA11y(); }); it("Can populate basic details", () => { cy.fixture("map.json").then((mapJSON) => { cy.get("input[name='mapName']").clear().type(mapJSON.mapName); cy.get("textarea[name='mapDescription']").clear().type(mapJSON.mapDescription); cy.get("input[name='mapAddress1']").clear().type(mapJSON.mapAddress1); cy.get("input[name='mapAddress2']").clear().type(mapJSON.mapAddress2); cy.get("input[name='mapPostalCode']").clear().type(mapJSON.mapPostalCode); cy.get("input[name='mapPhoneNumber']").clear().type(mapJSON.mapPhoneNumber); cy.get("input[name='mapLatitude']").clear().type(mapJSON.mapLatitude.toString()); cy.get("input[name='mapLongitude']").clear().type(mapJSON.mapLongitude.toString()); }); }); it("Should use the default map city and province", () => { cy.get("input[name='mapCity']").should("have.value", configFunctions.getProperty("settings.map.mapCityDefault")); cy.get("input[name='mapProvince']").should("have.value", configFunctions.getProperty("settings.map.mapProvinceDefault")); }); it("Should submit form and create the map", () => { cy.get("#form--map").submit(); cy.wait(1000); cy.location("pathname").should("not.contain", "/new").should("contain", "/edit"); }); it("Should be populated as expected", () => { cy.fixture("map.json").then((mapJSON) => { cy.get("input[name='mapName']").should("have.value", mapJSON.mapName); cy.get("textarea[name='mapDescription']").should("have.value", mapJSON.mapDescription); cy.get("input[name='mapAddress1']").should("have.value", mapJSON.mapAddress1); cy.get("input[name='mapAddress2']").should("have.value", mapJSON.mapAddress2); cy.get("input[name='mapCity']").should("have.value", configFunctions.getProperty("settings.map.mapCityDefault")); cy.get("input[name='mapProvince']").should("have.value", configFunctions.getProperty("settings.map.mapProvinceDefault")); cy.get("input[name='mapPostalCode']").should("have.value", mapJSON.mapPostalCode); cy.get("input[name='mapPhoneNumber']").should("have.value", mapJSON.mapPhoneNumber); cy.get("input[name='mapLatitude']").should("have.value", mapJSON.mapLatitude.toString()); cy.get("input[name='mapLongitude']").should("have.value", mapJSON.mapLongitude.toString()); }); }); }); });