mirror of
https://github.com/appium/appium.git
synced 2026-02-09 11:18:51 -06:00
19
bin/test.sh
19
bin/test.sh
@@ -9,6 +9,7 @@ android_only=false
|
||||
android_arm_only=false
|
||||
selendroid_only=false
|
||||
all_tests=true
|
||||
xcode_switch=true
|
||||
xcode_path=""
|
||||
if command -v xcode-select 2>/dev/null; then
|
||||
xcode_path="$(xcode-select -print-path | sed s/\\/Contents\\/Developer//g)"
|
||||
@@ -37,6 +38,8 @@ for arg in "$@"; do
|
||||
elif [ "$arg" = "--ios71" ]; then
|
||||
ios71_only=true
|
||||
all_tests=false
|
||||
elif [ "$arg" = "--no-xcode-switch" ]; then
|
||||
xcode_switch=false
|
||||
elif [ "$arg" =~ " " ]; then
|
||||
mocha_args="$mocha_args \"$arg\""
|
||||
else
|
||||
@@ -49,12 +52,16 @@ appium_mocha="./node_modules/.bin/mocha --recursive $mocha_args"
|
||||
run_ios_tests() {
|
||||
echo "RUNNING IOS $1 TESTS"
|
||||
echo "---------------------"
|
||||
if test -d /Applications/Xcode-$1.app; then
|
||||
echo "Found Xcode for iOS $1, switching to it"
|
||||
sudo xcode-select -switch /Applications/Xcode-$1.app
|
||||
did_switch_xcode=true
|
||||
else
|
||||
echo "Did not find /Applications/Xcode-$1.app, using default"
|
||||
|
||||
|
||||
if $xcode_switch; then
|
||||
if test -d /Applications/Xcode-$1.app; then
|
||||
echo "Found Xcode for iOS $1, switching to it"
|
||||
sudo xcode-select -switch /Applications/Xcode-$1.app
|
||||
did_switch_xcode=true
|
||||
else
|
||||
echo "Did not find /Applications/Xcode-$1.app, using default"
|
||||
fi
|
||||
fi
|
||||
echo
|
||||
DEVICE=$2 time $appium_mocha -g $3 -i \
|
||||
|
||||
@@ -5,7 +5,7 @@ var chai = require('chai')
|
||||
, serverHub = serverUrl + '/wd/hub/session'
|
||||
, request = require('request');
|
||||
|
||||
describe("common - jsonwp @skip-ci", function () {
|
||||
describe("common - jsonwp @skip-ci @skip-ios6", function () {
|
||||
// TODO: This cannot be tested using Sauce. It need to be run within a Travis
|
||||
// instance.
|
||||
describe('to a non-existent url', function () {
|
||||
|
||||
@@ -46,7 +46,7 @@ var waitForLaunch = function (app, extraArgs, done) {
|
||||
return proc;
|
||||
};
|
||||
|
||||
describe("common - prelaunch @skip-ci", function () {
|
||||
describe("common - prelaunch @skip-ci @skip-ios6", function () {
|
||||
// TODO: test helpers need to be modified to cope prelaunch on sauce.
|
||||
// leaving it out for now.
|
||||
this.timeout(env.MOCHA_INIT_TIMEOUT);
|
||||
|
||||
@@ -37,7 +37,7 @@ var activateWebView = function (driver) {
|
||||
});
|
||||
};
|
||||
|
||||
describe("gappium", function () {
|
||||
describe("gappium @skip-ios6", function () {
|
||||
describe('HelloGappium', function () {
|
||||
var driver;
|
||||
setup(this, desired).then(function (d) { driver = d; });
|
||||
|
||||
@@ -10,8 +10,8 @@ var desired = {
|
||||
app: 'settings'
|
||||
};
|
||||
|
||||
describe("prefs @skip-ios7", function () {
|
||||
|
||||
describe("prefs @skip-ios6", function () {
|
||||
// TODO: cannot install settings app on ios6
|
||||
describe('settings app', function () {
|
||||
var driver;
|
||||
setup(this, desired).then(function (d) { driver = d; });
|
||||
|
||||
@@ -10,7 +10,9 @@ var desired = {
|
||||
app: 'settings'
|
||||
};
|
||||
|
||||
describe("prefs @skip-ios7", function () {
|
||||
describe("prefs @skip-ios7 @skip-ios6", function () {
|
||||
// TODO: check why it fails on ios7
|
||||
// TODO: cannot install settings app on ios6
|
||||
|
||||
var checkLocServ = function (driver, expected, cb) {
|
||||
driver
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
"use strict";
|
||||
|
||||
var setup = require("../../common/setup-base")
|
||||
var env = require("../../../helpers/env")
|
||||
, setup = require("../../common/setup-base")
|
||||
, chai = require('chai')
|
||||
, _ = require('underscore');
|
||||
|
||||
@@ -10,52 +11,57 @@ var desired = {
|
||||
browserName: 'safari'
|
||||
};
|
||||
|
||||
describe('safari prefs @skip-ios7', function () {
|
||||
var checkSafariSetting = require('./check-safari-settings').ios6;
|
||||
if (env.IOS6) {
|
||||
describe('safari prefs @skip-ios6', function () {
|
||||
// TODO: safari does not install on ios6
|
||||
var checkSafariSetting = require('./check-safari-settings').ios6;
|
||||
|
||||
describe('using safariAllowPopups', function () {
|
||||
var driver;
|
||||
setup(this, _.defaults({safariAllowPopups: true}, desired))
|
||||
.then(function (d) { driver = d; });
|
||||
describe('using safariAllowPopups', function () {
|
||||
var driver;
|
||||
setup(this, _.defaults({safariAllowPopups: true}, desired))
|
||||
.then(function (d) { driver = d; });
|
||||
|
||||
it('should respond to cap when true', function (done) {
|
||||
checkSafariSetting(driver, 'popups', 0, done);
|
||||
it('should respond to cap when true', function (done) {
|
||||
checkSafariSetting(driver, 'popups', 0, done);
|
||||
});
|
||||
});
|
||||
|
||||
describe('using safariAllowPopups', function () {
|
||||
var driver;
|
||||
setup(this, _.defaults({safariAllowPopups: false}, desired))
|
||||
.then(function (d) { driver = d; });
|
||||
|
||||
it('should respond to cap when false', function (done) {
|
||||
checkSafariSetting(driver, 'popups', 1, done);
|
||||
});
|
||||
});
|
||||
});
|
||||
} else if (env.IOS7) {
|
||||
describe('safari ios7 prefs @skip-ci', function () {
|
||||
// TODO modify the test to enable ci, right know it is checking a local file,
|
||||
// not gonna work with sauce
|
||||
var checkSafariSetting = require('./check-safari-settings').ios7;
|
||||
|
||||
describe('using safariAllowPopups', function () {
|
||||
var driver;
|
||||
setup(this, _.defaults({safariAllowPopups: false}, desired))
|
||||
.then(function (d) { driver = d; });
|
||||
describe('using safariAllowPopups', function () {
|
||||
var driver;
|
||||
setup(this, _.defaults({safariAllowPopups: true}, desired))
|
||||
.then(function (d) { driver = d; });
|
||||
|
||||
it('should respond to cap when false', function (done) {
|
||||
checkSafariSetting(driver, 'popups', 1, done);
|
||||
it('should respond to cap when true', function (done) {
|
||||
checkSafariSetting('WebKitJavaScriptCanOpenWindowsAutomatically', true, done);
|
||||
});
|
||||
});
|
||||
|
||||
describe('using safariAllowPopups', function () {
|
||||
var driver;
|
||||
setup(this, _.defaults({safariAllowPopups: false}, desired))
|
||||
.then(function (d) { driver = d; });
|
||||
|
||||
it('should respond to cap when false', function (done) {
|
||||
checkSafariSetting('WebKitJavaScriptCanOpenWindowsAutomatically', false, done);
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
describe('safari ios7 prefs @skip-ios6 @skip-ci', function () {
|
||||
// TODO modify the test to enable ci, right know it is checking a local file,
|
||||
// not gonna work with sauce
|
||||
var checkSafariSetting = require('./check-safari-settings').ios7;
|
||||
|
||||
describe('using safariAllowPopups', function () {
|
||||
var driver;
|
||||
setup(this, _.defaults({safariAllowPopups: true}, desired))
|
||||
.then(function (d) { driver = d; });
|
||||
|
||||
it('should respond to cap when true', function (done) {
|
||||
checkSafariSetting('WebKitJavaScriptCanOpenWindowsAutomatically', true, done);
|
||||
});
|
||||
});
|
||||
|
||||
describe('using safariAllowPopups', function () {
|
||||
var driver;
|
||||
setup(this, _.defaults({safariAllowPopups: false}, desired))
|
||||
.then(function (d) { driver = d; });
|
||||
|
||||
it('should respond to cap when false', function (done) {
|
||||
checkSafariSetting('WebKitJavaScriptCanOpenWindowsAutomatically', false, done);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
"use strict";
|
||||
|
||||
var setup = require("../../common/setup-base")
|
||||
var env = require("../../../helpers/env")
|
||||
, setup = require("../../common/setup-base")
|
||||
, chai = require('chai')
|
||||
, _ = require('underscore');
|
||||
|
||||
@@ -10,52 +11,55 @@ var desired = {
|
||||
browserName: 'safari'
|
||||
};
|
||||
|
||||
describe('safari prefs @skip-ios7', function () {
|
||||
var checkSafariSetting = require('./check-safari-settings').ios6;
|
||||
if (env.IOS6) {
|
||||
describe('safari prefs @skip-ios6', function () {
|
||||
// TODO: safari does not install on ios6
|
||||
var checkSafariSetting = require('./check-safari-settings').ios6;
|
||||
|
||||
describe('using safariIgnoreFraudWarning', function () {
|
||||
var driver;
|
||||
setup(this, _.defaults({safariIgnoreFraudWarning: true}, desired))
|
||||
.then(function (d) { driver = d; });
|
||||
describe('using safariIgnoreFraudWarning', function () {
|
||||
var driver;
|
||||
setup(this, _.defaults({safariIgnoreFraudWarning: true}, desired))
|
||||
.then(function (d) { driver = d; });
|
||||
|
||||
it('should respond to cap when true', function (done) {
|
||||
checkSafariSetting(driver, 'fraud', 0, done);
|
||||
it('should respond to cap when true', function (done) {
|
||||
checkSafariSetting(driver, 'fraud', 0, done);
|
||||
});
|
||||
});
|
||||
|
||||
describe('using safariIgnoreFraudWarning', function () {
|
||||
var driver;
|
||||
setup(this, _.defaults({safariIgnoreFraudWarning: false}, desired))
|
||||
.then(function (d) { driver = d; });
|
||||
|
||||
it('should respond to cap when false', function (done) {
|
||||
checkSafariSetting(driver, 'fraud', 1, done);
|
||||
});
|
||||
});
|
||||
});
|
||||
} else if (env.IOS7) {
|
||||
describe('safari ios7 prefs @skip-ci', function () {
|
||||
// TODO modify the test to enable ci, right know it is checking a local file,
|
||||
// not gonna work with sauce
|
||||
var checkSafariSetting = require('./check-safari-settings').ios7;
|
||||
|
||||
describe('using safariIgnoreFraudWarning', function () {
|
||||
var driver;
|
||||
setup(this, _.defaults({safariIgnoreFraudWarning: false}, desired))
|
||||
.then(function (d) { driver = d; });
|
||||
describe('using safariIgnoreFraudWarning', function () {
|
||||
var driver;
|
||||
setup(this, _.defaults({safariIgnoreFraudWarning: true}, desired))
|
||||
.then(function (d) { driver = d; });
|
||||
|
||||
it('should respond to cap when false', function (done) {
|
||||
checkSafariSetting(driver, 'fraud', 1, done);
|
||||
it('should respond to cap when true', function (done) {
|
||||
checkSafariSetting('WarnAboutFraudulentWebsites', false, done);
|
||||
});
|
||||
});
|
||||
|
||||
describe('using safariIgnoreFraudWarning', function () {
|
||||
var driver;
|
||||
setup(this, _.defaults({safariIgnoreFraudWarning: false}, desired))
|
||||
.then(function (d) { driver = d; });
|
||||
|
||||
it('should respond to cap when false', function (done) {
|
||||
checkSafariSetting('WarnAboutFraudulentWebsites', true, done);
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('safari ios7 prefs @skip-ios6 @skip-ci', function () {
|
||||
// TODO modify the test to enable ci, right know it is checking a local file,
|
||||
// not gonna work with sauce
|
||||
var checkSafariSetting = require('./check-safari-settings').ios7;
|
||||
|
||||
describe('using safariIgnoreFraudWarning', function () {
|
||||
var driver;
|
||||
setup(this, _.defaults({safariIgnoreFraudWarning: true}, desired))
|
||||
.then(function (d) { driver = d; });
|
||||
|
||||
it('should respond to cap when true', function (done) {
|
||||
checkSafariSetting('WarnAboutFraudulentWebsites', false, done);
|
||||
});
|
||||
});
|
||||
|
||||
describe('using safariIgnoreFraudWarning', function () {
|
||||
var driver;
|
||||
setup(this, _.defaults({safariIgnoreFraudWarning: false}, desired))
|
||||
.then(function (d) { driver = d; });
|
||||
|
||||
it('should respond to cap when false', function (done) {
|
||||
checkSafariSetting('WarnAboutFraudulentWebsites', true, done);
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
var setup = require("../../common/setup-base");
|
||||
|
||||
describe('safari - screenshots', function () {
|
||||
describe('safari - screenshots @skip-ios6', function () {
|
||||
var driver;
|
||||
setup(this, {browserName: 'safari'}).then(function (d) { driver = d; });
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"use strict";
|
||||
var desired = require('./desired');
|
||||
|
||||
describe("safari - webview", function () {
|
||||
describe("safari - webview @skip-ios6", function () {
|
||||
require('../../../common/webview/alerts-base')(desired);
|
||||
});
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"use strict";
|
||||
var desired = require('./desired');
|
||||
|
||||
describe("safari - webview", function () {
|
||||
describe("safari - webview @skip-ios6", function () {
|
||||
require('../../../common/webview/basics-base')(desired);
|
||||
});
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"use strict";
|
||||
var desired = require('./desired');
|
||||
|
||||
describe("safari - webview", function () {
|
||||
describe("safari - webview @skip-ios6", function () {
|
||||
require('../../../common/webview/cookies-base')(desired);
|
||||
});
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"use strict";
|
||||
var desired = require('./desired');
|
||||
|
||||
describe("safari - webview", function () {
|
||||
describe("safari - webview @skip-ios6", function () {
|
||||
require('../../../common/webview/execute-async-base')(desired);
|
||||
});
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"use strict";
|
||||
var desired = require('./desired');
|
||||
|
||||
describe("safari - webview", function () {
|
||||
describe("safari - webview @skip-ios6", function () {
|
||||
require('../../../common/webview/execute-base')(desired);
|
||||
});
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"use strict";
|
||||
var desired = require('./desired');
|
||||
|
||||
describe("safari - webview", function () {
|
||||
describe("safari - webview @skip-ios6", function () {
|
||||
require('../../../common/webview/frames-base')(desired);
|
||||
});
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"use strict";
|
||||
var desired = require('./desired');
|
||||
|
||||
describe("safari - webview", function () {
|
||||
describe("safari - webview @skip-ios6", function () {
|
||||
require('../../../common/webview/iframes-base')(desired);
|
||||
});
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"use strict";
|
||||
var desired = require('./desired');
|
||||
|
||||
describe("safari - webview", function () {
|
||||
describe("safari - webview @skip-ios6", function () {
|
||||
require('../../../common/webview/implicit-wait-base')(desired);
|
||||
});
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"use strict";
|
||||
var desired = require('./desired');
|
||||
|
||||
describe("safari - webview", function () {
|
||||
describe("safari - webview @skip-ios6", function () {
|
||||
require('../../../common/webview/window-title-base')(desired);
|
||||
});
|
||||
|
||||
@@ -5,7 +5,7 @@ var env = require('../../../helpers/env')
|
||||
, loadWebView = webviewHelper.loadWebView
|
||||
, spinTitle = webviewHelper.spinTitle;
|
||||
|
||||
describe("safari - windows-frame", function () {
|
||||
describe("safari - windows-frame @skip-ios6", function () {
|
||||
// TODO: enable safari tests on ci
|
||||
describe('windows and frames (' + env.DEVICE + ')', function () {
|
||||
var driver;
|
||||
|
||||
@@ -195,7 +195,7 @@ describe('testapp - basic', function () {
|
||||
}).nodeify(done);
|
||||
});
|
||||
|
||||
it('should be able to get syslog logs', function (done) {
|
||||
it('should be able to get syslog logs @skip-ios6', function (done) {
|
||||
driver
|
||||
.setImplicitWaitTimeout(4000)
|
||||
.elementByName('SumLabelz')
|
||||
|
||||
@@ -35,7 +35,7 @@ describe('testapp - location - 1', function () {
|
||||
});
|
||||
});
|
||||
|
||||
describe('testapp - location - 2', function () {
|
||||
describe('testapp - location - 2 @skip-ios6', function () {
|
||||
var driver;
|
||||
var newDesired = _.clone(desired);
|
||||
_.extend(newDesired, {
|
||||
|
||||
@@ -98,7 +98,7 @@ describe('webview - basics', function () {
|
||||
.nodeify(done);
|
||||
});
|
||||
|
||||
it('switching back and forth between native and webview contexts should work', function (done) {
|
||||
it('switching back and forth between native and webview contexts should work @skip-ios6', function (done) {
|
||||
driver
|
||||
.contexts()
|
||||
.context("WEBVIEW_1")
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
var getAppPath = require('../../../helpers/app').getAppPath;
|
||||
var env = require('../../../helpers/env')
|
||||
, getAppPath = require('../../../helpers/app').getAppPath;
|
||||
|
||||
module.exports = {
|
||||
app: getAppPath('WebViewApp')
|
||||
app: env.IOS6 ? "assets/WebViewApp6.1.app.zip" : getAppPath('WebViewApp')
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user