54 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
		
		
			
		
	
	
			54 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| 
								 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 * @license
							 | 
						||
| 
								 | 
							
								 * Copyright Google Inc. All Rights Reserved.
							 | 
						||
| 
								 | 
							
								 *
							 | 
						||
| 
								 | 
							
								 * Use of this source code is governed by an MIT-style license that can be
							 | 
						||
| 
								 | 
							
								 * found in the LICENSE file at https://angular.io/license
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import {browser, by, element} from 'protractor';
							 | 
						||
| 
								 | 
							
								import {verifyNoBrowserErrors} from '../../../../_common/e2e_util';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								function loadPage(url: string) {
							 | 
						||
| 
								 | 
							
								  browser.ng12Hybrid = true;
							 | 
						||
| 
								 | 
							
								  browser.rootEl = 'example-app';
							 | 
						||
| 
								 | 
							
								  browser.get(url);
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								describe('upgrade(static)', () => {
							 | 
						||
| 
								 | 
							
								  beforeEach(() => { loadPage('/upgrade/static/ts/'); });
							 | 
						||
| 
								 | 
							
								  afterEach(verifyNoBrowserErrors);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  it('should render the `ng2-heroes` component', () => {
							 | 
						||
| 
								 | 
							
								    expect(element(by.css('h1')).getText()).toEqual('Heroes');
							 | 
						||
| 
								 | 
							
								    expect(element.all(by.css('p')).get(0).getText()).toEqual('There are 3 heroes.');
							 | 
						||
| 
								 | 
							
								  });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  it('should render 3 ng1-hero components', () => {
							 | 
						||
| 
								 | 
							
								    const heroComponents = element.all(by.css('ng1-hero'));
							 | 
						||
| 
								 | 
							
								    expect(heroComponents.count()).toEqual(3);
							 | 
						||
| 
								 | 
							
								  });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  it('should add a new hero when the "Add Hero" button is pressed', () => {
							 | 
						||
| 
								 | 
							
								    const addHeroButton = element.all(by.css('button')).last();
							 | 
						||
| 
								 | 
							
								    expect(addHeroButton.getText()).toEqual('Add Hero');
							 | 
						||
| 
								 | 
							
								    addHeroButton.click();
							 | 
						||
| 
								 | 
							
								    const heroComponents = element.all(by.css('ng1-hero'));
							 | 
						||
| 
								 | 
							
								    expect(heroComponents.last().element(by.css('h2')).getText()).toEqual('Kamala Khan');
							 | 
						||
| 
								 | 
							
								  });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  it('should remove a hero when the "Remove" button is pressed', () => {
							 | 
						||
| 
								 | 
							
								    let firstHero = element.all(by.css('ng1-hero')).get(0);
							 | 
						||
| 
								 | 
							
								    expect(firstHero.element(by.css('h2')).getText()).toEqual('Superman');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    const removeHeroButton = firstHero.element(by.css('button'));
							 | 
						||
| 
								 | 
							
								    expect(removeHeroButton.getText()).toEqual('Remove');
							 | 
						||
| 
								 | 
							
								    removeHeroButton.click();
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    const heroComponents = element.all(by.css('ng1-hero'));
							 | 
						||
| 
								 | 
							
								    expect(heroComponents.count()).toEqual(2);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    firstHero = element.all(by.css('ng1-hero')).get(0);
							 | 
						||
| 
								 | 
							
								    expect(firstHero.element(by.css('h2')).getText()).toEqual('Wonder Woman');
							 | 
						||
| 
								 | 
							
								  });
							 | 
						||
| 
								 | 
							
								});
							 |