From e0f3e4feb709cfaffb4a148e15be78f7c8c17bf7 Mon Sep 17 00:00:00 2001 From: Jake McDermott Date: Tue, 5 Dec 2017 16:20:27 -0500 Subject: [PATCH] add e2e test for inventory copy --- .../tests/test-inventories-list-actions.js | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 awx/ui/test/e2e/tests/test-inventories-list-actions.js diff --git a/awx/ui/test/e2e/tests/test-inventories-list-actions.js b/awx/ui/test/e2e/tests/test-inventories-list-actions.js new file mode 100644 index 0000000000..280608b197 --- /dev/null +++ b/awx/ui/test/e2e/tests/test-inventories-list-actions.js @@ -0,0 +1,50 @@ +import { getInventory } from '../fixtures'; + +const data = {}; + +module.exports = { + before: (client, done) => { + getInventory('test-actions') + .then(obj => { data.inventory = obj; }) + .then(done); + }, + 'copy inventory': client => { + const inventories = client.page.inventories(); + + client.useCss(); + client.resizeWindow(1200, 800); + client.login(); + client.waitForAngular(); + + inventories.navigate(); + inventories.waitForElementVisible('div.spinny'); + inventories.waitForElementNotVisible('div.spinny'); + + inventories.section.list.expect.element('smart-search').visible; + inventories.section.list.section.search.expect.element('@input').enabled; + + inventories.section.list.section.search + .sendKeys('@input', `id:>${data.inventory.id - 1} id:<${data.inventory.id + 1}`) + .sendKeys('@input', client.Keys.ENTER); + + inventories.waitForElementVisible('div.spinny'); + inventories.waitForElementNotVisible('div.spinny'); + + inventories.expect.element(`#inventories_table tr[id="${data.inventory.id}"]`).visible; + inventories.expect.element('i[class*="copy"]').visible; + inventories.expect.element('i[class*="copy"]').enabled; + + inventories.click('i[class*="copy"]'); + inventories.waitForElementVisible('div.spinny'); + inventories.waitForElementNotVisible('div.spinny'); + + inventories.expect.element('#inventory_form').visible; + inventories.section.editStandardInventory.expect.element('@title').visible; + inventories.section.editStandardInventory.expect.element('@title').text.contain(data.inventory.name); + inventories.section.editStandardInventory.expect.element('@title').text.not.equal(data.inventory.name); + inventories.expect.element('@save').visible; + inventories.expect.element('@save').enabled; + + client.end(); + } +};