mirror of
https://github.com/appium/appium.git
synced 2026-01-23 19:00:31 -06:00
83 lines
1.9 KiB
JavaScript
83 lines
1.9 KiB
JavaScript
/*global it:true, describe:true, before:true, after:true */
|
|
|
|
"use strict";
|
|
|
|
/*
|
|
1/ Set your sauce credentials (SAUCE_USERNAME and SAUCE_ACCESS_KEY environment variables)
|
|
2/ npm install mocha -g;
|
|
3/ Run:
|
|
mocha -R spec sauce-android-mocha-wd-notes.js
|
|
*/
|
|
|
|
var wd = require("wd"),
|
|
Q = wd.Q;
|
|
|
|
require('colors');
|
|
var chai = require("chai"),
|
|
chaiAsPromised = require("chai-as-promised");
|
|
chai.use(chaiAsPromised);
|
|
chai.should();
|
|
chaiAsPromised.transferPromiseness = wd.transferPromiseness;
|
|
|
|
var host = "ondemand.saucelabs.com",
|
|
port = 80,
|
|
username = process.env.SAUCE_USERNAME,
|
|
accessKey = process.env.SAUCE_ACCESS_KEY;
|
|
|
|
// Big timeout is needed
|
|
var timeout = process.env.TIMEOUT || 300000;
|
|
|
|
var desired = {
|
|
device: 'Android',
|
|
platform: 'Linux',
|
|
version: '4.2',
|
|
app: 'http://appium.s3.amazonaws.com/NotesList.apk',
|
|
name: 'Sauce Android test',
|
|
'app-activity': '.NotesList',
|
|
'app-package': 'com.example.android.notepad'
|
|
};
|
|
|
|
describe('notes app', function() {
|
|
this.timeout(timeout);
|
|
var browser = null;
|
|
|
|
before(function(done) {
|
|
browser = wd.promiseChainRemote(host, port, username, accessKey);
|
|
// See whats going on
|
|
browser.on('status', function(info) {
|
|
console.log(info.cyan);
|
|
});
|
|
browser.on('command', function(meth, path, data) {
|
|
console.log(' > ' + meth.yellow, path.grey, data || '');
|
|
});
|
|
|
|
browser
|
|
.init(desired)
|
|
.nodeify(done);
|
|
});
|
|
|
|
after(function(done) {
|
|
browser
|
|
.quit()
|
|
.nodeify(done);
|
|
});
|
|
|
|
it('should save a note', function(done) {
|
|
browser
|
|
.elementByName("New note")
|
|
.click()
|
|
.elementByTagName("textfield")
|
|
.sendKeys("This is a new note!")
|
|
.elementByName("Save")
|
|
.click()
|
|
.elementsByTagName("text")
|
|
.then(function(els) {
|
|
return Q.all([
|
|
els[2].text().should.become("This is a new note!"),
|
|
els[2].click()
|
|
])
|
|
.nodeify(done);
|
|
});
|
|
});
|
|
});
|