test(ivy): Have more descriptive names for LView
(#33449)
When debugging `LView`s it is easy to get lost since all of them have the same name. This change does three things: 1. It makes `TView` have an explicit type: - `Host`: for the top level `TView` for bootstrap - `Component`: for the `TView` which represents components template - `Embedded`: for the `TView` which represents an embedded template 2. It changes the name of `LView` to `LHostView`, `LComponentView`, and `LEmbeddedView` depending on the `TView` type. 3. For `LComponentView` and `LEmbeddedView` we also append the name of of the `context` constructor. The result is that we have `LView`s which are name as: `LComponentView_MyComponent` and `LEmbeddedView_NgIfContext`. The above changes will make it easier to understand the structure of the application when debugging. NOTE: All of these are behind `ngDevMode` and will get removed in production application. PR Close #33449
This commit is contained in:

committed by
Andrew Scott

parent
10583f951d
commit
c25503b142
@ -9,7 +9,7 @@ import {addToViewTree, createLContainer, createLView, createTNode, createTView,
|
||||
import {ComponentTemplate} from '../../../src/render3/interfaces/definition';
|
||||
import {TAttributes, TNodeType, TViewNode} from '../../../src/render3/interfaces/node';
|
||||
import {RendererFactory3, domRendererFactory3} from '../../../src/render3/interfaces/renderer';
|
||||
import {LView, LViewFlags, TView} from '../../../src/render3/interfaces/view';
|
||||
import {LView, LViewFlags, TView, TViewType} from '../../../src/render3/interfaces/view';
|
||||
import {insertView} from '../../../src/render3/node_manipulation';
|
||||
|
||||
import {MicroBenchmarkRendererFactory} from './noop_renderer';
|
||||
@ -45,7 +45,7 @@ export function setupTestHarness(
|
||||
templateFn: ComponentTemplate<any>| null, decls: number, vars: number, noOfViews: number,
|
||||
embeddedViewContext: any = {}, consts: TAttributes[] | null = null): TestHarness {
|
||||
// Create a root view with a container
|
||||
const hostTView = createTView(-1, null, 1, 0, null, null, null, null, consts);
|
||||
const hostTView = createTView(TViewType.Root, -1, null, 1, 0, null, null, null, null, consts);
|
||||
const tContainerNode = getOrCreateTNode(hostTView, null, 0, TNodeType.Container, null, null);
|
||||
const hostNode = renderer.createElement('div');
|
||||
const hostLView = createLView(
|
||||
@ -58,7 +58,8 @@ export function setupTestHarness(
|
||||
|
||||
|
||||
// create test embedded views
|
||||
const embeddedTView = createTView(-1, templateFn, decls, vars, null, null, null, null, consts);
|
||||
const embeddedTView =
|
||||
createTView(TViewType.Embedded, -1, templateFn, decls, vars, null, null, null, null, consts);
|
||||
const viewTNode = createTNode(hostTView, null, TNodeType.View, -1, null, null) as TViewNode;
|
||||
|
||||
function createEmbeddedLView(): LView {
|
||||
|
Reference in New Issue
Block a user