@Override InternalNode resolveLayout(Component component) { if (component.canResolve()) { return super.resolveLayout(component); } InternalNode node = ComponentsPools.acquireInternalNode(this); node.appendComponent(new TestComponent(component)); return node; }
@Test public void testCreateLayoutAndResolveNestedTreeWithLayoutSpecCannotMeasure() { Component component = setUpSpyComponentForCreateLayout( false /* isMountSpec */, false /* canMeasure */); component.createLayout(mContext, true); verify(component).onCreateLayout(mContext); verify(mNode).appendComponent(component); verify(mNode, never()).setMeasureFunction(any(YogaMeasureFunction.class)); verify(component).onPrepare(mContext); }
@Test public void testCreateLayoutAndDontResolveNestedTreeWithLayoutSpecCannotMeasure() { Component component = setUpSpyComponentForCreateLayout( false /* isMountSpec */, false /* canMeasure */); component.createLayout(mContext, false); verify(component).onCreateLayout(mContext); verify(mNode).appendComponent(component); verify(mNode, never()).setMeasureFunction(any(YogaMeasureFunction.class)); verify(component).onPrepare(mContext); }
@Test public void testCreateLayoutAndResolveNestedTreeWithMountSpecCannotMeasure() { Component component = setUpSpyComponentForCreateLayout( true /* isMountSpec */, false /* canMeasure */); component.createLayout(mContext, true); verify(component).onCreateLayout(mContext); verify(mNode).appendComponent(component); verify(mNode, never()).setMeasureFunction(any(YogaMeasureFunction.class)); verify(component).onPrepare(mContext); }
@Test public void testCreateLayoutAndDontResolveNestedTreeWithMountSpecCannotMeasure() { Component component = setUpSpyComponentForCreateLayout( true /* isMountSpec */, false /* canMeasure */); component.createLayout(mContext, false); verify(component).onCreateLayout(mContext); verify(mNode).appendComponent(component); verify(mNode, never()).setMeasureFunction(any(YogaMeasureFunction.class)); verify(component).onPrepare(mContext); }
@Test public void testCreateLayoutAndDontResolveNestedTreeWithMountSpecCanMeasure() { Component component = setUpSpyComponentForCreateLayout( true /* isMountSpec */, true /* canMeasure */); component.createLayout(mContext, false); verify(component).onCreateLayout(mContext); verify(mNode).appendComponent(component); verify(mNode).setMeasureFunction(any(YogaMeasureFunction.class)); verify(component).onPrepare(mContext); }
@Test public void testCreateLayoutAndResolveNestedTreeWithMountSpecCanMeasure() { Component component = setUpSpyComponentForCreateLayout( true /* isMountSpec */, true /* canMeasure */); component.createLayout(mContext, true); verify(component).onCreateLayout(mContext); verify(mNode).appendComponent(component); verify(mNode).setMeasureFunction(any(YogaMeasureFunction.class)); verify(component).onPrepare(mContext); }
@Test public void testCreateLayoutAndDontResolveNestedTreeWithLayoutSpecCanMeasure() { Component component = setUpSpyComponentForCreateLayout( false /* isMountSpec */, true /* canMeasure */); component.createLayout(mContext, false); PowerMockito.verifyStatic(); // Calling here to verify static call. ComponentsPools.acquireInternalNode(mContext); verify(component, never()).onCreateLayout( any(ComponentContext.class)); verify(component, never()).onCreateLayoutWithSizeSpec( any(ComponentContext.class), anyInt(), anyInt()); verify(mNode).appendComponent(component); verify(mNode).setMeasureFunction(any(YogaMeasureFunction.class)); verify(component, never()) .onPrepare(any(ComponentContext.class)); }
@Override public InternalNode newLayoutBuilder( Component component, @AttrRes int defStyleAttr, @StyleRes int defStyleRes) { if (component.canResolve()) { return super.newLayoutBuilder(component, defStyleAttr, defStyleRes); } final InternalNode node = ComponentsPools.acquireInternalNode(this); component.updateInternalChildState(this); node.appendComponent(new TestComponent(component)); return node; }
@Test public void testCreateLayoutAndResolveNestedTreeWithLayoutSpecCanMeasure() { Component component = setUpSpyComponentForCreateLayout( false /* isMountSpec */, true /* canMeasure */); mContext.setWidthSpec(mNestedTreeWidthSpec); mContext.setHeightSpec(mNestedTreeHeightSpec); component.createLayout(mContext, true); verify(component).onCreateLayoutWithSizeSpec( mContext, mNestedTreeWidthSpec, mNestedTreeHeightSpec); verify(mNode).appendComponent(component); verify(mNode, never()).setMeasureFunction(any(YogaMeasureFunction.class)); verify(component).onPrepare(mContext); }
node.appendComponent((Component) this); if (TransitionUtils.areTransitionsEnabled(context.getAndroidContext())) { if (needsPreviousRenderData()) {