From 190259bb0f512d881a1dc852ff0c68dd41aeb434 Mon Sep 17 00:00:00 2001 From: Santo Cariotti Date: Sat, 12 Nov 2022 11:37:43 +0100 Subject: Init --- app/tests/e2e/.eslintrc.js | 12 ++++++++++++ app/tests/e2e/plugins/index.js | 25 +++++++++++++++++++++++++ app/tests/e2e/specs/test.js | 8 ++++++++ app/tests/e2e/support/commands.js | 25 +++++++++++++++++++++++++ app/tests/e2e/support/index.js | 20 ++++++++++++++++++++ app/tests/unit/example.spec.ts | 9 +++++++++ 6 files changed, 99 insertions(+) create mode 100644 app/tests/e2e/.eslintrc.js create mode 100644 app/tests/e2e/plugins/index.js create mode 100644 app/tests/e2e/specs/test.js create mode 100644 app/tests/e2e/support/commands.js create mode 100644 app/tests/e2e/support/index.js create mode 100644 app/tests/unit/example.spec.ts (limited to 'app/tests') diff --git a/app/tests/e2e/.eslintrc.js b/app/tests/e2e/.eslintrc.js new file mode 100644 index 0000000..72e6bbf --- /dev/null +++ b/app/tests/e2e/.eslintrc.js @@ -0,0 +1,12 @@ +module.exports = { + plugins: [ + 'cypress' + ], + env: { + mocha: true, + 'cypress/globals': true + }, + rules: { + strict: 'off' + } +} diff --git a/app/tests/e2e/plugins/index.js b/app/tests/e2e/plugins/index.js new file mode 100644 index 0000000..6f7e63b --- /dev/null +++ b/app/tests/e2e/plugins/index.js @@ -0,0 +1,25 @@ +/* eslint-disable arrow-body-style */ +// https://docs.cypress.io/guides/guides/plugins-guide.html + +// if you need a custom webpack configuration you can uncomment the following import +// and then use the `file:preprocessor` event +// as explained in the cypress docs +// https://docs.cypress.io/api/plugins/preprocessors-api.html#Examples + +// /* eslint-disable import/no-extraneous-dependencies, global-require */ +// const webpack = require('@cypress/webpack-preprocessor') + +module.exports = (on, config) => { + // on('file:preprocessor', webpack({ + // webpackOptions: require('@vue/cli-service/webpack.config'), + // watchOptions: {} + // })) + + return Object.assign({}, config, { + fixturesFolder: 'tests/e2e/fixtures', + integrationFolder: 'tests/e2e/specs', + screenshotsFolder: 'tests/e2e/screenshots', + videosFolder: 'tests/e2e/videos', + supportFile: 'tests/e2e/support/index.js' + }) +} diff --git a/app/tests/e2e/specs/test.js b/app/tests/e2e/specs/test.js new file mode 100644 index 0000000..bba35a1 --- /dev/null +++ b/app/tests/e2e/specs/test.js @@ -0,0 +1,8 @@ +// https://docs.cypress.io/api/introduction/api.html + +describe('My First Test', () => { + it('Visits the app root url', () => { + cy.visit('/') + cy.contains('ion-content', 'Tab 1 page') + }) +}) diff --git a/app/tests/e2e/support/commands.js b/app/tests/e2e/support/commands.js new file mode 100644 index 0000000..c1f5a77 --- /dev/null +++ b/app/tests/e2e/support/commands.js @@ -0,0 +1,25 @@ +// *********************************************** +// This example commands.js shows you how to +// create various custom commands and overwrite +// existing commands. +// +// For more comprehensive examples of custom +// commands please read more here: +// https://on.cypress.io/custom-commands +// *********************************************** +// +// +// -- This is a parent command -- +// Cypress.Commands.add("login", (email, password) => { ... }) +// +// +// -- This is a child command -- +// Cypress.Commands.add("drag", { prevSubject: 'element'}, (subject, options) => { ... }) +// +// +// -- This is a dual command -- +// Cypress.Commands.add("dismiss", { prevSubject: 'optional'}, (subject, options) => { ... }) +// +// +// -- This is will overwrite an existing command -- +// Cypress.Commands.overwrite("visit", (originalFn, url, options) => { ... }) diff --git a/app/tests/e2e/support/index.js b/app/tests/e2e/support/index.js new file mode 100644 index 0000000..d68db96 --- /dev/null +++ b/app/tests/e2e/support/index.js @@ -0,0 +1,20 @@ +// *********************************************************** +// This example support/index.js is processed and +// loaded automatically before your test files. +// +// This is a great place to put global configuration and +// behavior that modifies Cypress. +// +// You can change the location of this file or turn off +// automatically serving support files with the +// 'supportFile' configuration option. +// +// You can read more here: +// https://on.cypress.io/configuration +// *********************************************************** + +// Import commands.js using ES2015 syntax: +import './commands' + +// Alternatively you can use CommonJS syntax: +// require('./commands') diff --git a/app/tests/unit/example.spec.ts b/app/tests/unit/example.spec.ts new file mode 100644 index 0000000..f32b23b --- /dev/null +++ b/app/tests/unit/example.spec.ts @@ -0,0 +1,9 @@ +import { mount } from '@vue/test-utils' +import Tab1Page from '@/views/Tab1Page.vue' + +describe('Tab1Page.vue', () => { + it('renders tab 1 Tab1Page', () => { + const wrapper = mount(Tab1Page) + expect(wrapper.text()).toMatch('Tab 1 page') + }) +}) -- cgit v1.2.3-18-g5258