2017-11-27 13:48:32 -05:00
|
|
|
import { AppPage } from './app.po';
|
|
|
|
import { browser, element, by } from 'protractor';
|
|
|
|
|
2017-12-06 21:12:19 -05:00
|
|
|
|
2017-11-27 13:48:32 -05:00
|
|
|
describe('sw-example App', () => {
|
|
|
|
let page: AppPage;
|
|
|
|
|
|
|
|
beforeEach(() => {
|
|
|
|
page = new AppPage();
|
|
|
|
});
|
|
|
|
|
|
|
|
it('should display welcome message', () => {
|
|
|
|
page.navigateTo();
|
|
|
|
expect(page.getParagraphText()).toEqual('Welcome to Service Workers!');
|
|
|
|
});
|
|
|
|
|
|
|
|
it('should display the Angular logo', () => {
|
2017-12-06 21:12:19 -05:00
|
|
|
let logo = element(by.css('img'));
|
2017-11-27 13:48:32 -05:00
|
|
|
page.navigateTo();
|
|
|
|
expect(logo.isPresent()).toBe(true);
|
|
|
|
});
|
|
|
|
|
2017-12-06 21:12:19 -05:00
|
|
|
it('should show a header for the list of links', () => {
|
2017-11-27 13:48:32 -05:00
|
|
|
const listHeader = element(by.css('app-root > h2'));
|
|
|
|
expect(listHeader.getText()).toEqual('Here are some links to help you start:');
|
|
|
|
});
|
|
|
|
|
|
|
|
it('should show a list of links', function () {
|
2017-12-06 21:12:19 -05:00
|
|
|
element.all(by.css('ul > li > h2 > a')).then((items) => {
|
2017-11-27 13:48:32 -05:00
|
|
|
expect(items.length).toBe(4);
|
|
|
|
expect(items[0].getText()).toBe('Angular Service Worker Intro');
|
|
|
|
expect(items[1].getText()).toBe('Tour of Heroes');
|
|
|
|
expect(items[2].getText()).toBe('CLI Documentation');
|
|
|
|
expect(items[3].getText()).toBe('Angular blog');
|
|
|
|
});
|
|
|
|
});
|
2017-12-06 21:12:19 -05:00
|
|
|
// Check for a rejected promise as the service worker is not enabled
|
|
|
|
it('SwUpdate.checkForUpdate() should return a rejected promise', () => {
|
|
|
|
const button = element(by.css('button'));
|
|
|
|
const rejectMessage = element(by.css('p'));
|
|
|
|
button.click();
|
|
|
|
expect(rejectMessage.getText()).toContain('rejected: ');
|
|
|
|
});
|
2017-11-27 13:48:32 -05:00
|
|
|
});
|