"use strict";

var wd = require("yiewd");

var desiredCaps = {
  device: 'Android'
  , "app-package": "com.android.contacts"
  , "app-activity": "activities.PeopleActivity"
};

var bc = function(t) { return "//button[contains(@text, '" + t + "')]"; };
var ec = function(t) { return "//editText[contains(@text, '" + t + "')]"; };
var tc = function(t) { return "//text[contains(@text, '" + t + "')]"; };

wd.remote('localhost', 4723).run(function*() {
  try {
    yield this.init(desiredCaps);
    yield this.setImplicitWaitTimeout(5000);
    yield this.elementByXPath(bc('Create')).click();
    yield this.elementByXPath(ec('Name')).sendKeys("John Smith");
    yield this.elementByXPath(ec('Phone')).sendKeys("(555) 555-5555");
    yield this.elementByXPath(ec('Email')).sendKeys("john.smith@google.io");
    yield this.elementByXPath(tc('Done')).click();
    yield this.elementByName("Add to favorites").click();
    yield this.elementByName("Edit").click();
    yield this.elementByXPath(tc('Mobile')).click();
    yield this.elementByXPath("//checkedTextView[@text='Home']").click();
    yield this.elementByXPath(tc('Done')).click();
    yield this.elementByName("More options").click();
    yield this.elementByXPath(tc('Delete')).click();
    yield this.elementByXPath(bc('OK')).click();
  } catch(e) {
    console.log(e);
  }
  yield this.quit();
});
