From 41a652485566fa6dcd06ac1ea834e74f92afd689 Mon Sep 17 00:00:00 2001 From: Brandy Carney Date: Tue, 5 Apr 2016 11:24:05 -0400 Subject: [PATCH] test(loading): add e2e test for loading in tabs and remove animation for basic e2e references #5426 --- ionic/components/loading/test/basic/index.ts | 35 +++++---- .../components/loading/test/basic/styles.css | 5 ++ ionic/components/loading/test/tabs/e2e.ts | 4 + ionic/components/loading/test/tabs/index.ts | 74 +++++++++++++++++++ ionic/components/loading/test/tabs/main.html | 9 +++ 5 files changed, 111 insertions(+), 16 deletions(-) create mode 100644 ionic/components/loading/test/tabs/e2e.ts create mode 100644 ionic/components/loading/test/tabs/index.ts create mode 100644 ionic/components/loading/test/tabs/main.html diff --git a/ionic/components/loading/test/basic/index.ts b/ionic/components/loading/test/basic/index.ts index 3766769972..baf8063c09 100644 --- a/ionic/components/loading/test/basic/index.ts +++ b/ionic/components/loading/test/basic/index.ts @@ -56,9 +56,12 @@ class E2EPage { this.nav.present(loading); } + // Pass the fixed-spinner class so we can turn off + // spinner animation for the e2e test presentLoadingDefault() { let loading = Loading.create({ content: 'Please wait...', + cssClass: 'fixed-spinner' }); this.nav.present(loading); @@ -101,7 +104,7 @@ class E2EPage { goToPage2() { this.nav.push(Page2); } - + presentLoadingMultiple() { let loading = Loading.create({ spinner: 'hide', @@ -109,7 +112,7 @@ class E2EPage { }); this.nav.present(loading); - + let loading2 = Loading.create({ spinner: 'hide', content: 'Loading 2 Please Wait...' @@ -118,7 +121,7 @@ class E2EPage { setTimeout(() => { this.nav.present(loading2); }, 1000); - + let loading3 = Loading.create({ spinner: 'hide', content: 'Loading 3 Please Wait...' @@ -126,22 +129,22 @@ class E2EPage { setTimeout(() => { this.nav.present(loading3); - + setTimeout(() => { loading3.dismiss(); }, 1000); - + setTimeout(() => { loading2.dismiss(); - }, 2000); - + }, 2000); + setTimeout(() => { loading.dismiss(); - }, 3000); + }, 3000); }, 2000); - + } - + presentLoadingMultipleNav() { let loading = Loading.create({ spinner: 'hide', @@ -150,7 +153,7 @@ class E2EPage { }); this.nav.present(loading); - + let loading2 = Loading.create({ spinner: 'hide', content: 'Loading 2 Please Wait...', @@ -160,7 +163,7 @@ class E2EPage { setTimeout(() => { this.nav.present(loading2); }, 500); - + let loading3 = Loading.create({ spinner: 'hide', content: 'Loading 3 Please Wait...', @@ -169,12 +172,12 @@ class E2EPage { setTimeout(() => { this.nav.present(loading3); - + setTimeout(() => { this.nav.push(Page2); - }, 1000); - }, 1000); - } + }, 1000); + }, 1000); + } } @Page({ diff --git a/ionic/components/loading/test/basic/styles.css b/ionic/components/loading/test/basic/styles.css index 5291c34716..93f3d0c388 100644 --- a/ionic/components/loading/test/basic/styles.css +++ b/ionic/components/loading/test/basic/styles.css @@ -1,3 +1,8 @@ +/* Fix the spinner used in e2e */ +.fixed-spinner svg { + animation: none; +} + .custom-spinner-container { position: relative; display: inline-block; diff --git a/ionic/components/loading/test/tabs/e2e.ts b/ionic/components/loading/test/tabs/e2e.ts new file mode 100644 index 0000000000..2ebc67cc6a --- /dev/null +++ b/ionic/components/loading/test/tabs/e2e.ts @@ -0,0 +1,4 @@ + +it('should show default spinner', function() { + element(by.css('.e2eLoadingTabsContent')).click(); +}); diff --git a/ionic/components/loading/test/tabs/index.ts b/ionic/components/loading/test/tabs/index.ts new file mode 100644 index 0000000000..edbe86951c --- /dev/null +++ b/ionic/components/loading/test/tabs/index.ts @@ -0,0 +1,74 @@ +import {App, Page, ActionSheet, Loading, NavController, ViewController, Platform} from 'ionic-angular'; + + +@Page({ + templateUrl: 'main.html' +}) +class E2EPage { + constructor(private nav: NavController, private platform: Platform) {} + + presentLoading() { + let loading = Loading.create({ + spinner: 'hide', + content: 'Loading...', + duration: 1000 + }); + + this.nav.present(loading); + } + + presentLoadingNav() { + let loading = Loading.create({ + content: 'Please wait...', + }); + + this.nav.present(loading); + + setTimeout(() => { + this.nav.push(Page2); + + setTimeout(() => { + loading.dismiss(); + }, 1000); + }, 1000); + } + +} + +@Page({ + template: ` + + Page 2 + + Some content + ` +}) +class Page2 { + constructor(private nav: NavController, private platform: Platform) {} +} + +@Page({ + template: ` + + + + + + ` +}) +export class TabsPage { + private root1 = E2EPage; + private root2 = Page2; + private root3 = E2EPage; + + constructor() { + + } +} + +@App({ + template: '' +}) +class E2EApp { + root = TabsPage; +} diff --git a/ionic/components/loading/test/tabs/main.html b/ionic/components/loading/test/tabs/main.html new file mode 100644 index 0000000000..6af84ba287 --- /dev/null +++ b/ionic/components/loading/test/tabs/main.html @@ -0,0 +1,9 @@ + + + Loading + + + + + +