From 6a9fe5b2c1868cfa78d95b5cd23bce83ee43f423 Mon Sep 17 00:00:00 2001 From: Sean Perkins Date: Mon, 6 Nov 2023 15:24:17 -0500 Subject: [PATCH] test(angular): platform provider --- .../base/e2e/src/standalone/providers.spec.ts | 14 +++++++ .../standalone/app-standalone/app.routes.ts | 1 + .../platform/platform.component.html | 11 ++++++ .../standalone/platform/platform.component.ts | 39 +++++++++++++++++++ 4 files changed, 65 insertions(+) create mode 100644 packages/angular/test/base/src/app/standalone/platform/platform.component.html create mode 100644 packages/angular/test/base/src/app/standalone/platform/platform.component.ts diff --git a/packages/angular/test/base/e2e/src/standalone/providers.spec.ts b/packages/angular/test/base/e2e/src/standalone/providers.spec.ts index 71aca1c635..f7aed5c8bd 100644 --- a/packages/angular/test/base/e2e/src/standalone/providers.spec.ts +++ b/packages/angular/test/base/e2e/src/standalone/providers.spec.ts @@ -9,3 +9,17 @@ describe('Providers', () => { cy.get('#keyboard-height').should('have.text', '12345'); }); }) + + +describe('Providers: Platform', () => { + beforeEach(() => { + cy.visit('/standalone/providers/platform'); + }); + + it('isReady should be true', () => { + cy.ionPageVisible('app-platform'); + + cy.get('#is-ready').should('have.text', 'true'); + }); + +}); diff --git a/packages/angular/test/base/src/app/standalone/app-standalone/app.routes.ts b/packages/angular/test/base/src/app/standalone/app-standalone/app.routes.ts index 3e2499ca11..240a5519ea 100644 --- a/packages/angular/test/base/src/app/standalone/app-standalone/app.routes.ts +++ b/packages/angular/test/base/src/app/standalone/app-standalone/app.routes.ts @@ -14,6 +14,7 @@ export const routes: Routes = [ { path: 'router-link', loadComponent: () => import('../router-link/router-link.component').then(c => c.RouterLinkComponent) }, { path: 'nav', loadComponent: () => import('../nav/nav.component').then(c => c.NavComponent) }, { path: 'providers', loadComponent: () => import('../providers/providers.component').then(c => c.ProvidersComponent) }, + { path: 'providers/platform', loadComponent: () => import('../platform/platform.component').then(c => c.PlatformComponent) }, { path: 'overlay-controllers', loadComponent: () => import('../overlay-controllers/overlay-controllers.component').then(c => c.OverlayControllersComponent) }, { path: 'button', loadComponent: () => import('../button/button.component').then(c => c.ButtonComponent) }, { path: 'icon', loadComponent: () => import('../icon/icon.component').then(c => c.IconComponent) }, diff --git a/packages/angular/test/base/src/app/standalone/platform/platform.component.html b/packages/angular/test/base/src/app/standalone/platform/platform.component.html new file mode 100644 index 0000000000..d4e70782ab --- /dev/null +++ b/packages/angular/test/base/src/app/standalone/platform/platform.component.html @@ -0,0 +1,11 @@ + diff --git a/packages/angular/test/base/src/app/standalone/platform/platform.component.ts b/packages/angular/test/base/src/app/standalone/platform/platform.component.ts new file mode 100644 index 0000000000..2cec4640ed --- /dev/null +++ b/packages/angular/test/base/src/app/standalone/platform/platform.component.ts @@ -0,0 +1,39 @@ +import { Component, NgZone } from "@angular/core"; + +import { Platform } from '@ionic/angular/standalone'; + +@Component({ + selector: "app-platform", + templateUrl: "./platform.component.html", + standalone: true +}) +export class PlatformComponent { + + isReady = false; + isResumed = false; + isPaused = false; + isResized = false; + + constructor(public platform: Platform) { + platform.ready().then(() => { + NgZone.assertInAngularZone(); + this.isReady = true; + }); + platform.resume.subscribe(() => { + console.log('platform:resume'); + NgZone.assertInAngularZone(); + this.isResumed = true; + }); + platform.pause.subscribe(() => { + console.log('platform:pause'); + NgZone.assertInAngularZone(); + this.isPaused = true; + }); + platform.resize.subscribe(() => { + console.log('platform:resize'); + NgZone.assertInAngularZone(); + this.isResized = true; + }); + } + +}