64 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			64 lines
		
	
	
		
			1.8 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 {openBrowser, verifyNoBrowserErrors} from 'e2e_util/e2e_util';
 | 
						|
import {$, browser} from 'protractor';
 | 
						|
 | 
						|
import {Benchmark, Benchmarks, CreateBtn, DestroyBtn, DetectChangesBtn, NumberOfChecksEl, RootEl} from './tree_data';
 | 
						|
 | 
						|
describe('tree benchmark spec', () => {
 | 
						|
 | 
						|
  let _oldRootEl: any;
 | 
						|
  beforeEach(() => _oldRootEl = browser.rootEl);
 | 
						|
 | 
						|
  afterEach(() => {
 | 
						|
    browser.rootEl = _oldRootEl;
 | 
						|
    verifyNoBrowserErrors();
 | 
						|
  });
 | 
						|
 | 
						|
  Benchmarks.forEach(benchmark => {
 | 
						|
    describe(benchmark.id, () => {
 | 
						|
      it('should work for createDestroy', () => {
 | 
						|
        openTreeBenchmark(benchmark);
 | 
						|
        $(CreateBtn).click();
 | 
						|
        expect($(RootEl).getText()).toContain('0');
 | 
						|
        $(DestroyBtn).click();
 | 
						|
        expect($(RootEl).getText()).toEqual('');
 | 
						|
      });
 | 
						|
 | 
						|
      it('should work for update', () => {
 | 
						|
        openTreeBenchmark(benchmark);
 | 
						|
        $(CreateBtn).click();
 | 
						|
        $(CreateBtn).click();
 | 
						|
        expect($(RootEl).getText()).toContain('A');
 | 
						|
      });
 | 
						|
 | 
						|
      if (benchmark.buttons.indexOf(DetectChangesBtn) !== -1) {
 | 
						|
        it('should work for detectChanges', () => {
 | 
						|
          openTreeBenchmark(benchmark);
 | 
						|
          $(DetectChangesBtn).click();
 | 
						|
          expect($(NumberOfChecksEl).getText()).toContain('10');
 | 
						|
        });
 | 
						|
      }
 | 
						|
    });
 | 
						|
  });
 | 
						|
 | 
						|
  function openTreeBenchmark(benchmark: Benchmark) {
 | 
						|
    let params = [{name: 'depth', value: 4}];
 | 
						|
    if (benchmark.extraParams) {
 | 
						|
      params = params.concat(benchmark.extraParams);
 | 
						|
    }
 | 
						|
    browser.rootEl = RootEl;
 | 
						|
    openBrowser({
 | 
						|
      url: benchmark.url,
 | 
						|
      ignoreBrowserSynchronization: benchmark.ignoreBrowserSynchronization,
 | 
						|
      params: params,
 | 
						|
    });
 | 
						|
  }
 | 
						|
});
 |