diff --git a/frontend/cypress/e2e/1-getting-started/pages/landingpage.cy.js b/frontend/cypress/e2e/1-getting-started/pages/landingpage.cy.js new file mode 100644 index 0000000..02942ab --- /dev/null +++ b/frontend/cypress/e2e/1-getting-started/pages/landingpage.cy.js @@ -0,0 +1,54 @@ +const BASE_URL = "http://localhost:3000" +describe('Landing page', () => { + it('should load the landing page successfully', () => { + cy.visit(BASE_URL + "/"); + cy.url().should("eq", BASE_URL + "/") + }); +}); + +describe("Make sure landing page is visitable/ displays data properly", () => { + beforeEach(() => { + cy.visit(BASE_URL + "/") + }) + + it("test landingpage has navigation bar", () => { + cy.contains("Før Søknad") + cy.contains("Under Søknad") + cy.contains("Mottakskontroll") + }) + + it("landing page has welcoming paragraph", () => { + cy.get("#welcome-text").should("be.visible") + }) + + it("landing page has image", () => { + cy.get("#homepage-picture").should("be.visible") + }) +}); + +describe("Make sure navbar on landing page get you to intended target", () => { + beforeEach(() => { + cy.visit(BASE_URL + "/") + }) + + it("test før søknad", () => { + cy.contains("Før Søknad").click(); + cy.url().should("eq", BASE_URL +"/bygget") + }) + + it("test under søknad", () => { + cy.contains("Under Søknad").click(); + cy.url().should("eq", BASE_URL + "/soknad") + }) + + it("test Mottakskontroll", () => { + cy.contains("Mottakskontroll").click(); + cy.url().should("eq", BASE_URL + "/admin") + }) +}) + + + + + + diff --git a/frontend/cypress/e2e/1-getting-started/todo.cy.js b/frontend/cypress/e2e/1-getting-started/todo.cy.js deleted file mode 100644 index 4768ff9..0000000 --- a/frontend/cypress/e2e/1-getting-started/todo.cy.js +++ /dev/null @@ -1,143 +0,0 @@ -/// - -// Welcome to Cypress! -// -// This spec file contains a variety of sample tests -// for a todo list app that are designed to demonstrate -// the power of writing tests in Cypress. -// -// To learn more about how Cypress works and -// what makes it such an awesome testing tool, -// please read our getting started guide: -// https://on.cypress.io/introduction-to-cypress - -describe('example to-do app', () => { - beforeEach(() => { - // Cypress starts out with a blank slate for each test - // so we must tell it to visit our website with the `cy.visit()` command. - // Since we want to visit the same URL at the start of all our tests, - // we include it in our beforeEach function so that it runs before each test - cy.visit('https://example.cypress.io/todo') - }) - - it('displays two todo items by default', () => { - // We use the `cy.get()` command to get all elements that match the selector. - // Then, we use `should` to assert that there are two matched items, - // which are the two default items. - cy.get('.todo-list li').should('have.length', 2) - - // We can go even further and check that the default todos each contain - // the correct text. We use the `first` and `last` functions - // to get just the first and last matched elements individually, - // and then perform an assertion with `should`. - cy.get('.todo-list li').first().should('have.text', 'Pay electric bill') - cy.get('.todo-list li').last().should('have.text', 'Walk the dog') - }) - - it('can add new todo items', () => { - // We'll store our item text in a variable so we can reuse it - const newItem = 'Feed the cat' - - // Let's get the input element and use the `type` command to - // input our new list item. After typing the content of our item, - // we need to type the enter key as well in order to submit the input. - // This input has a data-test attribute so we'll use that to select the - // element in accordance with best practices: - // https://on.cypress.io/selecting-elements - cy.get('[data-test=new-todo]').type(`${newItem}{enter}`) - - // Now that we've typed our new item, let's check that it actually was added to the list. - // Since it's the newest item, it should exist as the last element in the list. - // In addition, with the two default items, we should have a total of 3 elements in the list. - // Since assertions yield the element that was asserted on, - // we can chain both of these assertions together into a single statement. - cy.get('.todo-list li') - .should('have.length', 3) - .last() - .should('have.text', newItem) - }) - - it('can check off an item as completed', () => { - // In addition to using the `get` command to get an element by selector, - // we can also use the `contains` command to get an element by its contents. - // However, this will yield the