From 5935e3bde8a3c8a5aa6abf9797fca5e083e5aa53 Mon Sep 17 00:00:00 2001 From: Jon Perl Date: Tue, 10 Mar 2020 15:15:34 -0600 Subject: [PATCH] add selects tests --- test/e2e/selectors/selects.json | 12 ++++++++++++ test/e2e/tests/keys.test.js | 5 +++-- test/e2e/tests/selects.test.js | 29 +++++++++++++++++++++++++++++ test/e2e/tests/utils.js | 1 + 4 files changed, 45 insertions(+), 2 deletions(-) create mode 100644 test/e2e/selectors/selects.json create mode 100644 test/e2e/tests/selects.test.js create mode 100644 test/e2e/tests/utils.js diff --git a/test/e2e/selectors/selects.json b/test/e2e/selectors/selects.json new file mode 100644 index 000000000..5a2f63cab --- /dev/null +++ b/test/e2e/selectors/selects.json @@ -0,0 +1,12 @@ +{ + "0_select": "[data-qa='html-select']", + "1_material_select_div": "[data-qa='material-select']", + "2_li": "html=
", + "3_material_select_select": "[data-qa='material-select-native'] select", + "4_material_select_div": "[data-qa='material-select-multiple']", + "5_li": "html=
", + "6_li": "html=
", + "7_div": "html=
", + "8_input": "[data-qa='semantic-select'] input", + "9_div": "[data-qa='semantic-select']" +} diff --git a/test/e2e/tests/keys.test.js b/test/e2e/tests/keys.test.js index 8c74484c1..3b6a6d5b3 100644 --- a/test/e2e/tests/keys.test.js +++ b/test/e2e/tests/keys.test.js @@ -1,5 +1,6 @@ const qawolf = require('qawolf'); const selectors = require('../selectors/keys.json'); +const { TEST_URL } = require('./utils'); let browser; let page; @@ -14,14 +15,14 @@ beforeAll(async () => { afterAll(() => browser.close()); test('fill', async () => { - await page.goto('http://localhost:5000/text-inputs'); + await page.goto(`${TEST_URL}text-inputs`); await page.click("[data-qa='html-text-input-filled']"); await page.click('html'); await page.fill("[data-qa='html-text-input-filled']", 'replaced'); await page.click("[data-qa='material-text-input-filled'] input"); await page.click(selectors['4_div']); await page.fill("[data-qa='material-text-input-filled'] input", 'replaced'); - await page.goto('http://localhost:5000/date-pickers'); + await page.goto(`${TEST_URL}date-pickers`); await page.click("[data-qa='html-date-picker']"); await page.type("[data-qa='html-date-picker']", '01012020'); await page.press("[data-qa='html-date-picker']", 'Tab'); diff --git a/test/e2e/tests/selects.test.js b/test/e2e/tests/selects.test.js new file mode 100644 index 000000000..80f5e5b9c --- /dev/null +++ b/test/e2e/tests/selects.test.js @@ -0,0 +1,29 @@ +const qawolf = require('qawolf'); +const selectors = require('../selectors/selects.json'); +const { TEST_URL } = require('./utils'); + +let browser; +let page; + +beforeAll(async () => { + browser = await qawolf.launch({ slowMo: 20 }); + const context = await browser.newContext(); + await qawolf.register(context); + page = await context.newPage(); +}); + +afterAll(() => browser.close()); + +test('selects', async () => { + await page.goto(`${TEST_URL}selects`); + await page.select("[data-qa='html-select']", 'cat'); + await page.click("[data-qa='material-select']"); + await page.click(selectors['2_li']); + await page.select("[data-qa='material-select-native'] select", 'red'); + await page.click("[data-qa='material-select-multiple']"); + await page.click(selectors['5_li']); + await page.click(selectors['6_li']); + await page.click(selectors['7_div']); + await page.click("[data-qa='semantic-select'] input"); + await page.click("[data-qa='semantic-select']"); +}); diff --git a/test/e2e/tests/utils.js b/test/e2e/tests/utils.js new file mode 100644 index 000000000..9ca8b667c --- /dev/null +++ b/test/e2e/tests/utils.js @@ -0,0 +1 @@ +module.exports.TEST_URL = process.env.TEST_URL || 'http://localhost:5000/';