Skip to content

Commit e101f2e

Browse files
test(angular): add ng19 test app (#30041)
Issue number: internal --------- ## What is the current behavior? There are tests apps for Angular 16, 17 and 18 ## What is the new behavior? Adds a test app for Angular 19 ## Does this introduce a breaking change? - [ ] Yes - [x] No --------- Co-authored-by: Brandy Carney <[email protected]>
1 parent 000f553 commit e101f2e

File tree

79 files changed

+19038
-218
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

79 files changed

+19038
-218
lines changed

.github/workflows/build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ jobs:
140140
strategy:
141141
fail-fast: false
142142
matrix:
143-
apps: [ng16, ng17, ng18]
143+
apps: [ng16, ng17, ng18, ng19]
144144
needs: [build-angular, build-angular-server]
145145
runs-on: ubuntu-latest
146146
steps:

.github/workflows/stencil-nightly.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ jobs:
150150
strategy:
151151
fail-fast: false
152152
matrix:
153-
apps: [ng16, ng17, ng18]
153+
apps: [ng16, ng17, ng18, ng19]
154154
needs: [build-angular, build-angular-server]
155155
runs-on: ubuntu-latest
156156
steps:

docs/angular/testing.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,13 @@ Ionic Framework supports multiple versions of Angular. As a result, we need to v
66

77
The Angular test app supports syncing your locally built changes for validation.
88

9-
1. Build the `core` and `packages/angular` directories using `npm run build`.
10-
2. [Build the Angular test app](#test-app-build-structure).
11-
3. Navigate to the built test app directory (e.g. `packages/angular/test/build/ng14`).
12-
4. Install dependencies using `npm install`.
13-
5. Sync your local changes using `npm run sync`.
9+
1. Build the `core` directory.
10+
2. Navigate to `packages/angular` and run `npm run sync`.
11+
3. Build `packages/angular` using `npm run build`.
12+
4. [Build the Angular test app](#test-app-build-structure).
13+
5. Navigate to the built test app directory (e.g. `packages/angular/test/build/ng14`).
14+
6. Install dependencies using `npm install`.
15+
7. Sync your local changes using `npm run sync`.
1416

1517
From here you can either build the application or start a local dev server. When re-syncing changes, you will need to [wipe or disable the application cache](#application-cache).
1618

@@ -86,6 +88,7 @@ As we add support for new versions of Angular, we will also need to update this
8688
2. Update the application by following the steps on https://update.angular.io/.
8789
3. Make note of any files that changed during the upgrade (`package.json`, `package-lock.json`, `angular.json`, etc).
8890
4. Copy the changed files to a new directory in `apps`.
91+
- Do NOT copy the entire directory. The `test/base` directory contains shared files between all major versions. Only files that are different than previous major versions should be copied to the new directory in `apps`.
8992
5. Add a new entry to the matrix for `test-core-angular` in `./github/workflows/build.yml`. This will allow the new test app to run against all PRs.
9093
6. Commit these changes and push.
9194

packages/angular/test/apps/ng16/package.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -41,22 +41,22 @@
4141
},
4242
"devDependencies": {
4343
"@angular-devkit/build-angular": "^16.0.0",
44-
"@angular-eslint/builder": "^16.0.0",
45-
"@angular-eslint/eslint-plugin": "^16.0.0",
46-
"@angular-eslint/eslint-plugin-template": "^16.0.0",
47-
"@angular-eslint/schematics": "^16.0.0",
44+
"@angular-eslint/builder": "^16.3.1",
45+
"@angular-eslint/eslint-plugin": "^16.3.1",
46+
"@angular-eslint/eslint-plugin-template": "^16.3.1",
47+
"@angular-eslint/schematics": "^16.3.1",
4848
"@angular-eslint/template-parser": "^16.0.0",
4949
"@angular/cli": "^16.0.0",
5050
"@angular/compiler-cli": "^16.0.0",
5151
"@angular/language-service": "^16.0.0",
5252
"@nguniversal/builders": "^16.0.0",
5353
"@types/express": "^4.17.7",
5454
"@types/node": "^12.12.54",
55-
"@typescript-eslint/eslint-plugin": "4.28.2",
56-
"@typescript-eslint/parser": "4.28.2",
55+
"@typescript-eslint/eslint-plugin": "^5.62.0",
56+
"@typescript-eslint/parser": "^5.62.0",
5757
"concurrently": "^6.0.0",
5858
"cypress": "^13.2.0",
59-
"eslint": "^7.26.0",
59+
"eslint": "^8.57.1",
6060
"ts-loader": "^6.2.2",
6161
"ts-node": "^8.3.0",
6262
"typescript": "~5.0.2",

packages/angular/test/apps/ng16/src/app/lazy/version-test/modal-nav-params/nav-root.component.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import { JsonPipe } from "@angular/common";
2-
import { Component, Input } from "@angular/core";
2+
import { Component, Input, OnInit } from "@angular/core";
33

44
import { IonicModule } from "@ionic/angular";
55

66
/**
7-
* This is used to track if any occurences of
7+
* This is used to track if any occurrences of
88
* the ion-nav root component being attached to
99
* the DOM result in the rootParams not being
1010
* assigned to the component instance.
@@ -21,7 +21,7 @@ let rootParamsException = false;
2121
standalone: true,
2222
imports: [IonicModule, JsonPipe]
2323
})
24-
export class NavRootComponent {
24+
export class NavRootComponent implements OnInit {
2525

2626
@Input() params: any = {};
2727

packages/angular/test/apps/ng17/e2e/src/lazy/bind-component-inputs.spec.ts

Lines changed: 0 additions & 8 deletions
This file was deleted.

packages/angular/test/apps/ng17/e2e/src/lazy/modal-nav-params.spec.ts

Lines changed: 0 additions & 20 deletions
This file was deleted.

packages/angular/test/apps/ng17/src/app/lazy/version-test/bind-component-inputs/bind-component-inputs.component.ts

Lines changed: 0 additions & 41 deletions
This file was deleted.

packages/angular/test/apps/ng17/src/app/lazy/version-test/modal-nav-params/nav-root.component.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import { JsonPipe } from "@angular/common";
2-
import { Component, Input } from "@angular/core";
2+
import { Component, Input, OnInit } from "@angular/core";
33

44
import { IonicModule } from "@ionic/angular";
55

66
/**
7-
* This is used to track if any occurences of
7+
* This is used to track if any occurrences of
88
* the ion-nav root component being attached to
99
* the DOM result in the rootParams not being
1010
* assigned to the component instance.
@@ -21,7 +21,7 @@ let rootParamsException = false;
2121
standalone: true,
2222
imports: [IonicModule, JsonPipe]
2323
})
24-
export class NavRootComponent {
24+
export class NavRootComponent implements OnInit {
2525

2626
@Input() params: any;
2727

packages/angular/test/apps/ng18/e2e/src/lazy/bind-component-inputs.spec.ts

Lines changed: 0 additions & 8 deletions
This file was deleted.

0 commit comments

Comments
 (0)