test(e2e): refactor e2e tests to modular structure and utilize lazy loading where possible

refactor e2e tests to modular structure and utilize lazy loading where possible
This commit is contained in:
Dan Bucholtz
2017-03-02 14:37:01 -06:00
parent 0d32e5e791
commit be79382386
638 changed files with 5725 additions and 3710 deletions

View File

@@ -0,0 +1,10 @@
import { Component } from '@angular/core';
import { RootPage } from '../pages/root-page/root-page';
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class AppComponent {
root = RootPage;
}

View File

@@ -0,0 +1,22 @@
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule } from '../../../../..';
import { AppComponent } from './app.component';
import { RootPage } from '../pages/root-page/root-page';
@NgModule({
declarations: [
AppComponent,
RootPage
],
imports: [
BrowserModule,
IonicModule.forRoot(AppComponent)
],
bootstrap: [IonicApp],
entryComponents: [
RootPage
]
})
export class AppModule {}

View File

@@ -0,0 +1,5 @@
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';
platformBrowserDynamic().bootstrapModule(AppModule);

View File

@@ -1,3 +1,4 @@
import { by, element } from 'protractor';
it('should open basic datetime picker', function() {
element(by.css('.e2eOpenMMDDYYYY')).click();

View File

@@ -1,12 +1,10 @@
import { Component, NgModule } from '@angular/core';
import { IonicApp, IonicModule } from '../../../../../ionic-angular';
import { Component } from '@angular/core';
@Component({
templateUrl: 'main.html'
templateUrl: 'root-page.html'
})
export class E2EPage {
export class RootPage {
myDate: any;
monthOnly = '2012-12-15T13:47:20.789';
wwwInvented = '1989';
@@ -47,28 +45,4 @@ export class E2EPage {
convertDate() {
this.convertedDate = new Date(this.myDate).toISOString();
}
}
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class E2EApp {
root = E2EPage;
}
@NgModule({
declarations: [
E2EApp,
E2EPage
],
imports: [
IonicModule.forRoot(E2EApp)
],
bootstrap: [IonicApp],
entryComponents: [
E2EPage
]
})
export class AppModule {}

View File

@@ -1,7 +1,8 @@
import { DateTime } from '../datetime';
import { Form } from '../../../util/form';
import { Picker, PickerController } from '../../picker/picker';
import { Picker } from '../../picker/picker';
import { PickerController } from '../../picker/picker-controller';
import * as datetime from '../../../util/datetime-util';
import { mockApp, mockConfig, mockElementRef, mockRenderer } from '../../../util/mock-providers';
@@ -14,7 +15,7 @@ describe('DateTime', () => {
datetime.max = '2001-12-15';
datetime.min = '2000-01-15';
datetime.pickerFormat = 'MM DD YYYY';
var picker = new Picker(mockApp());
var picker = new Picker(mockApp(), null, mockConfig());
datetime.generate(picker);
var columns = picker.getColumns();
@@ -44,7 +45,7 @@ describe('DateTime', () => {
datetime.max = '2010-11-15';
datetime.min = '2000-02-15';
datetime.pickerFormat = 'MM DD YYYY';
var picker = new Picker(mockApp());
var picker = new Picker(mockApp(), null, mockConfig());
datetime.generate(picker);
var columns = picker.getColumns();
@@ -72,7 +73,7 @@ describe('DateTime', () => {
datetime.min = '2000-01-01';
datetime.pickerFormat = 'MM DD YYYY';
var picker = new Picker(mockApp());
var picker = new Picker(mockApp(), null, mockConfig());
datetime.generate(picker);
var columns = picker.getColumns();
@@ -112,7 +113,7 @@ describe('DateTime', () => {
datetime.pickerFormat = 'MM DD YYYY';
var picker = new Picker(mockApp());
var picker = new Picker(mockApp(), null, mockConfig());
datetime.generate(picker);
var columns = picker.getColumns();
@@ -169,7 +170,7 @@ describe('DateTime', () => {
datetime.ngAfterContentInit();
datetime.setValue('1994-12-15T13:47:20.789Z');
var picker = new Picker(mockApp());
var picker = new Picker(mockApp(), null, mockConfig());
datetime.generate(picker);
var columns = picker.getColumns();
@@ -185,7 +186,7 @@ describe('DateTime', () => {
datetime.displayFormat = 'YYYY';
datetime.setValue('1994-12-15T13:47:20.789Z');
var picker = new Picker(mockApp());
var picker = new Picker(mockApp(), null, mockConfig());
datetime.generate(picker);
var columns = picker.getColumns();
@@ -199,7 +200,7 @@ describe('DateTime', () => {
datetime.pickerFormat = 'YYYY';
datetime.setValue('1994-12-15T13:47:20.789Z');
var picker = new Picker(mockApp());
var picker = new Picker(mockApp(), null, mockConfig());
datetime.generate(picker);
var columns = picker.getColumns();
@@ -213,7 +214,7 @@ describe('DateTime', () => {
datetime.pickerFormat = 'MMM YYYY';
datetime.setValue('1994-12-15T13:47:20.789Z');
var picker = new Picker(mockApp());
var picker = new Picker(mockApp(), null, mockConfig());
datetime.generate(picker);
var columns = picker.getColumns();
@@ -229,7 +230,7 @@ describe('DateTime', () => {
datetime.pickerFormat = 'MMMM YYYY';
datetime.setValue('1994-12-15T13:47:20.789Z');
var picker = new Picker(mockApp());
var picker = new Picker(mockApp(), null, mockConfig());
datetime.generate(picker);
var columns = picker.getColumns();
@@ -243,7 +244,7 @@ describe('DateTime', () => {
datetime.pickerFormat = 'DDDD D M YYYY';
datetime.setValue('1994-12-15T13:47:20.789Z');
var picker = new Picker(mockApp());
var picker = new Picker(mockApp(), null, mockConfig());
datetime.generate(picker);
var columns = picker.getColumns();
@@ -257,7 +258,7 @@ describe('DateTime', () => {
datetime.pickerFormat = 'DDDD M YYYY';
datetime.setValue('1994-12-15T13:47:20.789Z');
var picker = new Picker(mockApp());
var picker = new Picker(mockApp(), null, mockConfig());
datetime.generate(picker);
var columns = picker.getColumns();
@@ -272,7 +273,7 @@ describe('DateTime', () => {
datetime.min = '2000-01-01';
datetime.pickerFormat = 'MM DD YYYY';
var picker = new Picker(mockApp());
var picker = new Picker(mockApp(), null, mockConfig());
datetime.generate(picker);
var columns = picker.getColumns();
@@ -295,7 +296,7 @@ describe('DateTime', () => {
datetime.min = '2000-01-01';
datetime.pickerFormat = 'YYYY';
var picker = new Picker(mockApp());
var picker = new Picker(mockApp(), null, mockConfig());
datetime.generate(picker);
var columns = picker.getColumns();
@@ -635,7 +636,8 @@ describe('DateTime', () => {
var datetime: DateTime;
beforeEach(() => {
datetime = new DateTime(new Form(), mockConfig(), mockElementRef(), mockRenderer(), null, <PickerController>{});
let pickerCtrl = new PickerController(mockApp(), mockConfig());
datetime = new DateTime(new Form(), mockConfig(), mockElementRef(), mockRenderer(), null, pickerCtrl);
});
console.warn = function(){};

View File

@@ -1,6 +1,7 @@
import { Component, NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormControl, FormGroup } from '@angular/forms';
import { IonicApp, IonicModule } from '../../../../../ionic-angular';
import { IonicApp, IonicModule } from '../../../..';
@@ -38,6 +39,7 @@ export class E2EApp {
E2EPage
],
imports: [
BrowserModule,
IonicModule.forRoot(E2EApp)
],
bootstrap: [IonicApp],

View File

@@ -0,0 +1,5 @@
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';
platformBrowserDynamic().bootstrapModule(AppModule);

View File

@@ -1,41 +0,0 @@
import { Component, NgModule } from '@angular/core';
import { IonicApp, IonicModule } from '../../../../../ionic-angular';
@Component({
templateUrl: 'main.html'
})
export class E2EPage {
stacked1 = '1994-12-15T13:47:20.789';
stacked2 = '1994-12-15T13:47:20.789';
floating1 = '1995-04-15';
floating2 = '1995-04-15';
fixed1 = '2002-09-23T15:03:46.789';
fixed2 = '2002-09-23T15:03:46.789';
inline1 = '2005-06-17T11:06Z';
inline2 = '2005-06-17T11:06Z';
}
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class E2EApp {
root = E2EPage;
}
@NgModule({
declarations: [
E2EApp,
E2EPage
],
imports: [
IonicModule.forRoot(E2EApp)
],
bootstrap: [IonicApp],
entryComponents: [
E2EPage
]
})
export class AppModule {}

View File

@@ -0,0 +1,10 @@
import { Component } from '@angular/core';
import { RootPage } from '../pages/root-page/root-page';
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class AppComponent {
root = RootPage;
}

View File

@@ -0,0 +1,22 @@
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule } from '../../../../..';
import { AppComponent } from './app.component';
import { RootPage } from '../pages/root-page/root-page';
@NgModule({
declarations: [
AppComponent,
RootPage
],
imports: [
BrowserModule,
IonicModule.forRoot(AppComponent)
],
bootstrap: [IonicApp],
entryComponents: [
RootPage
]
})
export class AppModule {}

View File

@@ -0,0 +1,5 @@
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';
platformBrowserDynamic().bootstrapModule(AppModule);

View File

@@ -0,0 +1,16 @@
import { Component } from '@angular/core';
@Component({
templateUrl: 'root-page.html'
})
export class RootPage {
stacked1 = '1994-12-15T13:47:20.789';
stacked2 = '1994-12-15T13:47:20.789';
floating1 = '1995-04-15';
floating2 = '1995-04-15';
fixed1 = '2002-09-23T15:03:46.789';
fixed2 = '2002-09-23T15:03:46.789';
inline1 = '2005-06-17T11:06Z';
inline2 = '2005-06-17T11:06Z';
}