1
1
// make sure you import mocha-config before @angular/core
2
2
import { assert } from "./test-config" ;
3
- import { Component , ElementRef , Renderer , NgZone } from "@angular/core" ;
3
+ import { Component , ElementRef , Renderer2 , NgZone } from "@angular/core" ;
4
4
import { ProxyViewContainer } from "ui/proxy-view-container" ;
5
5
import { Red } from "color/known-colors" ;
6
6
import { dumpView } from "./test-utils" ;
@@ -214,7 +214,7 @@ describe("Renderer E2E", () => {
214
214
it ( "ngIf hides component when false" , ( ) => {
215
215
return testApp . loadComponent ( NgIfLabel ) . then ( ( componentRef ) => {
216
216
const componentRoot = componentRef . instance . elementRef . nativeElement ;
217
- assert . equal ( "(ProxyViewContainer (template ))" , dumpView ( componentRoot ) ) ;
217
+ assert . equal ( "(ProxyViewContainer (#comment ))" , dumpView ( componentRoot ) ) ;
218
218
} ) ;
219
219
} ) ;
220
220
@@ -225,15 +225,15 @@ describe("Renderer E2E", () => {
225
225
226
226
component . show = true ;
227
227
testApp . appRef . tick ( ) ;
228
- assert . equal ( "(ProxyViewContainer (template ), (Label))" , dumpView ( componentRoot ) ) ;
228
+ assert . equal ( "(ProxyViewContainer (#comment ), (Label))" , dumpView ( componentRoot ) ) ;
229
229
} ) ;
230
230
} ) ;
231
231
232
232
it ( "ngFor creates element for each item" , ( ) => {
233
233
return testApp . loadComponent ( NgForLabel ) . then ( ( componentRef ) => {
234
234
const componentRoot = componentRef . instance . elementRef . nativeElement ;
235
235
assert . equal (
236
- "(ProxyViewContainer (template ), (Label[text=one]), (Label[text=two]), (Label[text=three]))" ,
236
+ "(ProxyViewContainer (#comment ), (Label[text=one]), (Label[text=two]), (Label[text=three]))" ,
237
237
dumpView ( componentRoot , true ) ) ;
238
238
} ) ;
239
239
} ) ;
@@ -247,7 +247,7 @@ describe("Renderer E2E", () => {
247
247
testApp . appRef . tick ( ) ;
248
248
249
249
assert . equal (
250
- "(ProxyViewContainer (template ), (Label[text=one]), (Label[text=three]))" ,
250
+ "(ProxyViewContainer (#comment ), (Label[text=one]), (Label[text=three]))" ,
251
251
dumpView ( componentRoot , true ) ) ;
252
252
} ) ;
253
253
} ) ;
@@ -261,7 +261,7 @@ describe("Renderer E2E", () => {
261
261
testApp . appRef . tick ( ) ;
262
262
263
263
assert . equal (
264
- "(ProxyViewContainer (template ), " +
264
+ "(ProxyViewContainer (#comment ), " +
265
265
"(Label[text=one]), (Label[text=new]), (Label[text=two]), (Label[text=three]))" ,
266
266
dumpView ( componentRoot , true ) ) ;
267
267
} ) ;
@@ -271,7 +271,7 @@ describe("Renderer E2E", () => {
271
271
272
272
describe ( "Renderer createElement" , ( ) => {
273
273
let testApp : TestApp = null ;
274
- let renderer : Renderer = null ;
274
+ let renderer : Renderer2 = null ;
275
275
276
276
before ( ( ) => {
277
277
return TestApp . create ( ) . then ( ( app ) => {
@@ -285,30 +285,30 @@ describe("Renderer createElement", () => {
285
285
} ) ;
286
286
287
287
it ( "creates element from CamelCase" , ( ) => {
288
- const result = renderer . createElement ( null , "StackLayout" , null ) ;
288
+ const result = renderer . createElement ( "StackLayout" ) ;
289
289
assert . instanceOf ( result , StackLayout , "Renderer should create StackLayout form 'StackLayout'" ) ;
290
290
} ) ;
291
291
292
292
it ( "creates element from lowercase" , ( ) => {
293
- const result = renderer . createElement ( null , "stacklayout" , null ) ;
293
+ const result = renderer . createElement ( "stacklayout" ) ;
294
294
assert . instanceOf ( result , StackLayout , "Renderer should create StackLayout form 'stacklayout'" ) ;
295
295
} ) ;
296
296
297
297
it ( "creates element from kebab-case" , ( ) => {
298
- const result = renderer . createElement ( null , "stack-layout" , null ) ;
298
+ const result = renderer . createElement ( "stack-layout" ) ;
299
299
assert . instanceOf ( result , StackLayout , "Renderer should create StackLayout form 'stack-layout'" ) ;
300
300
} ) ;
301
301
302
302
it ( "creates ProxyViewContainer for unknownTag" , ( ) => {
303
- const result = renderer . createElement ( null , "unknown-tag" , null ) ;
303
+ const result = renderer . createElement ( "unknown-tag" ) ;
304
304
assert . instanceOf ( result , ProxyViewContainer , "Renderer should create ProxyViewContainer form 'unknown-tag'" ) ;
305
305
} ) ;
306
306
} ) ;
307
307
308
308
309
309
describe ( "Renderer attach/detach" , ( ) => {
310
310
let testApp : TestApp = null ;
311
- let renderer : Renderer = null ;
311
+ let renderer : Renderer2 = null ;
312
312
313
313
before ( ( ) => {
314
314
return TestApp . create ( ) . then ( ( app ) => {
@@ -322,65 +322,57 @@ describe("Renderer attach/detach", () => {
322
322
} ) ;
323
323
324
324
it ( "createElement element with parent attaches element to content view" , ( ) => {
325
- const parent = < ContentView > renderer . createElement ( null , "ContentView" , null ) ;
326
- const button = < Button > renderer . createElement ( parent , "Button" , null ) ;
325
+ const parent = < ContentView > renderer . createElement ( "ContentView" ) ;
326
+ const button = < Button > renderer . createElement ( "Button" ) ;
327
+ renderer . appendChild ( parent , button ) ;
327
328
328
329
assert . equal ( parent . content , button ) ;
329
330
assert . equal ( button . parent , parent ) ;
330
331
} ) ;
331
332
332
333
it ( "createElement element with parent attaches element to layout view" , ( ) => {
333
- const parent = < StackLayout > renderer . createElement ( null , "StackLayout" , null ) ;
334
- const button = < Button > renderer . createElement ( parent , "Button" , null ) ;
334
+ const parent = < StackLayout > renderer . createElement ( "StackLayout" ) ;
335
+ const button = < Button > renderer . createElement ( "Button" ) ;
336
+ renderer . appendChild ( parent , button ) ;
335
337
336
338
assert . equal ( parent . getChildAt ( 0 ) , button ) ;
337
339
assert . equal ( button . parent , parent ) ;
338
340
} ) ;
339
341
340
342
it ( "detachView element removes element from content view" , ( ) => {
341
- const parent = < ContentView > renderer . createElement ( null , "ContentView" , null ) ;
342
- const button = < Button > renderer . createElement ( parent , "Button" , null ) ;
343
+ const parent = < ContentView > renderer . createElement ( "ContentView" ) ;
344
+ const button = < Button > renderer . createElement ( "Button" ) ;
345
+ renderer . appendChild ( parent , button ) ;
343
346
344
- renderer . detachView ( [ button ] ) ;
347
+ renderer . removeChild ( parent , button ) ;
345
348
346
349
assert . isNull ( parent . content ) ;
347
350
assert . isUndefined ( button . parent ) ;
348
351
} ) ;
349
352
350
353
it ( "detachView element removes element from layout view" , ( ) => {
351
- const parent = < StackLayout > renderer . createElement ( null , "StackLayout" , null ) ;
352
- const button = < Button > renderer . createElement ( parent , "Button" , null ) ;
354
+ const parent = < StackLayout > renderer . createElement ( "StackLayout" ) ;
355
+ const button = < Button > renderer . createElement ( "Button" ) ;
356
+ renderer . appendChild ( parent , button ) ;
353
357
354
- renderer . detachView ( [ button ] ) ;
358
+ renderer . removeChild ( parent , button ) ;
355
359
356
360
assert . equal ( parent . getChildrenCount ( ) , 0 ) ;
357
361
assert . isUndefined ( button . parent ) ;
358
362
} ) ;
359
363
360
- it ( "attaching template anchor in content view does not replace its content" , ( ) => {
361
- const parent = < ContentView > renderer . createElement ( null , "ContentView" , null ) ;
362
- const button = < Button > renderer . createElement ( parent , "Button" , null ) ;
364
+ it ( "attaching and detaching comment anchor to content view does not affect its content" , ( ) => {
365
+ const parent = < ContentView > renderer . createElement ( "ContentView" ) ;
366
+ const button = < Button > renderer . createElement ( "Button" ) ;
367
+ renderer . appendChild ( parent , button ) ;
368
+ const anchor = < NgView > renderer . createComment ( "anchor" ) ;
369
+ assert . equal ( parent . content , button , "parent has button as initial content" ) ;
363
370
364
- assert . equal ( parent . content , button ) ;
365
-
366
- const anchor = < NgView > renderer . createTemplateAnchor ( parent ) ;
367
-
368
- assert . equal ( parent . content , button ) ;
369
- assert . equal ( anchor . parent , parent ) ;
370
- assert . equal ( anchor . templateParent , parent ) ;
371
- } ) ;
371
+ renderer . appendChild ( parent , anchor ) ;
372
+ assert . equal ( parent . content , button , "parent still has button as content after inserting anchor" ) ;
372
373
373
- it ( "attaching and detaching template anchor to content view does not affect its content" , ( ) => {
374
- const parent = < ContentView > renderer . createElement ( null , "ContentView" , null ) ;
375
- const button = < Button > renderer . createElement ( parent , "Button" , null ) ;
376
- const anchor = < NgView > renderer . createTemplateAnchor ( null ) ;
377
- assert . equal ( parent . content , button ) ;
378
-
379
- renderer . attachViewAfter ( button , [ anchor ] ) ;
380
- assert . equal ( parent . content , button ) ;
381
-
382
- renderer . detachView ( [ anchor ] ) ;
383
- assert . equal ( parent . content , button ) ;
374
+ renderer . removeChild ( parent , anchor ) ;
375
+ assert . equal ( parent . content , button , "parent has button as content even after removing anchor" ) ;
384
376
} ) ;
385
377
} ) ;
386
378
0 commit comments