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