iegik
8/25/2015 - 4:51 PM

Protractor e2e tests

Protractor e2e tests

'use strict';

var SomePageItem = function (item) {
    this.button = item.$('.btn');
    this.pane = item.$('.pane');
};

module.exports = SomePageItem;
'use strict';

var SomePageItem = require('./items/SomePageItem');

function SomePage() {
    browser.get('items');
}

SomePage.prototype = {
    get items() {
        return $$('.item').then(function (items) {
            return items.map(function (item) {
                return new SomePageItem(item);
            });
        });
    },
    header: $('header'),
    description: $('.description')
};

module.exports = SomePage;
'use strict';

var SomePage = require('../pages/SomePage');

describe('some', function () {
  it('feature', function () {
      var somePage = new SomePage();
      expect(somePage.items.then(function (items) {
          items[0].button.click();
          return items[0].pane.isDisplayed();
      })).toBe(true);
  });
});