-
-
Notifications
You must be signed in to change notification settings - Fork 6k
/
selendroid-simple.js
63 lines (55 loc) · 1.71 KB
/
selendroid-simple.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
"use strict";
require("./helpers/setup");
var wd = require("wd"),
_ = require('underscore'),
serverConfigs = require('./helpers/appium-servers');
describe("selendroid simple", function () {
this.timeout(300000);
var driver;
var allPassed = true;
before(function (done) {
var serverConfig = process.env.SAUCE ?
serverConfigs.sauce : serverConfigs.local;
driver = wd.promiseChainRemote(serverConfig);
require("./helpers/logging").configure(driver);
var desired = _.clone(require("./helpers/caps").selendroid16);
desired.app = require("./helpers/apps").androidApiDemos;
if (process.env.SAUCE) {
desired.name = 'selendroid - simple';
desired.tags = ['sample'];
}
driver
.init(desired)
.setImplicitWaitTimeout(3000)
.nodeify(done);
});
after(function (done) {
driver
.quit()
.finally(function () {
if (process.env.SAUCE) {
return driver.sauceJobStatus(allPassed);
}
})
.nodeify(done);
});
afterEach(function () {
allPassed = allPassed && this.currentTest.state === 'passed';
});
it("should find elements", function (done) {
return driver
.waitForElementByName('Animation')
.text().should.become('Animation')
.elementByClassName('android.widget.TextView')
.text().should.become('Accessibility')
.elementByName('App').click()
.waitForElementByXPath('//TextView[@name=\'Action Bar\']')
.elementsByClassName('android.widget.TextView')
.should.eventually.have.length.above(20)
.back()
.sleep(3000)
.waitForElementByName('Animation', 5000, 500)
.text().should.become('Animation')
.nodeify(done);
});
});