@@ -116,4 +116,65 @@ describe("migrateBootstrapApplication", () => {
116
116
` ) ,
117
117
) ;
118
118
} ) ;
119
+
120
+ it ( "should migrate IonicModule.forRoot without explicit config" , async ( ) => {
121
+ const project = new Project ( { useInMemoryFileSystem : true } ) ;
122
+
123
+ const main = dedent ( `
124
+ import { enableProdMode, importProvidersFrom } from '@angular/core';
125
+ import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
126
+
127
+
128
+ import { environment } from './environments/environment';
129
+ import { AppComponent } from './app/app.component';
130
+ import { AppRoutingModule } from './app/app-routing.module';
131
+ import { BrowserModule, bootstrapApplication } from '@angular/platform-browser';
132
+ import { IonicRouteStrategy, IonicModule } from '@ionic/angular';
133
+ import { RouteReuseStrategy } from '@angular/router';
134
+
135
+ if (environment.production) {
136
+ enableProdMode();
137
+ }
138
+
139
+ bootstrapApplication(AppComponent, {
140
+ providers: [
141
+ importProvidersFrom(BrowserModule, IonicModule.forRoot(), AppRoutingModule),
142
+ { provide: RouteReuseStrategy, useClass: IonicRouteStrategy }
143
+ ]
144
+ })
145
+ .catch(err => console.log(err));
146
+ ` ) ;
147
+
148
+ const mainSourceFile = project . createSourceFile ( "src/main.ts" , main ) ;
149
+
150
+ await migrateBootstrapApplication ( project , { dryRun : false } ) ;
151
+
152
+ expect ( dedent ( mainSourceFile . getText ( ) ) ) . toBe (
153
+ dedent ( `
154
+ import { enableProdMode, importProvidersFrom } from '@angular/core';
155
+ import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
156
+
157
+
158
+ import { environment } from './environments/environment';
159
+ import { AppComponent } from './app/app.component';
160
+ import { AppRoutingModule } from './app/app-routing.module';
161
+ import { BrowserModule, bootstrapApplication } from '@angular/platform-browser';
162
+ import { IonicRouteStrategy, provideIonicAngular } from '@ionic/angular/standalone';
163
+ import { RouteReuseStrategy } from '@angular/router';
164
+
165
+ if (environment.production) {
166
+ enableProdMode();
167
+ }
168
+
169
+ bootstrapApplication(AppComponent, {
170
+ providers: [
171
+ importProvidersFrom(BrowserModule, AppRoutingModule),
172
+ { provide: RouteReuseStrategy, useClass: IonicRouteStrategy },
173
+ provideIonicAngular({})
174
+ ]
175
+ })
176
+ .catch(err => console.log(err));
177
+ ` ) ,
178
+ ) ;
179
+ } ) ;
119
180
} ) ;
0 commit comments