
add e2e test for SVG template example fix template syntax example app - linting errors - runtime exceptions - template type errors - deprecated type casting - deprecated currency pipe example Relates to #30559 PR Close #31356
51 lines
1.9 KiB
TypeScript
51 lines
1.9 KiB
TypeScript
'use strict'; // necessary for es6 output in node
|
|
|
|
import { browser, element, by } from 'protractor';
|
|
|
|
// TODO Not yet complete
|
|
describe('Template Syntax', () => {
|
|
|
|
beforeAll(() => {
|
|
browser.get('');
|
|
});
|
|
|
|
it('should be able to use interpolation with a hero', () => {
|
|
const heroInterEle = element.all(by.css('h2+p')).get(0);
|
|
expect(heroInterEle.getText()).toEqual('My current hero is Hercules');
|
|
});
|
|
|
|
it('should be able to use interpolation with a calculation', () => {
|
|
const theSumEles = element.all(by.cssContainingText('h3~p', 'The sum of'));
|
|
expect(theSumEles.count()).toBe(2);
|
|
expect(theSumEles.get(0).getText()).toEqual('The sum of 1 + 1 is 2');
|
|
expect(theSumEles.get(1).getText()).toEqual('The sum of 1 + 1 is not 4');
|
|
});
|
|
|
|
it('should be able to use class binding syntax', () => {
|
|
const specialEle = element(by.cssContainingText('div', 'Special'));
|
|
expect(specialEle.getAttribute('class')).toMatch('special');
|
|
});
|
|
|
|
it('should be able to use style binding syntax', () => {
|
|
const specialButtonEle = element(by.cssContainingText('div.special~button', 'button'));
|
|
expect(specialButtonEle.getAttribute('style')).toMatch('color: red');
|
|
});
|
|
|
|
it('should two-way bind to sizer', async () => {
|
|
const div = element(by.css('div#two-way-1'));
|
|
const incButton = div.element(by.buttonText('+'));
|
|
const input = div.element(by.css('input'));
|
|
const initSize = await input.getAttribute('value');
|
|
incButton.click();
|
|
expect(input.getAttribute('value')).toEqual((+initSize + 1).toString());
|
|
});
|
|
|
|
it('should change SVG rectangle\'s fill color on click', async () => {
|
|
const div = element(by.css('app-svg'));
|
|
const colorSquare = div.element(by.css('rect'));
|
|
const initialColor = await colorSquare.getAttribute('fill');
|
|
colorSquare.click();
|
|
expect(colorSquare.getAttribute('fill')).not.toEqual(initialColor);
|
|
});
|
|
});
|