mirror of
https://github.com/ansible/awx.git
synced 2026-01-17 04:31:21 -03:30
bump nightwatch and chromedriver versions
This commit is contained in:
parent
24fd4a360e
commit
a23e4732b6
@ -39,7 +39,7 @@
|
||||
"babel-loader": "^7.1.2",
|
||||
"babel-plugin-istanbul": "^4.1.5",
|
||||
"babel-preset-env": "^1.6.0",
|
||||
"chromedriver": "^2.31.0",
|
||||
"chromedriver": "^2.35.0",
|
||||
"clean-webpack-plugin": "^0.1.16",
|
||||
"copy-webpack-plugin": "^4.0.1",
|
||||
"css-loader": "^0.28.5",
|
||||
@ -80,7 +80,7 @@
|
||||
"load-grunt-configs": "^1.0.0",
|
||||
"load-grunt-tasks": "^3.5.0",
|
||||
"ngtemplate-loader": "^2.0.1",
|
||||
"nightwatch": "^0.9.16",
|
||||
"nightwatch": "^0.9.19",
|
||||
"node-object-hash": "^1.3.0",
|
||||
"phantomjs-prebuilt": "^2.1.12",
|
||||
"time-grunt": "^1.4.0",
|
||||
|
||||
@ -2,13 +2,13 @@
|
||||
version: '2'
|
||||
services:
|
||||
hub:
|
||||
image: selenium/hub:3.8.1-erbium
|
||||
image: selenium/hub
|
||||
ports:
|
||||
- 4444:4444
|
||||
chrome:
|
||||
image: selenium/node-chrome:3.8.1-erbium
|
||||
image: selenium/node-chrome
|
||||
# uncomment the two lines below to make tests watchable at vnc://localhost:secret@localhost:5900
|
||||
# image: selenium/node-chrome-debug:3.8.1-erbium
|
||||
# image: selenium/node-chrome-debug
|
||||
# ports: ['5900:5900']
|
||||
links:
|
||||
- hub
|
||||
@ -18,7 +18,7 @@ services:
|
||||
HUB_PORT_4444_TCP_ADDR: hub
|
||||
HUB_PORT_4444_TCP_PORT: 4444
|
||||
firefox:
|
||||
image: selenium/node-firefox:3.8.1-erbium
|
||||
image: selenium/node-firefox
|
||||
links:
|
||||
- hub
|
||||
environment:
|
||||
|
||||
@ -1,8 +1,13 @@
|
||||
exports.command = function navigateTo (url) {
|
||||
const spinny = 'div.spinny';
|
||||
|
||||
exports.command = function navigateTo (url, expectSpinny = true) {
|
||||
this.url('data:,'); // https://github.com/nightwatchjs/nightwatch/issues/1724
|
||||
this.url(url);
|
||||
|
||||
this.waitForElementVisible('div.spinny');
|
||||
this.waitForElementNotVisible('div.spinny');
|
||||
if (expectSpinny) {
|
||||
this.waitForElementVisible(spinny);
|
||||
this.waitForElementNotVisible(spinny);
|
||||
}
|
||||
|
||||
return this;
|
||||
};
|
||||
|
||||
@ -2,6 +2,12 @@ module.exports = {
|
||||
url () {
|
||||
return `${this.api.globals.launch_url}/#/activity_stream`;
|
||||
},
|
||||
commands: [{
|
||||
load () {
|
||||
this.api.url('data:,'); // https://github.com/nightwatchjs/nightwatch/issues/1724
|
||||
return this.navigate();
|
||||
},
|
||||
}],
|
||||
elements: {
|
||||
title: '.List-titleText',
|
||||
subtitle: '.List-titleLockup',
|
||||
|
||||
@ -52,6 +52,12 @@ module.exports = {
|
||||
url () {
|
||||
return `${this.api.globals.launch_url}/#/credential_types`;
|
||||
},
|
||||
commands: [{
|
||||
load () {
|
||||
this.api.url('data:,'); // https://github.com/nightwatchjs/nightwatch/issues/1724
|
||||
return this.navigate();
|
||||
},
|
||||
}],
|
||||
sections: {
|
||||
header,
|
||||
breadcrumb,
|
||||
|
||||
@ -216,6 +216,12 @@ module.exports = {
|
||||
url () {
|
||||
return `${this.api.globals.launch_url}/#/credentials`;
|
||||
},
|
||||
commands: [{
|
||||
load () {
|
||||
this.api.url('data:,'); // https://github.com/nightwatchjs/nightwatch/issues/1724
|
||||
return this.navigate();
|
||||
},
|
||||
}],
|
||||
sections: {
|
||||
header,
|
||||
navigation,
|
||||
|
||||
@ -116,6 +116,10 @@ module.exports = {
|
||||
save: 'button[class*="Form-saveButton"]'
|
||||
},
|
||||
commands: [{
|
||||
load () {
|
||||
this.api.url('data:,'); // https://github.com/nightwatchjs/nightwatch/issues/1724
|
||||
return this.navigate();
|
||||
},
|
||||
selectAdd (name) {
|
||||
this.api.waitForElementVisible('button span[class="List-dropdownCarat"]');
|
||||
this.expect.element('button span[class="List-dropdownCarat"]').enabled;
|
||||
|
||||
@ -24,6 +24,12 @@ module.exports = {
|
||||
url () {
|
||||
return `${this.api.globals.launch_url}/#/inventory_scripts`;
|
||||
},
|
||||
commands: [{
|
||||
load () {
|
||||
this.api.url('data:,'); // https://github.com/nightwatchjs/nightwatch/issues/1724
|
||||
return this.navigate();
|
||||
},
|
||||
}],
|
||||
sections: {
|
||||
header,
|
||||
navigation,
|
||||
|
||||
@ -6,5 +6,10 @@ module.exports = {
|
||||
},
|
||||
sections: {}, // TODO: Fill this out
|
||||
elements: {}, // TODO: Fill this out
|
||||
commands: [], // TODO: Fill this out as needed
|
||||
commands: [{
|
||||
load () {
|
||||
this.api.url('data:,'); // https://github.com/nightwatchjs/nightwatch/issues/1724
|
||||
return this.navigate();
|
||||
},
|
||||
}],
|
||||
};
|
||||
|
||||
@ -2,6 +2,12 @@ module.exports = {
|
||||
url () {
|
||||
return `${this.api.globals.launch_url}/#/login`;
|
||||
},
|
||||
commands: [{
|
||||
load () {
|
||||
this.api.url('data:,'); // https://github.com/nightwatchjs/nightwatch/issues/1724
|
||||
return this.navigate();
|
||||
},
|
||||
}],
|
||||
elements: {
|
||||
username: '#login-username',
|
||||
password: '#login-password',
|
||||
|
||||
@ -29,6 +29,12 @@ module.exports = {
|
||||
url () {
|
||||
return `${this.api.globals.launch_url}/#/notification_templates`;
|
||||
},
|
||||
commands: [{
|
||||
load () {
|
||||
this.api.url('data:,'); // https://github.com/nightwatchjs/nightwatch/issues/1724
|
||||
return this.navigate();
|
||||
},
|
||||
}],
|
||||
sections: {
|
||||
header,
|
||||
navigation,
|
||||
|
||||
@ -26,6 +26,12 @@ module.exports = {
|
||||
url () {
|
||||
return `${this.api.globals.launch_url}/#/organizations`;
|
||||
},
|
||||
commands: [{
|
||||
load () {
|
||||
this.api.url('data:,'); // https://github.com/nightwatchjs/nightwatch/issues/1724
|
||||
return this.navigate();
|
||||
},
|
||||
}],
|
||||
sections: {
|
||||
header,
|
||||
navigation,
|
||||
|
||||
@ -25,6 +25,12 @@ module.exports = {
|
||||
url () {
|
||||
return `${this.api.globals.launch_url}/#/projects`;
|
||||
},
|
||||
commands: [{
|
||||
load () {
|
||||
this.api.url('data:,'); // https://github.com/nightwatchjs/nightwatch/issues/1724
|
||||
return this.navigate();
|
||||
},
|
||||
}],
|
||||
sections: {
|
||||
header,
|
||||
navigation,
|
||||
|
||||
@ -23,6 +23,12 @@ module.exports = {
|
||||
url () {
|
||||
return `${this.api.globals.launch_url}/#/teams`;
|
||||
},
|
||||
commands: [{
|
||||
load () {
|
||||
this.api.url('data:,'); // https://github.com/nightwatchjs/nightwatch/issues/1724
|
||||
return this.navigate();
|
||||
},
|
||||
}],
|
||||
sections: {
|
||||
header,
|
||||
navigation,
|
||||
|
||||
@ -116,6 +116,10 @@ module.exports = {
|
||||
save: 'button[class*="Form-saveButton"]'
|
||||
},
|
||||
commands: [{
|
||||
load () {
|
||||
this.api.url('data:,'); // https://github.com/nightwatchjs/nightwatch/issues/1724
|
||||
return this.navigate();
|
||||
},
|
||||
clickWhenEnabled (selector) {
|
||||
this.api.waitForElementVisible(selector);
|
||||
this.expect.element(selector).enabled;
|
||||
|
||||
@ -23,6 +23,12 @@ module.exports = {
|
||||
url () {
|
||||
return `${this.api.globals.launch_url}/#/users`;
|
||||
},
|
||||
commands: [{
|
||||
load () {
|
||||
this.api.url('data:,'); // https://github.com/nightwatchjs/nightwatch/issues/1724
|
||||
return this.navigate();
|
||||
},
|
||||
}],
|
||||
sections: {
|
||||
header,
|
||||
navigation,
|
||||
|
||||
@ -24,13 +24,6 @@ let users;
|
||||
let inventories;
|
||||
let teams;
|
||||
|
||||
function navigateAndWaitForSpinner (client, url) {
|
||||
client
|
||||
.url(url)
|
||||
.waitForElementVisible('div.spinny')
|
||||
.waitForElementNotVisible('div.spinny');
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
before: (client, done) => {
|
||||
const promises = [
|
||||
@ -68,7 +61,9 @@ module.exports = {
|
||||
});
|
||||
},
|
||||
'verify an auditor\'s credentials inputs are read-only': client => {
|
||||
navigateAndWaitForSpinner(client, `${credentials.url()}/${data.adminAWSCredential.id}/`);
|
||||
const url = `${credentials.url()}/${data.adminAWSCredential.id}/`;
|
||||
|
||||
client.navigateTo(url);
|
||||
|
||||
credentials.section.edit
|
||||
.expect.element('@title').text.contain(data.adminAWSCredential.name);
|
||||
@ -76,7 +71,9 @@ module.exports = {
|
||||
credentials.section.edit.section.details.checkAllFieldsDisabled();
|
||||
},
|
||||
'verify an auditor\'s inventory scripts inputs are read-only': client => {
|
||||
navigateAndWaitForSpinner(client, `${inventoryScripts.url()}/${data.inventoryScript.id}/`);
|
||||
const url = `${inventoryScripts.url()}/${data.inventoryScript.id}/`;
|
||||
|
||||
client.navigateTo(url);
|
||||
|
||||
inventoryScripts.section.edit
|
||||
.expect.element('@title').text.contain(data.inventoryScript.name);
|
||||
@ -92,7 +89,7 @@ module.exports = {
|
||||
//
|
||||
// 'verify an auditor\'s job template inputs are read-only': function (client) {
|
||||
// const url = `${templates.url()}/job_template/${data.jobTemplate.id}/`;
|
||||
// navigateAndWaitForSpinner(client, url);
|
||||
// client.navigateTo(url)''
|
||||
//
|
||||
// templates.section.editJobTemplate
|
||||
// .expect.element('@title').text.contain(data.jobTemplate.name);
|
||||
@ -103,7 +100,9 @@ module.exports = {
|
||||
// templates.expect.element('@save').to.not.be.visible;
|
||||
// },
|
||||
'verify an auditor\'s notification templates inputs are read-only': client => {
|
||||
navigateAndWaitForSpinner(client, `${notificationTemplates.url()}/${data.notificationTemplate.id}/`);
|
||||
const url = `${notificationTemplates.url()}/${data.notificationTemplate.id}/`;
|
||||
|
||||
client.navigateTo(url);
|
||||
|
||||
notificationTemplates.section.edit
|
||||
.expect.element('@title').text.contain(data.notificationTemplate.name);
|
||||
@ -114,7 +113,9 @@ module.exports = {
|
||||
notificationTemplates.expect.element('@save').to.not.be.visible;
|
||||
},
|
||||
'verify an auditor\'s organizations inputs are read-only': client => {
|
||||
navigateAndWaitForSpinner(client, `${organizations.url()}/${data.organization.id}/`);
|
||||
const url = `${organizations.url()}/${data.organization.id}/`;
|
||||
|
||||
client.navigateTo(url);
|
||||
|
||||
organizations.section.edit
|
||||
.expect.element('@title').text.contain(data.organization.name);
|
||||
@ -125,7 +126,9 @@ module.exports = {
|
||||
organizations.expect.element('@save').to.not.be.visible;
|
||||
},
|
||||
'verify an auditor\'s smart inventory inputs are read-only': client => {
|
||||
navigateAndWaitForSpinner(client, `${inventories.url()}/smart/${data.smartInventory.id}/`);
|
||||
const url = `${inventories.url()}/smart/${data.smartInventory.id}/`;
|
||||
|
||||
client.navigateTo(url);
|
||||
|
||||
inventories.section.editSmartInventory
|
||||
.expect.element('@title').text.contain(data.smartInventory.name);
|
||||
@ -136,7 +139,9 @@ module.exports = {
|
||||
inventories.expect.element('@save').to.not.be.visible;
|
||||
},
|
||||
'verify an auditor\'s project inputs are read-only': client => {
|
||||
navigateAndWaitForSpinner(client, `${projects.url()}/${data.project.id}/`);
|
||||
const url = `${projects.url()}/${data.project.id}/`;
|
||||
|
||||
client.navigateTo(url);
|
||||
|
||||
projects.section.edit
|
||||
.expect.element('@title').text.contain(data.project.name);
|
||||
@ -147,7 +152,9 @@ module.exports = {
|
||||
projects.expect.element('@save').to.not.be.visible;
|
||||
},
|
||||
'verify an auditor\'s standard inventory inputs are read-only': client => {
|
||||
navigateAndWaitForSpinner(client, `${inventories.url()}/inventory/${data.inventory.id}/`);
|
||||
const url = `${inventories.url()}/inventory/${data.inventory.id}/`;
|
||||
|
||||
client.navigateTo(url);
|
||||
|
||||
inventories.section.editStandardInventory
|
||||
.expect.element('@title').text.contain(data.inventory.name);
|
||||
@ -159,7 +166,9 @@ module.exports = {
|
||||
inventories.expect.element('@save').to.not.be.visible;
|
||||
},
|
||||
'verify an auditor\'s teams inputs are read-only': client => {
|
||||
navigateAndWaitForSpinner(client, `${teams.url()}/${data.team.id}/`);
|
||||
const url = `${teams.url()}/${data.team.id}/`;
|
||||
|
||||
client.navigateTo(url);
|
||||
|
||||
teams.section.edit
|
||||
.expect.element('@title').text.contain(data.team.name);
|
||||
@ -170,7 +179,9 @@ module.exports = {
|
||||
teams.expect.element('@save').to.not.be.visible;
|
||||
},
|
||||
'verify an auditor\'s user inputs are read-only': client => {
|
||||
navigateAndWaitForSpinner(client, `${users.url()}/${data.user.id}/`);
|
||||
const url = `${users.url()}/${data.user.id}/`;
|
||||
|
||||
client.navigateTo(url);
|
||||
|
||||
users.section.edit
|
||||
.expect.element('@title').text.contain(data.user.username);
|
||||
|
||||
@ -5,10 +5,7 @@ module.exports = {
|
||||
client.login();
|
||||
client.waitForAngular();
|
||||
|
||||
credentialTypes
|
||||
.navigate(`${credentialTypes.url()}/add/`)
|
||||
.waitForElementVisible('div.spinny')
|
||||
.waitForElementNotVisible('div.spinny');
|
||||
credentialTypes.navigateTo(`${credentialTypes.url()}/add/`);
|
||||
|
||||
credentialTypes.section.add
|
||||
.waitForElementVisible('@title', done);
|
||||
|
||||
@ -16,7 +16,7 @@ module.exports = {
|
||||
client.login();
|
||||
client.waitForAngular();
|
||||
|
||||
credentials.navigate();
|
||||
credentials.load();
|
||||
credentials.waitForElementVisible('div.spinny');
|
||||
credentials.waitForElementNotVisible('div.spinny');
|
||||
|
||||
|
||||
@ -6,7 +6,7 @@ module.exports = {
|
||||
client.waitForAngular();
|
||||
|
||||
credentials
|
||||
.navigate()
|
||||
.load()
|
||||
.waitForElementVisible('div.spinny')
|
||||
.waitForElementNotVisible('div.spinny', done);
|
||||
},
|
||||
|
||||
@ -10,7 +10,7 @@ module.exports = {
|
||||
client.waitForAngular();
|
||||
|
||||
credentials
|
||||
.navigate()
|
||||
.load()
|
||||
.waitForElementVisible('div.spinny')
|
||||
.waitForElementNotVisible('div.spinny');
|
||||
|
||||
|
||||
@ -16,7 +16,7 @@ module.exports = {
|
||||
client.login();
|
||||
client.waitForAngular();
|
||||
|
||||
inventories.navigate();
|
||||
inventories.load();
|
||||
inventories.waitForElementVisible('div.spinny');
|
||||
inventories.waitForElementNotVisible('div.spinny');
|
||||
|
||||
|
||||
@ -16,7 +16,7 @@ module.exports = {
|
||||
client.login();
|
||||
client.waitForAngular();
|
||||
|
||||
inventoryScripts.navigate();
|
||||
inventoryScripts.load();
|
||||
inventoryScripts.waitForElementVisible('div.spinny');
|
||||
inventoryScripts.waitForElementNotVisible('div.spinny');
|
||||
|
||||
|
||||
@ -16,7 +16,7 @@ module.exports = {
|
||||
client.login();
|
||||
client.waitForAngular();
|
||||
|
||||
notifications.navigate();
|
||||
notifications.load();
|
||||
notifications.waitForElementVisible('div.spinny');
|
||||
notifications.waitForElementNotVisible('div.spinny');
|
||||
|
||||
|
||||
@ -16,7 +16,7 @@ module.exports = {
|
||||
client.login();
|
||||
client.waitForAngular();
|
||||
|
||||
projects.navigate();
|
||||
projects.load();
|
||||
projects.waitForElementVisible('div.spinny');
|
||||
projects.waitForElementNotVisible('div.spinny');
|
||||
|
||||
|
||||
@ -65,7 +65,7 @@ module.exports = {
|
||||
client.login();
|
||||
client.waitForAngular();
|
||||
|
||||
templates.navigate();
|
||||
templates.load();
|
||||
templates.waitForElementVisible('div.spinny');
|
||||
templates.waitForElementNotVisible('div.spinny');
|
||||
|
||||
@ -120,7 +120,7 @@ module.exports = {
|
||||
client.login();
|
||||
client.waitForAngular();
|
||||
|
||||
templates.navigate();
|
||||
templates.load();
|
||||
templates.waitForElementVisible('div.spinny');
|
||||
templates.waitForElementNotVisible('div.spinny');
|
||||
|
||||
@ -170,7 +170,7 @@ module.exports = {
|
||||
client.login(data.user.username);
|
||||
client.waitForAngular();
|
||||
|
||||
templates.navigate();
|
||||
templates.load();
|
||||
templates.waitForElementVisible('div.spinny');
|
||||
templates.waitForElementNotVisible('div.spinny');
|
||||
|
||||
|
||||
@ -30,7 +30,7 @@ module.exports = {
|
||||
client.login();
|
||||
client.waitForAngular();
|
||||
|
||||
templates.navigate();
|
||||
templates.load();
|
||||
templates.waitForElementVisible('div.spinny');
|
||||
templates.waitForElementNotVisible('div.spinny');
|
||||
|
||||
@ -70,7 +70,7 @@ module.exports = {
|
||||
client.login();
|
||||
client.waitForAngular();
|
||||
|
||||
templates.navigate();
|
||||
templates.load();
|
||||
templates.waitForElementVisible('div.spinny');
|
||||
templates.waitForElementNotVisible('div.spinny');
|
||||
|
||||
|
||||
@ -85,7 +85,7 @@ module.exports = {
|
||||
const multiCredentialOpen = 'multi-credential button i[class*="search"]';
|
||||
const multiCredentialExit = 'multi-credential-modal button[class*="exit"]';
|
||||
|
||||
client.url(urls.jobTemplate);
|
||||
client.navigateTo(urls.jobTemplate, false);
|
||||
|
||||
client.expect.element('#job_template_form').visible;
|
||||
client.expect.element('#xss').not.present;
|
||||
@ -371,7 +371,7 @@ module.exports = {
|
||||
client.expect.element('#prompt-header').not.visible;
|
||||
},
|
||||
'check smart inventory form for unsanitized content': client => {
|
||||
client.url(urls.smartInventory);
|
||||
client.navigateTo(urls.smartInventory, false);
|
||||
|
||||
client.expect.element('#smartinventory_form').visible;
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user