mirror of
https://github.com/appium/appium.git
synced 2026-02-09 11:18:51 -06:00
fixed #2400 - autoAcceptAlerts. Added tests
This commit is contained in:
@@ -377,8 +377,8 @@ IOS.prototype.setInitialOrientation = function (cb) {
|
||||
|
||||
IOS.prototype.setBootstrapConfig = function (cb) {
|
||||
logger.info("Setting bootstrap config keys/values");
|
||||
var pre = "setBootstrapConfig: ";
|
||||
var cmd = pre + "autoAcceptAlerts=" + JSON.stringify(!!this.args.autoAcceptAlerts);
|
||||
var autoAcceptAlerts = !(!this.args.autoAcceptAlerts || this.args.autoAcceptAlerts === 'false');
|
||||
var cmd = "setBootstrapConfig: autoAcceptAlerts=" + autoAcceptAlerts;
|
||||
this.proxy(cmd, function (err) {
|
||||
cb(err); // discard res
|
||||
});
|
||||
|
||||
95
test/functional/ios/testapp/autoAcceptAlerts-specs.js
Normal file
95
test/functional/ios/testapp/autoAcceptAlerts-specs.js
Normal file
@@ -0,0 +1,95 @@
|
||||
"use strict";
|
||||
|
||||
var setup = require("../../common/setup-base"),
|
||||
desired = require('./desired'),
|
||||
_ = require('underscore');
|
||||
|
||||
describe('autoAcceptAlerts cap = true', function () {
|
||||
var self = this;
|
||||
var driver;
|
||||
|
||||
var caps = _.clone(desired);
|
||||
caps.autoAcceptAlerts = true;
|
||||
setup(self, caps).then(function(d) { driver = d; });
|
||||
|
||||
it('auto-accepts alerts', function(done){
|
||||
driver.elementsByClassName('UIAButton')
|
||||
.then(function (buttons) { return buttons[3].click(); })
|
||||
.sleep(2000)
|
||||
.alertText()
|
||||
.should.be.rejectedWith(/status: 27/)
|
||||
.nodeify(done);
|
||||
});
|
||||
});
|
||||
|
||||
describe('autoAcceptAlerts cap = false', function () {
|
||||
var self = this;
|
||||
var driver;
|
||||
|
||||
var caps = _.clone(desired);
|
||||
caps.autoAcceptAlerts = false;
|
||||
setup(self, caps).then(function(d) { driver = d; });
|
||||
|
||||
it('does not auto-accept alerts', function(done){
|
||||
driver.elementsByClassName('UIAButton')
|
||||
.then(function (buttons) { return buttons[3].click(); })
|
||||
.sleep(2000)
|
||||
.alertText()
|
||||
.should.eventually.exist
|
||||
.nodeify(done);
|
||||
});
|
||||
});
|
||||
|
||||
describe('autoAcceptAlerts cap = "true"', function () {
|
||||
var self = this;
|
||||
var driver;
|
||||
|
||||
var caps = _.clone(desired);
|
||||
caps.autoAcceptAlerts = 'true';
|
||||
setup(self, caps).then(function(d) { driver = d; });
|
||||
|
||||
it('auto-accepts alerts', function(done){
|
||||
driver.elementsByClassName('UIAButton')
|
||||
.then(function (buttons) { return buttons[3].click(); })
|
||||
.sleep(2000)
|
||||
.alertText()
|
||||
.should.be.rejectedWith(/status: 27/)
|
||||
.nodeify(done);
|
||||
});
|
||||
});
|
||||
|
||||
describe('autoAcceptAlerts cap = "false"', function () {
|
||||
var self = this;
|
||||
var driver;
|
||||
|
||||
var caps = _.clone(desired);
|
||||
caps.autoAcceptAlerts = 'false';
|
||||
setup(self, caps).then(function(d) { driver = d; });
|
||||
|
||||
it('does not auto-accept alerts', function(done){
|
||||
driver.elementsByClassName('UIAButton')
|
||||
.then(function (buttons) { return buttons[3].click(); })
|
||||
.sleep(2000)
|
||||
.alertText()
|
||||
.should.eventually.exist
|
||||
.nodeify(done);
|
||||
});
|
||||
});
|
||||
|
||||
describe('autoAcceptAlerts cap = ""', function () {
|
||||
var self = this;
|
||||
var driver;
|
||||
|
||||
var caps = _.clone(desired);
|
||||
caps.autoAcceptAlerts = "";
|
||||
setup(self, caps).then(function(d) { driver = d; });
|
||||
|
||||
it('does not auto-accept alerts', function(done){
|
||||
driver.elementsByClassName('UIAButton')
|
||||
.then(function (buttons) { return buttons[3].click(); })
|
||||
.sleep(2000)
|
||||
.alertText()
|
||||
.should.eventually.exist
|
||||
.nodeify(done);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user