45 lines
1.5 KiB
TypeScript
Raw Permalink Normal View History

import { AppPage } from './app.po';
import { element, by } from 'protractor';
describe('sw-example App', () => {
let page: AppPage;
beforeEach(async () => {
page = new AppPage();
await page.navigateTo();
});
it('should display welcome message', async () => {
expect(await page.getTitleText()).toEqual('Welcome to Service Workers!');
});
it('should display the Angular logo', async () => {
const logo = element(by.css('img'));
expect(await logo.isPresent()).toBe(true);
});
it('should show a header for the list of links', async () => {
const listHeader = element(by.css('app-root > h2'));
expect(await listHeader.getText()).toEqual('Here are some links to help you start:');
});
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');
});
// Check for a rejected promise as the service worker is not enabled
it('SwUpdate.checkForUpdate() should return a rejected promise', async () => {
const button = element(by.css('button'));
const rejectMessage = element(by.css('p'));
await button.click();
expect(await rejectMessage.getText()).toContain('rejected: ');
});
});