-
-
-
+
diff --git a/java/tests/com/facebook/yoga/YGFlexDirectionTest.java b/java/tests/com/facebook/yoga/YGFlexDirectionTest.java
index ecb49c22..12903953 100644
--- a/java/tests/com/facebook/yoga/YGFlexDirectionTest.java
+++ b/java/tests/com/facebook/yoga/YGFlexDirectionTest.java
@@ -1678,137 +1678,166 @@ public class YGFlexDirectionTest {
config.setExperimentalFeatureEnabled(YogaExperimentalFeature.ABSOLUTE_PERCENTAGE_AGAINST_PADDING_EDGE, true);
final YogaNode root = createNode(config);
- root.setFlexDirection(YogaFlexDirection.ROW_REVERSE);
- root.setPosition(YogaEdge.LEFT, 100f);
root.setWidth(100f);
root.setHeight(100f);
final YogaNode root_child0 = createNode(config);
- root_child0.setWidth(10f);
+ root_child0.setFlexDirection(YogaFlexDirection.ROW_REVERSE);
+ root_child0.setPosition(YogaEdge.LEFT, 100f);
+ root_child0.setWidth(100f);
+ root_child0.setHeight(100f);
root.addChildAt(root_child0, 0);
- final YogaNode root_child1 = createNode(config);
- root_child1.setWidth(10f);
- root.addChildAt(root_child1, 1);
+ final YogaNode root_child0_child0 = createNode(config);
+ root_child0_child0.setWidth(10f);
+ root_child0.addChildAt(root_child0_child0, 0);
- final YogaNode root_child2 = createNode(config);
- root_child2.setWidth(10f);
- root.addChildAt(root_child2, 2);
+ final YogaNode root_child0_child1 = createNode(config);
+ root_child0_child1.setWidth(10f);
+ root_child0.addChildAt(root_child0_child1, 1);
+
+ final YogaNode root_child0_child2 = createNode(config);
+ root_child0_child2.setWidth(10f);
+ root_child0.addChildAt(root_child0_child2, 2);
root.setDirection(YogaDirection.LTR);
root.calculateLayout(YogaConstants.UNDEFINED, YogaConstants.UNDEFINED);
- assertEquals(100f, root.getLayoutX(), 0.0f);
+ assertEquals(0f, root.getLayoutX(), 0.0f);
assertEquals(0f, root.getLayoutY(), 0.0f);
assertEquals(100f, root.getLayoutWidth(), 0.0f);
assertEquals(100f, root.getLayoutHeight(), 0.0f);
- assertEquals(90f, root_child0.getLayoutX(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutX(), 0.0f);
assertEquals(0f, root_child0.getLayoutY(), 0.0f);
- assertEquals(10f, root_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutWidth(), 0.0f);
assertEquals(100f, root_child0.getLayoutHeight(), 0.0f);
- assertEquals(80f, root_child1.getLayoutX(), 0.0f);
- assertEquals(0f, root_child1.getLayoutY(), 0.0f);
- assertEquals(10f, root_child1.getLayoutWidth(), 0.0f);
- assertEquals(100f, root_child1.getLayoutHeight(), 0.0f);
+ assertEquals(90f, root_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child0.getLayoutHeight(), 0.0f);
- assertEquals(70f, root_child2.getLayoutX(), 0.0f);
- assertEquals(0f, root_child2.getLayoutY(), 0.0f);
- assertEquals(10f, root_child2.getLayoutWidth(), 0.0f);
- assertEquals(100f, root_child2.getLayoutHeight(), 0.0f);
+ assertEquals(80f, root_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(70f, root_child0_child2.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child2.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child2.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child2.getLayoutHeight(), 0.0f);
root.setDirection(YogaDirection.RTL);
root.calculateLayout(YogaConstants.UNDEFINED, YogaConstants.UNDEFINED);
- assertEquals(100f, root.getLayoutX(), 0.0f);
+ assertEquals(0f, root.getLayoutX(), 0.0f);
assertEquals(0f, root.getLayoutY(), 0.0f);
assertEquals(100f, root.getLayoutWidth(), 0.0f);
assertEquals(100f, root.getLayoutHeight(), 0.0f);
- assertEquals(0f, root_child0.getLayoutX(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutX(), 0.0f);
assertEquals(0f, root_child0.getLayoutY(), 0.0f);
- assertEquals(10f, root_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutWidth(), 0.0f);
assertEquals(100f, root_child0.getLayoutHeight(), 0.0f);
- assertEquals(10f, root_child1.getLayoutX(), 0.0f);
- assertEquals(0f, root_child1.getLayoutY(), 0.0f);
- assertEquals(10f, root_child1.getLayoutWidth(), 0.0f);
- assertEquals(100f, root_child1.getLayoutHeight(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child0.getLayoutHeight(), 0.0f);
- assertEquals(20f, root_child2.getLayoutX(), 0.0f);
- assertEquals(0f, root_child2.getLayoutY(), 0.0f);
- assertEquals(10f, root_child2.getLayoutWidth(), 0.0f);
- assertEquals(100f, root_child2.getLayoutHeight(), 0.0f);
+ assertEquals(10f, root_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(20f, root_child0_child2.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child2.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child2.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child2.getLayoutHeight(), 0.0f);
}
@Test
- @Ignore
public void test_flex_direction_row_reverse_pos_start() {
YogaConfig config = YogaConfigFactory.create();
config.setExperimentalFeatureEnabled(YogaExperimentalFeature.ABSOLUTE_PERCENTAGE_AGAINST_PADDING_EDGE, true);
final YogaNode root = createNode(config);
- root.setFlexDirection(YogaFlexDirection.ROW_REVERSE);
- root.setPosition(YogaEdge.START, 100f);
root.setWidth(100f);
root.setHeight(100f);
final YogaNode root_child0 = createNode(config);
- root_child0.setWidth(10f);
+ root_child0.setFlexDirection(YogaFlexDirection.ROW_REVERSE);
+ root_child0.setPosition(YogaEdge.START, 100f);
+ root_child0.setWidth(100f);
+ root_child0.setHeight(100f);
root.addChildAt(root_child0, 0);
- final YogaNode root_child1 = createNode(config);
- root_child1.setWidth(10f);
- root.addChildAt(root_child1, 1);
+ final YogaNode root_child0_child0 = createNode(config);
+ root_child0_child0.setWidth(10f);
+ root_child0.addChildAt(root_child0_child0, 0);
- final YogaNode root_child2 = createNode(config);
- root_child2.setWidth(10f);
- root.addChildAt(root_child2, 2);
+ final YogaNode root_child0_child1 = createNode(config);
+ root_child0_child1.setWidth(10f);
+ root_child0.addChildAt(root_child0_child1, 1);
+
+ final YogaNode root_child0_child2 = createNode(config);
+ root_child0_child2.setWidth(10f);
+ root_child0.addChildAt(root_child0_child2, 2);
root.setDirection(YogaDirection.LTR);
root.calculateLayout(YogaConstants.UNDEFINED, YogaConstants.UNDEFINED);
- assertEquals(100f, root.getLayoutX(), 0.0f);
+ assertEquals(0f, root.getLayoutX(), 0.0f);
assertEquals(0f, root.getLayoutY(), 0.0f);
assertEquals(100f, root.getLayoutWidth(), 0.0f);
assertEquals(100f, root.getLayoutHeight(), 0.0f);
- assertEquals(90f, root_child0.getLayoutX(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutX(), 0.0f);
assertEquals(0f, root_child0.getLayoutY(), 0.0f);
- assertEquals(10f, root_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutWidth(), 0.0f);
assertEquals(100f, root_child0.getLayoutHeight(), 0.0f);
- assertEquals(80f, root_child1.getLayoutX(), 0.0f);
- assertEquals(0f, root_child1.getLayoutY(), 0.0f);
- assertEquals(10f, root_child1.getLayoutWidth(), 0.0f);
- assertEquals(100f, root_child1.getLayoutHeight(), 0.0f);
+ assertEquals(90f, root_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child0.getLayoutHeight(), 0.0f);
- assertEquals(70f, root_child2.getLayoutX(), 0.0f);
- assertEquals(0f, root_child2.getLayoutY(), 0.0f);
- assertEquals(10f, root_child2.getLayoutWidth(), 0.0f);
- assertEquals(100f, root_child2.getLayoutHeight(), 0.0f);
+ assertEquals(80f, root_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(70f, root_child0_child2.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child2.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child2.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child2.getLayoutHeight(), 0.0f);
root.setDirection(YogaDirection.RTL);
root.calculateLayout(YogaConstants.UNDEFINED, YogaConstants.UNDEFINED);
- assertEquals(-200f, root.getLayoutX(), 0.0f);
+ assertEquals(0f, root.getLayoutX(), 0.0f);
assertEquals(0f, root.getLayoutY(), 0.0f);
assertEquals(100f, root.getLayoutWidth(), 0.0f);
assertEquals(100f, root.getLayoutHeight(), 0.0f);
- assertEquals(0f, root_child0.getLayoutX(), 0.0f);
+ assertEquals(-100f, root_child0.getLayoutX(), 0.0f);
assertEquals(0f, root_child0.getLayoutY(), 0.0f);
- assertEquals(10f, root_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutWidth(), 0.0f);
assertEquals(100f, root_child0.getLayoutHeight(), 0.0f);
- assertEquals(10f, root_child1.getLayoutX(), 0.0f);
- assertEquals(0f, root_child1.getLayoutY(), 0.0f);
- assertEquals(10f, root_child1.getLayoutWidth(), 0.0f);
- assertEquals(100f, root_child1.getLayoutHeight(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child0.getLayoutHeight(), 0.0f);
- assertEquals(20f, root_child2.getLayoutX(), 0.0f);
- assertEquals(0f, root_child2.getLayoutY(), 0.0f);
- assertEquals(10f, root_child2.getLayoutWidth(), 0.0f);
- assertEquals(100f, root_child2.getLayoutHeight(), 0.0f);
+ assertEquals(10f, root_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(20f, root_child0_child2.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child2.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child2.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child2.getLayoutHeight(), 0.0f);
}
@Test
@@ -1818,137 +1847,166 @@ public class YGFlexDirectionTest {
config.setExperimentalFeatureEnabled(YogaExperimentalFeature.ABSOLUTE_PERCENTAGE_AGAINST_PADDING_EDGE, true);
final YogaNode root = createNode(config);
- root.setFlexDirection(YogaFlexDirection.ROW_REVERSE);
- root.setPosition(YogaEdge.RIGHT, 100f);
root.setWidth(100f);
root.setHeight(100f);
final YogaNode root_child0 = createNode(config);
- root_child0.setWidth(10f);
+ root_child0.setFlexDirection(YogaFlexDirection.ROW_REVERSE);
+ root_child0.setPosition(YogaEdge.RIGHT, 100f);
+ root_child0.setWidth(100f);
+ root_child0.setHeight(100f);
root.addChildAt(root_child0, 0);
- final YogaNode root_child1 = createNode(config);
- root_child1.setWidth(10f);
- root.addChildAt(root_child1, 1);
+ final YogaNode root_child0_child0 = createNode(config);
+ root_child0_child0.setWidth(10f);
+ root_child0.addChildAt(root_child0_child0, 0);
- final YogaNode root_child2 = createNode(config);
- root_child2.setWidth(10f);
- root.addChildAt(root_child2, 2);
+ final YogaNode root_child0_child1 = createNode(config);
+ root_child0_child1.setWidth(10f);
+ root_child0.addChildAt(root_child0_child1, 1);
+
+ final YogaNode root_child0_child2 = createNode(config);
+ root_child0_child2.setWidth(10f);
+ root_child0.addChildAt(root_child0_child2, 2);
root.setDirection(YogaDirection.LTR);
root.calculateLayout(YogaConstants.UNDEFINED, YogaConstants.UNDEFINED);
- assertEquals(-200f, root.getLayoutX(), 0.0f);
+ assertEquals(0f, root.getLayoutX(), 0.0f);
assertEquals(0f, root.getLayoutY(), 0.0f);
assertEquals(100f, root.getLayoutWidth(), 0.0f);
assertEquals(100f, root.getLayoutHeight(), 0.0f);
- assertEquals(90f, root_child0.getLayoutX(), 0.0f);
+ assertEquals(-100f, root_child0.getLayoutX(), 0.0f);
assertEquals(0f, root_child0.getLayoutY(), 0.0f);
- assertEquals(10f, root_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutWidth(), 0.0f);
assertEquals(100f, root_child0.getLayoutHeight(), 0.0f);
- assertEquals(80f, root_child1.getLayoutX(), 0.0f);
- assertEquals(0f, root_child1.getLayoutY(), 0.0f);
- assertEquals(10f, root_child1.getLayoutWidth(), 0.0f);
- assertEquals(100f, root_child1.getLayoutHeight(), 0.0f);
+ assertEquals(90f, root_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child0.getLayoutHeight(), 0.0f);
- assertEquals(70f, root_child2.getLayoutX(), 0.0f);
- assertEquals(0f, root_child2.getLayoutY(), 0.0f);
- assertEquals(10f, root_child2.getLayoutWidth(), 0.0f);
- assertEquals(100f, root_child2.getLayoutHeight(), 0.0f);
+ assertEquals(80f, root_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(70f, root_child0_child2.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child2.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child2.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child2.getLayoutHeight(), 0.0f);
root.setDirection(YogaDirection.RTL);
root.calculateLayout(YogaConstants.UNDEFINED, YogaConstants.UNDEFINED);
- assertEquals(-200f, root.getLayoutX(), 0.0f);
+ assertEquals(0f, root.getLayoutX(), 0.0f);
assertEquals(0f, root.getLayoutY(), 0.0f);
assertEquals(100f, root.getLayoutWidth(), 0.0f);
assertEquals(100f, root.getLayoutHeight(), 0.0f);
- assertEquals(0f, root_child0.getLayoutX(), 0.0f);
+ assertEquals(-100f, root_child0.getLayoutX(), 0.0f);
assertEquals(0f, root_child0.getLayoutY(), 0.0f);
- assertEquals(10f, root_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutWidth(), 0.0f);
assertEquals(100f, root_child0.getLayoutHeight(), 0.0f);
- assertEquals(10f, root_child1.getLayoutX(), 0.0f);
- assertEquals(0f, root_child1.getLayoutY(), 0.0f);
- assertEquals(10f, root_child1.getLayoutWidth(), 0.0f);
- assertEquals(100f, root_child1.getLayoutHeight(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child0.getLayoutHeight(), 0.0f);
- assertEquals(20f, root_child2.getLayoutX(), 0.0f);
- assertEquals(0f, root_child2.getLayoutY(), 0.0f);
- assertEquals(10f, root_child2.getLayoutWidth(), 0.0f);
- assertEquals(100f, root_child2.getLayoutHeight(), 0.0f);
+ assertEquals(10f, root_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(20f, root_child0_child2.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child2.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child2.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child2.getLayoutHeight(), 0.0f);
}
@Test
- @Ignore
public void test_flex_direction_row_reverse_pos_end() {
YogaConfig config = YogaConfigFactory.create();
config.setExperimentalFeatureEnabled(YogaExperimentalFeature.ABSOLUTE_PERCENTAGE_AGAINST_PADDING_EDGE, true);
final YogaNode root = createNode(config);
- root.setFlexDirection(YogaFlexDirection.ROW_REVERSE);
- root.setPosition(YogaEdge.END, 100f);
root.setWidth(100f);
root.setHeight(100f);
final YogaNode root_child0 = createNode(config);
- root_child0.setWidth(10f);
+ root_child0.setFlexDirection(YogaFlexDirection.ROW_REVERSE);
+ root_child0.setPosition(YogaEdge.END, 100f);
+ root_child0.setWidth(100f);
+ root_child0.setHeight(100f);
root.addChildAt(root_child0, 0);
- final YogaNode root_child1 = createNode(config);
- root_child1.setWidth(10f);
- root.addChildAt(root_child1, 1);
+ final YogaNode root_child0_child0 = createNode(config);
+ root_child0_child0.setWidth(10f);
+ root_child0.addChildAt(root_child0_child0, 0);
- final YogaNode root_child2 = createNode(config);
- root_child2.setWidth(10f);
- root.addChildAt(root_child2, 2);
+ final YogaNode root_child0_child1 = createNode(config);
+ root_child0_child1.setWidth(10f);
+ root_child0.addChildAt(root_child0_child1, 1);
+
+ final YogaNode root_child0_child2 = createNode(config);
+ root_child0_child2.setWidth(10f);
+ root_child0.addChildAt(root_child0_child2, 2);
root.setDirection(YogaDirection.LTR);
root.calculateLayout(YogaConstants.UNDEFINED, YogaConstants.UNDEFINED);
- assertEquals(-200f, root.getLayoutX(), 0.0f);
+ assertEquals(0f, root.getLayoutX(), 0.0f);
assertEquals(0f, root.getLayoutY(), 0.0f);
assertEquals(100f, root.getLayoutWidth(), 0.0f);
assertEquals(100f, root.getLayoutHeight(), 0.0f);
- assertEquals(90f, root_child0.getLayoutX(), 0.0f);
+ assertEquals(-100f, root_child0.getLayoutX(), 0.0f);
assertEquals(0f, root_child0.getLayoutY(), 0.0f);
- assertEquals(10f, root_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutWidth(), 0.0f);
assertEquals(100f, root_child0.getLayoutHeight(), 0.0f);
- assertEquals(80f, root_child1.getLayoutX(), 0.0f);
- assertEquals(0f, root_child1.getLayoutY(), 0.0f);
- assertEquals(10f, root_child1.getLayoutWidth(), 0.0f);
- assertEquals(100f, root_child1.getLayoutHeight(), 0.0f);
+ assertEquals(90f, root_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child0.getLayoutHeight(), 0.0f);
- assertEquals(70f, root_child2.getLayoutX(), 0.0f);
- assertEquals(0f, root_child2.getLayoutY(), 0.0f);
- assertEquals(10f, root_child2.getLayoutWidth(), 0.0f);
- assertEquals(100f, root_child2.getLayoutHeight(), 0.0f);
+ assertEquals(80f, root_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(70f, root_child0_child2.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child2.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child2.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child2.getLayoutHeight(), 0.0f);
root.setDirection(YogaDirection.RTL);
root.calculateLayout(YogaConstants.UNDEFINED, YogaConstants.UNDEFINED);
- assertEquals(100f, root.getLayoutX(), 0.0f);
+ assertEquals(0f, root.getLayoutX(), 0.0f);
assertEquals(0f, root.getLayoutY(), 0.0f);
assertEquals(100f, root.getLayoutWidth(), 0.0f);
assertEquals(100f, root.getLayoutHeight(), 0.0f);
- assertEquals(0f, root_child0.getLayoutX(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutX(), 0.0f);
assertEquals(0f, root_child0.getLayoutY(), 0.0f);
- assertEquals(10f, root_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutWidth(), 0.0f);
assertEquals(100f, root_child0.getLayoutHeight(), 0.0f);
- assertEquals(10f, root_child1.getLayoutX(), 0.0f);
- assertEquals(0f, root_child1.getLayoutY(), 0.0f);
- assertEquals(10f, root_child1.getLayoutWidth(), 0.0f);
- assertEquals(100f, root_child1.getLayoutHeight(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child0.getLayoutHeight(), 0.0f);
- assertEquals(20f, root_child2.getLayoutX(), 0.0f);
- assertEquals(0f, root_child2.getLayoutY(), 0.0f);
- assertEquals(10f, root_child2.getLayoutWidth(), 0.0f);
- assertEquals(100f, root_child2.getLayoutHeight(), 0.0f);
+ assertEquals(10f, root_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(20f, root_child0_child2.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child2.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child2.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0_child2.getLayoutHeight(), 0.0f);
}
@Test
@@ -1958,67 +2016,82 @@ public class YGFlexDirectionTest {
config.setExperimentalFeatureEnabled(YogaExperimentalFeature.ABSOLUTE_PERCENTAGE_AGAINST_PADDING_EDGE, true);
final YogaNode root = createNode(config);
- root.setFlexDirection(YogaFlexDirection.COLUMN_REVERSE);
- root.setPosition(YogaEdge.TOP, 100f);
root.setWidth(100f);
root.setHeight(100f);
final YogaNode root_child0 = createNode(config);
- root_child0.setWidth(10f);
+ root_child0.setFlexDirection(YogaFlexDirection.COLUMN_REVERSE);
+ root_child0.setPosition(YogaEdge.TOP, 100f);
+ root_child0.setWidth(100f);
+ root_child0.setHeight(100f);
root.addChildAt(root_child0, 0);
- final YogaNode root_child1 = createNode(config);
- root_child1.setWidth(10f);
- root.addChildAt(root_child1, 1);
+ final YogaNode root_child0_child0 = createNode(config);
+ root_child0_child0.setWidth(10f);
+ root_child0.addChildAt(root_child0_child0, 0);
- final YogaNode root_child2 = createNode(config);
- root_child2.setWidth(10f);
- root.addChildAt(root_child2, 2);
+ final YogaNode root_child0_child1 = createNode(config);
+ root_child0_child1.setWidth(10f);
+ root_child0.addChildAt(root_child0_child1, 1);
+
+ final YogaNode root_child0_child2 = createNode(config);
+ root_child0_child2.setWidth(10f);
+ root_child0.addChildAt(root_child0_child2, 2);
root.setDirection(YogaDirection.LTR);
root.calculateLayout(YogaConstants.UNDEFINED, YogaConstants.UNDEFINED);
assertEquals(0f, root.getLayoutX(), 0.0f);
- assertEquals(100f, root.getLayoutY(), 0.0f);
+ assertEquals(0f, root.getLayoutY(), 0.0f);
assertEquals(100f, root.getLayoutWidth(), 0.0f);
assertEquals(100f, root.getLayoutHeight(), 0.0f);
assertEquals(0f, root_child0.getLayoutX(), 0.0f);
assertEquals(100f, root_child0.getLayoutY(), 0.0f);
- assertEquals(10f, root_child0.getLayoutWidth(), 0.0f);
- assertEquals(0f, root_child0.getLayoutHeight(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutHeight(), 0.0f);
- assertEquals(0f, root_child1.getLayoutX(), 0.0f);
- assertEquals(100f, root_child1.getLayoutY(), 0.0f);
- assertEquals(10f, root_child1.getLayoutWidth(), 0.0f);
- assertEquals(0f, root_child1.getLayoutHeight(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(100f, root_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutHeight(), 0.0f);
- assertEquals(0f, root_child2.getLayoutX(), 0.0f);
- assertEquals(100f, root_child2.getLayoutY(), 0.0f);
- assertEquals(10f, root_child2.getLayoutWidth(), 0.0f);
- assertEquals(0f, root_child2.getLayoutHeight(), 0.0f);
+ assertEquals(0f, root_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(100f, root_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0_child2.getLayoutX(), 0.0f);
+ assertEquals(100f, root_child0_child2.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child2.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child2.getLayoutHeight(), 0.0f);
root.setDirection(YogaDirection.RTL);
root.calculateLayout(YogaConstants.UNDEFINED, YogaConstants.UNDEFINED);
assertEquals(0f, root.getLayoutX(), 0.0f);
- assertEquals(100f, root.getLayoutY(), 0.0f);
+ assertEquals(0f, root.getLayoutY(), 0.0f);
assertEquals(100f, root.getLayoutWidth(), 0.0f);
assertEquals(100f, root.getLayoutHeight(), 0.0f);
- assertEquals(90f, root_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0.getLayoutX(), 0.0f);
assertEquals(100f, root_child0.getLayoutY(), 0.0f);
- assertEquals(10f, root_child0.getLayoutWidth(), 0.0f);
- assertEquals(0f, root_child0.getLayoutHeight(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutHeight(), 0.0f);
- assertEquals(90f, root_child1.getLayoutX(), 0.0f);
- assertEquals(100f, root_child1.getLayoutY(), 0.0f);
- assertEquals(10f, root_child1.getLayoutWidth(), 0.0f);
- assertEquals(0f, root_child1.getLayoutHeight(), 0.0f);
+ assertEquals(90f, root_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(100f, root_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutHeight(), 0.0f);
- assertEquals(90f, root_child2.getLayoutX(), 0.0f);
- assertEquals(100f, root_child2.getLayoutY(), 0.0f);
- assertEquals(10f, root_child2.getLayoutWidth(), 0.0f);
- assertEquals(0f, root_child2.getLayoutHeight(), 0.0f);
+ assertEquals(90f, root_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(100f, root_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(90f, root_child0_child2.getLayoutX(), 0.0f);
+ assertEquals(100f, root_child0_child2.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child2.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child2.getLayoutHeight(), 0.0f);
}
@Test
@@ -2028,67 +2101,82 @@ public class YGFlexDirectionTest {
config.setExperimentalFeatureEnabled(YogaExperimentalFeature.ABSOLUTE_PERCENTAGE_AGAINST_PADDING_EDGE, true);
final YogaNode root = createNode(config);
- root.setFlexDirection(YogaFlexDirection.COLUMN_REVERSE);
- root.setPosition(YogaEdge.BOTTOM, 100f);
root.setWidth(100f);
root.setHeight(100f);
final YogaNode root_child0 = createNode(config);
- root_child0.setWidth(10f);
+ root_child0.setFlexDirection(YogaFlexDirection.COLUMN_REVERSE);
+ root_child0.setPosition(YogaEdge.BOTTOM, 100f);
+ root_child0.setWidth(100f);
+ root_child0.setHeight(100f);
root.addChildAt(root_child0, 0);
- final YogaNode root_child1 = createNode(config);
- root_child1.setWidth(10f);
- root.addChildAt(root_child1, 1);
+ final YogaNode root_child0_child0 = createNode(config);
+ root_child0_child0.setWidth(10f);
+ root_child0.addChildAt(root_child0_child0, 0);
- final YogaNode root_child2 = createNode(config);
- root_child2.setWidth(10f);
- root.addChildAt(root_child2, 2);
+ final YogaNode root_child0_child1 = createNode(config);
+ root_child0_child1.setWidth(10f);
+ root_child0.addChildAt(root_child0_child1, 1);
+
+ final YogaNode root_child0_child2 = createNode(config);
+ root_child0_child2.setWidth(10f);
+ root_child0.addChildAt(root_child0_child2, 2);
root.setDirection(YogaDirection.LTR);
root.calculateLayout(YogaConstants.UNDEFINED, YogaConstants.UNDEFINED);
assertEquals(0f, root.getLayoutX(), 0.0f);
- assertEquals(-200f, root.getLayoutY(), 0.0f);
+ assertEquals(0f, root.getLayoutY(), 0.0f);
assertEquals(100f, root.getLayoutWidth(), 0.0f);
assertEquals(100f, root.getLayoutHeight(), 0.0f);
assertEquals(0f, root_child0.getLayoutX(), 0.0f);
- assertEquals(100f, root_child0.getLayoutY(), 0.0f);
- assertEquals(10f, root_child0.getLayoutWidth(), 0.0f);
- assertEquals(0f, root_child0.getLayoutHeight(), 0.0f);
+ assertEquals(-100f, root_child0.getLayoutY(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutHeight(), 0.0f);
- assertEquals(0f, root_child1.getLayoutX(), 0.0f);
- assertEquals(100f, root_child1.getLayoutY(), 0.0f);
- assertEquals(10f, root_child1.getLayoutWidth(), 0.0f);
- assertEquals(0f, root_child1.getLayoutHeight(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(100f, root_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutHeight(), 0.0f);
- assertEquals(0f, root_child2.getLayoutX(), 0.0f);
- assertEquals(100f, root_child2.getLayoutY(), 0.0f);
- assertEquals(10f, root_child2.getLayoutWidth(), 0.0f);
- assertEquals(0f, root_child2.getLayoutHeight(), 0.0f);
+ assertEquals(0f, root_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(100f, root_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0_child2.getLayoutX(), 0.0f);
+ assertEquals(100f, root_child0_child2.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child2.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child2.getLayoutHeight(), 0.0f);
root.setDirection(YogaDirection.RTL);
root.calculateLayout(YogaConstants.UNDEFINED, YogaConstants.UNDEFINED);
assertEquals(0f, root.getLayoutX(), 0.0f);
- assertEquals(-200f, root.getLayoutY(), 0.0f);
+ assertEquals(0f, root.getLayoutY(), 0.0f);
assertEquals(100f, root.getLayoutWidth(), 0.0f);
assertEquals(100f, root.getLayoutHeight(), 0.0f);
- assertEquals(90f, root_child0.getLayoutX(), 0.0f);
- assertEquals(100f, root_child0.getLayoutY(), 0.0f);
- assertEquals(10f, root_child0.getLayoutWidth(), 0.0f);
- assertEquals(0f, root_child0.getLayoutHeight(), 0.0f);
+ assertEquals(0f, root_child0.getLayoutX(), 0.0f);
+ assertEquals(-100f, root_child0.getLayoutY(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutWidth(), 0.0f);
+ assertEquals(100f, root_child0.getLayoutHeight(), 0.0f);
- assertEquals(90f, root_child1.getLayoutX(), 0.0f);
- assertEquals(100f, root_child1.getLayoutY(), 0.0f);
- assertEquals(10f, root_child1.getLayoutWidth(), 0.0f);
- assertEquals(0f, root_child1.getLayoutHeight(), 0.0f);
+ assertEquals(90f, root_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(100f, root_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutHeight(), 0.0f);
- assertEquals(90f, root_child2.getLayoutX(), 0.0f);
- assertEquals(100f, root_child2.getLayoutY(), 0.0f);
- assertEquals(10f, root_child2.getLayoutWidth(), 0.0f);
- assertEquals(0f, root_child2.getLayoutHeight(), 0.0f);
+ assertEquals(90f, root_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(100f, root_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(90f, root_child0_child2.getLayoutX(), 0.0f);
+ assertEquals(100f, root_child0_child2.getLayoutY(), 0.0f);
+ assertEquals(10f, root_child0_child2.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child2.getLayoutHeight(), 0.0f);
}
private YogaNode createNode(YogaConfig config) {
diff --git a/javascript/tests/generated/YGFlexDirectionTest.test.ts b/javascript/tests/generated/YGFlexDirectionTest.test.ts
index b3330ea8..a9b9c6b7 100644
--- a/javascript/tests/generated/YGFlexDirectionTest.test.ts
+++ b/javascript/tests/generated/YGFlexDirectionTest.test.ts
@@ -1823,65 +1823,80 @@ test.skip('flex_direction_row_reverse_pos_left', () => {
try {
root = Yoga.Node.create(config);
- root.setFlexDirection(FlexDirection.RowReverse);
- root.setPosition(Edge.Left, 100);
root.setWidth(100);
root.setHeight(100);
const root_child0 = Yoga.Node.create(config);
- root_child0.setWidth(10);
+ root_child0.setFlexDirection(FlexDirection.RowReverse);
+ root_child0.setPosition(Edge.Left, 100);
+ root_child0.setWidth(100);
+ root_child0.setHeight(100);
root.insertChild(root_child0, 0);
- const root_child1 = Yoga.Node.create(config);
- root_child1.setWidth(10);
- root.insertChild(root_child1, 1);
+ const root_child0_child0 = Yoga.Node.create(config);
+ root_child0_child0.setWidth(10);
+ root_child0.insertChild(root_child0_child0, 0);
- const root_child2 = Yoga.Node.create(config);
- root_child2.setWidth(10);
- root.insertChild(root_child2, 2);
+ const root_child0_child1 = Yoga.Node.create(config);
+ root_child0_child1.setWidth(10);
+ root_child0.insertChild(root_child0_child1, 1);
+
+ const root_child0_child2 = Yoga.Node.create(config);
+ root_child0_child2.setWidth(10);
+ root_child0.insertChild(root_child0_child2, 2);
root.calculateLayout(undefined, undefined, Direction.LTR);
- expect(root.getComputedLeft()).toBe(100);
+ expect(root.getComputedLeft()).toBe(0);
expect(root.getComputedTop()).toBe(0);
expect(root.getComputedWidth()).toBe(100);
expect(root.getComputedHeight()).toBe(100);
- expect(root_child0.getComputedLeft()).toBe(90);
+ expect(root_child0.getComputedLeft()).toBe(100);
expect(root_child0.getComputedTop()).toBe(0);
- expect(root_child0.getComputedWidth()).toBe(10);
+ expect(root_child0.getComputedWidth()).toBe(100);
expect(root_child0.getComputedHeight()).toBe(100);
- expect(root_child1.getComputedLeft()).toBe(80);
- expect(root_child1.getComputedTop()).toBe(0);
- expect(root_child1.getComputedWidth()).toBe(10);
- expect(root_child1.getComputedHeight()).toBe(100);
+ expect(root_child0_child0.getComputedLeft()).toBe(90);
+ expect(root_child0_child0.getComputedTop()).toBe(0);
+ expect(root_child0_child0.getComputedWidth()).toBe(10);
+ expect(root_child0_child0.getComputedHeight()).toBe(100);
- expect(root_child2.getComputedLeft()).toBe(70);
- expect(root_child2.getComputedTop()).toBe(0);
- expect(root_child2.getComputedWidth()).toBe(10);
- expect(root_child2.getComputedHeight()).toBe(100);
+ expect(root_child0_child1.getComputedLeft()).toBe(80);
+ expect(root_child0_child1.getComputedTop()).toBe(0);
+ expect(root_child0_child1.getComputedWidth()).toBe(10);
+ expect(root_child0_child1.getComputedHeight()).toBe(100);
+
+ expect(root_child0_child2.getComputedLeft()).toBe(70);
+ expect(root_child0_child2.getComputedTop()).toBe(0);
+ expect(root_child0_child2.getComputedWidth()).toBe(10);
+ expect(root_child0_child2.getComputedHeight()).toBe(100);
root.calculateLayout(undefined, undefined, Direction.RTL);
- expect(root.getComputedLeft()).toBe(100);
+ expect(root.getComputedLeft()).toBe(0);
expect(root.getComputedTop()).toBe(0);
expect(root.getComputedWidth()).toBe(100);
expect(root.getComputedHeight()).toBe(100);
- expect(root_child0.getComputedLeft()).toBe(0);
+ expect(root_child0.getComputedLeft()).toBe(100);
expect(root_child0.getComputedTop()).toBe(0);
- expect(root_child0.getComputedWidth()).toBe(10);
+ expect(root_child0.getComputedWidth()).toBe(100);
expect(root_child0.getComputedHeight()).toBe(100);
- expect(root_child1.getComputedLeft()).toBe(10);
- expect(root_child1.getComputedTop()).toBe(0);
- expect(root_child1.getComputedWidth()).toBe(10);
- expect(root_child1.getComputedHeight()).toBe(100);
+ expect(root_child0_child0.getComputedLeft()).toBe(0);
+ expect(root_child0_child0.getComputedTop()).toBe(0);
+ expect(root_child0_child0.getComputedWidth()).toBe(10);
+ expect(root_child0_child0.getComputedHeight()).toBe(100);
- expect(root_child2.getComputedLeft()).toBe(20);
- expect(root_child2.getComputedTop()).toBe(0);
- expect(root_child2.getComputedWidth()).toBe(10);
- expect(root_child2.getComputedHeight()).toBe(100);
+ expect(root_child0_child1.getComputedLeft()).toBe(10);
+ expect(root_child0_child1.getComputedTop()).toBe(0);
+ expect(root_child0_child1.getComputedWidth()).toBe(10);
+ expect(root_child0_child1.getComputedHeight()).toBe(100);
+
+ expect(root_child0_child2.getComputedLeft()).toBe(20);
+ expect(root_child0_child2.getComputedTop()).toBe(0);
+ expect(root_child0_child2.getComputedWidth()).toBe(10);
+ expect(root_child0_child2.getComputedHeight()).toBe(100);
} finally {
if (typeof root !== 'undefined') {
root.freeRecursive();
@@ -1890,7 +1905,7 @@ test.skip('flex_direction_row_reverse_pos_left', () => {
config.free();
}
});
-test.skip('flex_direction_row_reverse_pos_start', () => {
+test('flex_direction_row_reverse_pos_start', () => {
const config = Yoga.Config.create();
let root;
@@ -1898,65 +1913,80 @@ test.skip('flex_direction_row_reverse_pos_start', () => {
try {
root = Yoga.Node.create(config);
- root.setFlexDirection(FlexDirection.RowReverse);
- root.setPosition(Edge.Start, 100);
root.setWidth(100);
root.setHeight(100);
const root_child0 = Yoga.Node.create(config);
- root_child0.setWidth(10);
+ root_child0.setFlexDirection(FlexDirection.RowReverse);
+ root_child0.setPosition(Edge.Start, 100);
+ root_child0.setWidth(100);
+ root_child0.setHeight(100);
root.insertChild(root_child0, 0);
- const root_child1 = Yoga.Node.create(config);
- root_child1.setWidth(10);
- root.insertChild(root_child1, 1);
+ const root_child0_child0 = Yoga.Node.create(config);
+ root_child0_child0.setWidth(10);
+ root_child0.insertChild(root_child0_child0, 0);
- const root_child2 = Yoga.Node.create(config);
- root_child2.setWidth(10);
- root.insertChild(root_child2, 2);
+ const root_child0_child1 = Yoga.Node.create(config);
+ root_child0_child1.setWidth(10);
+ root_child0.insertChild(root_child0_child1, 1);
+
+ const root_child0_child2 = Yoga.Node.create(config);
+ root_child0_child2.setWidth(10);
+ root_child0.insertChild(root_child0_child2, 2);
root.calculateLayout(undefined, undefined, Direction.LTR);
- expect(root.getComputedLeft()).toBe(100);
+ expect(root.getComputedLeft()).toBe(0);
expect(root.getComputedTop()).toBe(0);
expect(root.getComputedWidth()).toBe(100);
expect(root.getComputedHeight()).toBe(100);
- expect(root_child0.getComputedLeft()).toBe(90);
+ expect(root_child0.getComputedLeft()).toBe(100);
expect(root_child0.getComputedTop()).toBe(0);
- expect(root_child0.getComputedWidth()).toBe(10);
+ expect(root_child0.getComputedWidth()).toBe(100);
expect(root_child0.getComputedHeight()).toBe(100);
- expect(root_child1.getComputedLeft()).toBe(80);
- expect(root_child1.getComputedTop()).toBe(0);
- expect(root_child1.getComputedWidth()).toBe(10);
- expect(root_child1.getComputedHeight()).toBe(100);
+ expect(root_child0_child0.getComputedLeft()).toBe(90);
+ expect(root_child0_child0.getComputedTop()).toBe(0);
+ expect(root_child0_child0.getComputedWidth()).toBe(10);
+ expect(root_child0_child0.getComputedHeight()).toBe(100);
- expect(root_child2.getComputedLeft()).toBe(70);
- expect(root_child2.getComputedTop()).toBe(0);
- expect(root_child2.getComputedWidth()).toBe(10);
- expect(root_child2.getComputedHeight()).toBe(100);
+ expect(root_child0_child1.getComputedLeft()).toBe(80);
+ expect(root_child0_child1.getComputedTop()).toBe(0);
+ expect(root_child0_child1.getComputedWidth()).toBe(10);
+ expect(root_child0_child1.getComputedHeight()).toBe(100);
+
+ expect(root_child0_child2.getComputedLeft()).toBe(70);
+ expect(root_child0_child2.getComputedTop()).toBe(0);
+ expect(root_child0_child2.getComputedWidth()).toBe(10);
+ expect(root_child0_child2.getComputedHeight()).toBe(100);
root.calculateLayout(undefined, undefined, Direction.RTL);
- expect(root.getComputedLeft()).toBe(-200);
+ expect(root.getComputedLeft()).toBe(0);
expect(root.getComputedTop()).toBe(0);
expect(root.getComputedWidth()).toBe(100);
expect(root.getComputedHeight()).toBe(100);
- expect(root_child0.getComputedLeft()).toBe(0);
+ expect(root_child0.getComputedLeft()).toBe(-100);
expect(root_child0.getComputedTop()).toBe(0);
- expect(root_child0.getComputedWidth()).toBe(10);
+ expect(root_child0.getComputedWidth()).toBe(100);
expect(root_child0.getComputedHeight()).toBe(100);
- expect(root_child1.getComputedLeft()).toBe(10);
- expect(root_child1.getComputedTop()).toBe(0);
- expect(root_child1.getComputedWidth()).toBe(10);
- expect(root_child1.getComputedHeight()).toBe(100);
+ expect(root_child0_child0.getComputedLeft()).toBe(0);
+ expect(root_child0_child0.getComputedTop()).toBe(0);
+ expect(root_child0_child0.getComputedWidth()).toBe(10);
+ expect(root_child0_child0.getComputedHeight()).toBe(100);
- expect(root_child2.getComputedLeft()).toBe(20);
- expect(root_child2.getComputedTop()).toBe(0);
- expect(root_child2.getComputedWidth()).toBe(10);
- expect(root_child2.getComputedHeight()).toBe(100);
+ expect(root_child0_child1.getComputedLeft()).toBe(10);
+ expect(root_child0_child1.getComputedTop()).toBe(0);
+ expect(root_child0_child1.getComputedWidth()).toBe(10);
+ expect(root_child0_child1.getComputedHeight()).toBe(100);
+
+ expect(root_child0_child2.getComputedLeft()).toBe(20);
+ expect(root_child0_child2.getComputedTop()).toBe(0);
+ expect(root_child0_child2.getComputedWidth()).toBe(10);
+ expect(root_child0_child2.getComputedHeight()).toBe(100);
} finally {
if (typeof root !== 'undefined') {
root.freeRecursive();
@@ -1973,65 +2003,80 @@ test.skip('flex_direction_row_reverse_pos_right', () => {
try {
root = Yoga.Node.create(config);
- root.setFlexDirection(FlexDirection.RowReverse);
- root.setPosition(Edge.Right, 100);
root.setWidth(100);
root.setHeight(100);
const root_child0 = Yoga.Node.create(config);
- root_child0.setWidth(10);
+ root_child0.setFlexDirection(FlexDirection.RowReverse);
+ root_child0.setPosition(Edge.Right, 100);
+ root_child0.setWidth(100);
+ root_child0.setHeight(100);
root.insertChild(root_child0, 0);
- const root_child1 = Yoga.Node.create(config);
- root_child1.setWidth(10);
- root.insertChild(root_child1, 1);
+ const root_child0_child0 = Yoga.Node.create(config);
+ root_child0_child0.setWidth(10);
+ root_child0.insertChild(root_child0_child0, 0);
- const root_child2 = Yoga.Node.create(config);
- root_child2.setWidth(10);
- root.insertChild(root_child2, 2);
+ const root_child0_child1 = Yoga.Node.create(config);
+ root_child0_child1.setWidth(10);
+ root_child0.insertChild(root_child0_child1, 1);
+
+ const root_child0_child2 = Yoga.Node.create(config);
+ root_child0_child2.setWidth(10);
+ root_child0.insertChild(root_child0_child2, 2);
root.calculateLayout(undefined, undefined, Direction.LTR);
- expect(root.getComputedLeft()).toBe(-200);
+ expect(root.getComputedLeft()).toBe(0);
expect(root.getComputedTop()).toBe(0);
expect(root.getComputedWidth()).toBe(100);
expect(root.getComputedHeight()).toBe(100);
- expect(root_child0.getComputedLeft()).toBe(90);
+ expect(root_child0.getComputedLeft()).toBe(-100);
expect(root_child0.getComputedTop()).toBe(0);
- expect(root_child0.getComputedWidth()).toBe(10);
+ expect(root_child0.getComputedWidth()).toBe(100);
expect(root_child0.getComputedHeight()).toBe(100);
- expect(root_child1.getComputedLeft()).toBe(80);
- expect(root_child1.getComputedTop()).toBe(0);
- expect(root_child1.getComputedWidth()).toBe(10);
- expect(root_child1.getComputedHeight()).toBe(100);
+ expect(root_child0_child0.getComputedLeft()).toBe(90);
+ expect(root_child0_child0.getComputedTop()).toBe(0);
+ expect(root_child0_child0.getComputedWidth()).toBe(10);
+ expect(root_child0_child0.getComputedHeight()).toBe(100);
- expect(root_child2.getComputedLeft()).toBe(70);
- expect(root_child2.getComputedTop()).toBe(0);
- expect(root_child2.getComputedWidth()).toBe(10);
- expect(root_child2.getComputedHeight()).toBe(100);
+ expect(root_child0_child1.getComputedLeft()).toBe(80);
+ expect(root_child0_child1.getComputedTop()).toBe(0);
+ expect(root_child0_child1.getComputedWidth()).toBe(10);
+ expect(root_child0_child1.getComputedHeight()).toBe(100);
+
+ expect(root_child0_child2.getComputedLeft()).toBe(70);
+ expect(root_child0_child2.getComputedTop()).toBe(0);
+ expect(root_child0_child2.getComputedWidth()).toBe(10);
+ expect(root_child0_child2.getComputedHeight()).toBe(100);
root.calculateLayout(undefined, undefined, Direction.RTL);
- expect(root.getComputedLeft()).toBe(-200);
+ expect(root.getComputedLeft()).toBe(0);
expect(root.getComputedTop()).toBe(0);
expect(root.getComputedWidth()).toBe(100);
expect(root.getComputedHeight()).toBe(100);
- expect(root_child0.getComputedLeft()).toBe(0);
+ expect(root_child0.getComputedLeft()).toBe(-100);
expect(root_child0.getComputedTop()).toBe(0);
- expect(root_child0.getComputedWidth()).toBe(10);
+ expect(root_child0.getComputedWidth()).toBe(100);
expect(root_child0.getComputedHeight()).toBe(100);
- expect(root_child1.getComputedLeft()).toBe(10);
- expect(root_child1.getComputedTop()).toBe(0);
- expect(root_child1.getComputedWidth()).toBe(10);
- expect(root_child1.getComputedHeight()).toBe(100);
+ expect(root_child0_child0.getComputedLeft()).toBe(0);
+ expect(root_child0_child0.getComputedTop()).toBe(0);
+ expect(root_child0_child0.getComputedWidth()).toBe(10);
+ expect(root_child0_child0.getComputedHeight()).toBe(100);
- expect(root_child2.getComputedLeft()).toBe(20);
- expect(root_child2.getComputedTop()).toBe(0);
- expect(root_child2.getComputedWidth()).toBe(10);
- expect(root_child2.getComputedHeight()).toBe(100);
+ expect(root_child0_child1.getComputedLeft()).toBe(10);
+ expect(root_child0_child1.getComputedTop()).toBe(0);
+ expect(root_child0_child1.getComputedWidth()).toBe(10);
+ expect(root_child0_child1.getComputedHeight()).toBe(100);
+
+ expect(root_child0_child2.getComputedLeft()).toBe(20);
+ expect(root_child0_child2.getComputedTop()).toBe(0);
+ expect(root_child0_child2.getComputedWidth()).toBe(10);
+ expect(root_child0_child2.getComputedHeight()).toBe(100);
} finally {
if (typeof root !== 'undefined') {
root.freeRecursive();
@@ -2040,7 +2085,7 @@ test.skip('flex_direction_row_reverse_pos_right', () => {
config.free();
}
});
-test.skip('flex_direction_row_reverse_pos_end', () => {
+test('flex_direction_row_reverse_pos_end', () => {
const config = Yoga.Config.create();
let root;
@@ -2048,65 +2093,80 @@ test.skip('flex_direction_row_reverse_pos_end', () => {
try {
root = Yoga.Node.create(config);
- root.setFlexDirection(FlexDirection.RowReverse);
- root.setPosition(Edge.End, 100);
root.setWidth(100);
root.setHeight(100);
const root_child0 = Yoga.Node.create(config);
- root_child0.setWidth(10);
+ root_child0.setFlexDirection(FlexDirection.RowReverse);
+ root_child0.setPosition(Edge.End, 100);
+ root_child0.setWidth(100);
+ root_child0.setHeight(100);
root.insertChild(root_child0, 0);
- const root_child1 = Yoga.Node.create(config);
- root_child1.setWidth(10);
- root.insertChild(root_child1, 1);
+ const root_child0_child0 = Yoga.Node.create(config);
+ root_child0_child0.setWidth(10);
+ root_child0.insertChild(root_child0_child0, 0);
- const root_child2 = Yoga.Node.create(config);
- root_child2.setWidth(10);
- root.insertChild(root_child2, 2);
+ const root_child0_child1 = Yoga.Node.create(config);
+ root_child0_child1.setWidth(10);
+ root_child0.insertChild(root_child0_child1, 1);
+
+ const root_child0_child2 = Yoga.Node.create(config);
+ root_child0_child2.setWidth(10);
+ root_child0.insertChild(root_child0_child2, 2);
root.calculateLayout(undefined, undefined, Direction.LTR);
- expect(root.getComputedLeft()).toBe(-200);
+ expect(root.getComputedLeft()).toBe(0);
expect(root.getComputedTop()).toBe(0);
expect(root.getComputedWidth()).toBe(100);
expect(root.getComputedHeight()).toBe(100);
- expect(root_child0.getComputedLeft()).toBe(90);
+ expect(root_child0.getComputedLeft()).toBe(-100);
expect(root_child0.getComputedTop()).toBe(0);
- expect(root_child0.getComputedWidth()).toBe(10);
+ expect(root_child0.getComputedWidth()).toBe(100);
expect(root_child0.getComputedHeight()).toBe(100);
- expect(root_child1.getComputedLeft()).toBe(80);
- expect(root_child1.getComputedTop()).toBe(0);
- expect(root_child1.getComputedWidth()).toBe(10);
- expect(root_child1.getComputedHeight()).toBe(100);
+ expect(root_child0_child0.getComputedLeft()).toBe(90);
+ expect(root_child0_child0.getComputedTop()).toBe(0);
+ expect(root_child0_child0.getComputedWidth()).toBe(10);
+ expect(root_child0_child0.getComputedHeight()).toBe(100);
- expect(root_child2.getComputedLeft()).toBe(70);
- expect(root_child2.getComputedTop()).toBe(0);
- expect(root_child2.getComputedWidth()).toBe(10);
- expect(root_child2.getComputedHeight()).toBe(100);
+ expect(root_child0_child1.getComputedLeft()).toBe(80);
+ expect(root_child0_child1.getComputedTop()).toBe(0);
+ expect(root_child0_child1.getComputedWidth()).toBe(10);
+ expect(root_child0_child1.getComputedHeight()).toBe(100);
+
+ expect(root_child0_child2.getComputedLeft()).toBe(70);
+ expect(root_child0_child2.getComputedTop()).toBe(0);
+ expect(root_child0_child2.getComputedWidth()).toBe(10);
+ expect(root_child0_child2.getComputedHeight()).toBe(100);
root.calculateLayout(undefined, undefined, Direction.RTL);
- expect(root.getComputedLeft()).toBe(100);
+ expect(root.getComputedLeft()).toBe(0);
expect(root.getComputedTop()).toBe(0);
expect(root.getComputedWidth()).toBe(100);
expect(root.getComputedHeight()).toBe(100);
- expect(root_child0.getComputedLeft()).toBe(0);
+ expect(root_child0.getComputedLeft()).toBe(100);
expect(root_child0.getComputedTop()).toBe(0);
- expect(root_child0.getComputedWidth()).toBe(10);
+ expect(root_child0.getComputedWidth()).toBe(100);
expect(root_child0.getComputedHeight()).toBe(100);
- expect(root_child1.getComputedLeft()).toBe(10);
- expect(root_child1.getComputedTop()).toBe(0);
- expect(root_child1.getComputedWidth()).toBe(10);
- expect(root_child1.getComputedHeight()).toBe(100);
+ expect(root_child0_child0.getComputedLeft()).toBe(0);
+ expect(root_child0_child0.getComputedTop()).toBe(0);
+ expect(root_child0_child0.getComputedWidth()).toBe(10);
+ expect(root_child0_child0.getComputedHeight()).toBe(100);
- expect(root_child2.getComputedLeft()).toBe(20);
- expect(root_child2.getComputedTop()).toBe(0);
- expect(root_child2.getComputedWidth()).toBe(10);
- expect(root_child2.getComputedHeight()).toBe(100);
+ expect(root_child0_child1.getComputedLeft()).toBe(10);
+ expect(root_child0_child1.getComputedTop()).toBe(0);
+ expect(root_child0_child1.getComputedWidth()).toBe(10);
+ expect(root_child0_child1.getComputedHeight()).toBe(100);
+
+ expect(root_child0_child2.getComputedLeft()).toBe(20);
+ expect(root_child0_child2.getComputedTop()).toBe(0);
+ expect(root_child0_child2.getComputedWidth()).toBe(10);
+ expect(root_child0_child2.getComputedHeight()).toBe(100);
} finally {
if (typeof root !== 'undefined') {
root.freeRecursive();
@@ -2123,65 +2183,80 @@ test.skip('flex_direction_column_reverse_pos_top', () => {
try {
root = Yoga.Node.create(config);
- root.setFlexDirection(FlexDirection.ColumnReverse);
- root.setPosition(Edge.Top, 100);
root.setWidth(100);
root.setHeight(100);
const root_child0 = Yoga.Node.create(config);
- root_child0.setWidth(10);
+ root_child0.setFlexDirection(FlexDirection.ColumnReverse);
+ root_child0.setPosition(Edge.Top, 100);
+ root_child0.setWidth(100);
+ root_child0.setHeight(100);
root.insertChild(root_child0, 0);
- const root_child1 = Yoga.Node.create(config);
- root_child1.setWidth(10);
- root.insertChild(root_child1, 1);
+ const root_child0_child0 = Yoga.Node.create(config);
+ root_child0_child0.setWidth(10);
+ root_child0.insertChild(root_child0_child0, 0);
- const root_child2 = Yoga.Node.create(config);
- root_child2.setWidth(10);
- root.insertChild(root_child2, 2);
+ const root_child0_child1 = Yoga.Node.create(config);
+ root_child0_child1.setWidth(10);
+ root_child0.insertChild(root_child0_child1, 1);
+
+ const root_child0_child2 = Yoga.Node.create(config);
+ root_child0_child2.setWidth(10);
+ root_child0.insertChild(root_child0_child2, 2);
root.calculateLayout(undefined, undefined, Direction.LTR);
expect(root.getComputedLeft()).toBe(0);
- expect(root.getComputedTop()).toBe(100);
+ expect(root.getComputedTop()).toBe(0);
expect(root.getComputedWidth()).toBe(100);
expect(root.getComputedHeight()).toBe(100);
expect(root_child0.getComputedLeft()).toBe(0);
expect(root_child0.getComputedTop()).toBe(100);
- expect(root_child0.getComputedWidth()).toBe(10);
- expect(root_child0.getComputedHeight()).toBe(0);
+ expect(root_child0.getComputedWidth()).toBe(100);
+ expect(root_child0.getComputedHeight()).toBe(100);
- expect(root_child1.getComputedLeft()).toBe(0);
- expect(root_child1.getComputedTop()).toBe(100);
- expect(root_child1.getComputedWidth()).toBe(10);
- expect(root_child1.getComputedHeight()).toBe(0);
+ expect(root_child0_child0.getComputedLeft()).toBe(0);
+ expect(root_child0_child0.getComputedTop()).toBe(100);
+ expect(root_child0_child0.getComputedWidth()).toBe(10);
+ expect(root_child0_child0.getComputedHeight()).toBe(0);
- expect(root_child2.getComputedLeft()).toBe(0);
- expect(root_child2.getComputedTop()).toBe(100);
- expect(root_child2.getComputedWidth()).toBe(10);
- expect(root_child2.getComputedHeight()).toBe(0);
+ expect(root_child0_child1.getComputedLeft()).toBe(0);
+ expect(root_child0_child1.getComputedTop()).toBe(100);
+ expect(root_child0_child1.getComputedWidth()).toBe(10);
+ expect(root_child0_child1.getComputedHeight()).toBe(0);
+
+ expect(root_child0_child2.getComputedLeft()).toBe(0);
+ expect(root_child0_child2.getComputedTop()).toBe(100);
+ expect(root_child0_child2.getComputedWidth()).toBe(10);
+ expect(root_child0_child2.getComputedHeight()).toBe(0);
root.calculateLayout(undefined, undefined, Direction.RTL);
expect(root.getComputedLeft()).toBe(0);
- expect(root.getComputedTop()).toBe(100);
+ expect(root.getComputedTop()).toBe(0);
expect(root.getComputedWidth()).toBe(100);
expect(root.getComputedHeight()).toBe(100);
- expect(root_child0.getComputedLeft()).toBe(90);
+ expect(root_child0.getComputedLeft()).toBe(0);
expect(root_child0.getComputedTop()).toBe(100);
- expect(root_child0.getComputedWidth()).toBe(10);
- expect(root_child0.getComputedHeight()).toBe(0);
+ expect(root_child0.getComputedWidth()).toBe(100);
+ expect(root_child0.getComputedHeight()).toBe(100);
- expect(root_child1.getComputedLeft()).toBe(90);
- expect(root_child1.getComputedTop()).toBe(100);
- expect(root_child1.getComputedWidth()).toBe(10);
- expect(root_child1.getComputedHeight()).toBe(0);
+ expect(root_child0_child0.getComputedLeft()).toBe(90);
+ expect(root_child0_child0.getComputedTop()).toBe(100);
+ expect(root_child0_child0.getComputedWidth()).toBe(10);
+ expect(root_child0_child0.getComputedHeight()).toBe(0);
- expect(root_child2.getComputedLeft()).toBe(90);
- expect(root_child2.getComputedTop()).toBe(100);
- expect(root_child2.getComputedWidth()).toBe(10);
- expect(root_child2.getComputedHeight()).toBe(0);
+ expect(root_child0_child1.getComputedLeft()).toBe(90);
+ expect(root_child0_child1.getComputedTop()).toBe(100);
+ expect(root_child0_child1.getComputedWidth()).toBe(10);
+ expect(root_child0_child1.getComputedHeight()).toBe(0);
+
+ expect(root_child0_child2.getComputedLeft()).toBe(90);
+ expect(root_child0_child2.getComputedTop()).toBe(100);
+ expect(root_child0_child2.getComputedWidth()).toBe(10);
+ expect(root_child0_child2.getComputedHeight()).toBe(0);
} finally {
if (typeof root !== 'undefined') {
root.freeRecursive();
@@ -2198,65 +2273,80 @@ test.skip('flex_direction_column_reverse_pos_bottom', () => {
try {
root = Yoga.Node.create(config);
- root.setFlexDirection(FlexDirection.ColumnReverse);
- root.setPosition(Edge.Bottom, 100);
root.setWidth(100);
root.setHeight(100);
const root_child0 = Yoga.Node.create(config);
- root_child0.setWidth(10);
+ root_child0.setFlexDirection(FlexDirection.ColumnReverse);
+ root_child0.setPosition(Edge.Bottom, 100);
+ root_child0.setWidth(100);
+ root_child0.setHeight(100);
root.insertChild(root_child0, 0);
- const root_child1 = Yoga.Node.create(config);
- root_child1.setWidth(10);
- root.insertChild(root_child1, 1);
+ const root_child0_child0 = Yoga.Node.create(config);
+ root_child0_child0.setWidth(10);
+ root_child0.insertChild(root_child0_child0, 0);
- const root_child2 = Yoga.Node.create(config);
- root_child2.setWidth(10);
- root.insertChild(root_child2, 2);
+ const root_child0_child1 = Yoga.Node.create(config);
+ root_child0_child1.setWidth(10);
+ root_child0.insertChild(root_child0_child1, 1);
+
+ const root_child0_child2 = Yoga.Node.create(config);
+ root_child0_child2.setWidth(10);
+ root_child0.insertChild(root_child0_child2, 2);
root.calculateLayout(undefined, undefined, Direction.LTR);
expect(root.getComputedLeft()).toBe(0);
- expect(root.getComputedTop()).toBe(-200);
+ expect(root.getComputedTop()).toBe(0);
expect(root.getComputedWidth()).toBe(100);
expect(root.getComputedHeight()).toBe(100);
expect(root_child0.getComputedLeft()).toBe(0);
- expect(root_child0.getComputedTop()).toBe(100);
- expect(root_child0.getComputedWidth()).toBe(10);
- expect(root_child0.getComputedHeight()).toBe(0);
+ expect(root_child0.getComputedTop()).toBe(-100);
+ expect(root_child0.getComputedWidth()).toBe(100);
+ expect(root_child0.getComputedHeight()).toBe(100);
- expect(root_child1.getComputedLeft()).toBe(0);
- expect(root_child1.getComputedTop()).toBe(100);
- expect(root_child1.getComputedWidth()).toBe(10);
- expect(root_child1.getComputedHeight()).toBe(0);
+ expect(root_child0_child0.getComputedLeft()).toBe(0);
+ expect(root_child0_child0.getComputedTop()).toBe(100);
+ expect(root_child0_child0.getComputedWidth()).toBe(10);
+ expect(root_child0_child0.getComputedHeight()).toBe(0);
- expect(root_child2.getComputedLeft()).toBe(0);
- expect(root_child2.getComputedTop()).toBe(100);
- expect(root_child2.getComputedWidth()).toBe(10);
- expect(root_child2.getComputedHeight()).toBe(0);
+ expect(root_child0_child1.getComputedLeft()).toBe(0);
+ expect(root_child0_child1.getComputedTop()).toBe(100);
+ expect(root_child0_child1.getComputedWidth()).toBe(10);
+ expect(root_child0_child1.getComputedHeight()).toBe(0);
+
+ expect(root_child0_child2.getComputedLeft()).toBe(0);
+ expect(root_child0_child2.getComputedTop()).toBe(100);
+ expect(root_child0_child2.getComputedWidth()).toBe(10);
+ expect(root_child0_child2.getComputedHeight()).toBe(0);
root.calculateLayout(undefined, undefined, Direction.RTL);
expect(root.getComputedLeft()).toBe(0);
- expect(root.getComputedTop()).toBe(-200);
+ expect(root.getComputedTop()).toBe(0);
expect(root.getComputedWidth()).toBe(100);
expect(root.getComputedHeight()).toBe(100);
- expect(root_child0.getComputedLeft()).toBe(90);
- expect(root_child0.getComputedTop()).toBe(100);
- expect(root_child0.getComputedWidth()).toBe(10);
- expect(root_child0.getComputedHeight()).toBe(0);
+ expect(root_child0.getComputedLeft()).toBe(0);
+ expect(root_child0.getComputedTop()).toBe(-100);
+ expect(root_child0.getComputedWidth()).toBe(100);
+ expect(root_child0.getComputedHeight()).toBe(100);
- expect(root_child1.getComputedLeft()).toBe(90);
- expect(root_child1.getComputedTop()).toBe(100);
- expect(root_child1.getComputedWidth()).toBe(10);
- expect(root_child1.getComputedHeight()).toBe(0);
+ expect(root_child0_child0.getComputedLeft()).toBe(90);
+ expect(root_child0_child0.getComputedTop()).toBe(100);
+ expect(root_child0_child0.getComputedWidth()).toBe(10);
+ expect(root_child0_child0.getComputedHeight()).toBe(0);
- expect(root_child2.getComputedLeft()).toBe(90);
- expect(root_child2.getComputedTop()).toBe(100);
- expect(root_child2.getComputedWidth()).toBe(10);
- expect(root_child2.getComputedHeight()).toBe(0);
+ expect(root_child0_child1.getComputedLeft()).toBe(90);
+ expect(root_child0_child1.getComputedTop()).toBe(100);
+ expect(root_child0_child1.getComputedWidth()).toBe(10);
+ expect(root_child0_child1.getComputedHeight()).toBe(0);
+
+ expect(root_child0_child2.getComputedLeft()).toBe(90);
+ expect(root_child0_child2.getComputedTop()).toBe(100);
+ expect(root_child0_child2.getComputedWidth()).toBe(10);
+ expect(root_child0_child2.getComputedHeight()).toBe(0);
} finally {
if (typeof root !== 'undefined') {
root.freeRecursive();
diff --git a/tests/generated/YGFlexDirectionTest.cpp b/tests/generated/YGFlexDirectionTest.cpp
index 05f03207..e0502bbf 100644
--- a/tests/generated/YGFlexDirectionTest.cpp
+++ b/tests/generated/YGFlexDirectionTest.cpp
@@ -1688,65 +1688,80 @@ TEST(YogaTest, flex_direction_row_reverse_pos_left) {
YGConfigSetExperimentalFeatureEnabled(config, YGExperimentalFeatureAbsolutePercentageAgainstPaddingEdge, true);
const YGNodeRef root = YGNodeNewWithConfig(config);
- YGNodeStyleSetFlexDirection(root, YGFlexDirectionRowReverse);
- YGNodeStyleSetPosition(root, YGEdgeLeft, 100);
YGNodeStyleSetWidth(root, 100);
YGNodeStyleSetHeight(root, 100);
const YGNodeRef root_child0 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child0, 10);
+ YGNodeStyleSetFlexDirection(root_child0, YGFlexDirectionRowReverse);
+ YGNodeStyleSetPosition(root_child0, YGEdgeLeft, 100);
+ YGNodeStyleSetWidth(root_child0, 100);
+ YGNodeStyleSetHeight(root_child0, 100);
YGNodeInsertChild(root, root_child0, 0);
- const YGNodeRef root_child1 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child1, 10);
- YGNodeInsertChild(root, root_child1, 1);
+ const YGNodeRef root_child0_child0 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child0, 10);
+ YGNodeInsertChild(root_child0, root_child0_child0, 0);
- const YGNodeRef root_child2 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child2, 10);
- YGNodeInsertChild(root, root_child2, 2);
+ const YGNodeRef root_child0_child1 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child1, 10);
+ YGNodeInsertChild(root_child0, root_child0_child1, 1);
+
+ const YGNodeRef root_child0_child2 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child2, 10);
+ YGNodeInsertChild(root_child0, root_child0_child2, 2);
YGNodeCalculateLayout(root, YGUndefined, YGUndefined, YGDirectionLTR);
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetLeft(root));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root));
- ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetLeft(root_child0));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root_child0));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0));
- ASSERT_FLOAT_EQ(80, YGNodeLayoutGetLeft(root_child1));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child1));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child1));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child1));
+ ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child0_child0));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child0));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child0));
- ASSERT_FLOAT_EQ(70, YGNodeLayoutGetLeft(root_child2));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child2));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child2));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child2));
+ ASSERT_FLOAT_EQ(80, YGNodeLayoutGetLeft(root_child0_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child1));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child1));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child1));
+
+ ASSERT_FLOAT_EQ(70, YGNodeLayoutGetLeft(root_child0_child2));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child2));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child2));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child2));
YGNodeCalculateLayout(root, YGUndefined, YGUndefined, YGDirectionRTL);
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetLeft(root));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetLeft(root_child0));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root_child0));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetLeft(root_child1));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child1));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child1));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0_child0));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child0));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child0));
- ASSERT_FLOAT_EQ(20, YGNodeLayoutGetLeft(root_child2));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child2));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child2));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child2));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetLeft(root_child0_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child1));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child1));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child1));
+
+ ASSERT_FLOAT_EQ(20, YGNodeLayoutGetLeft(root_child0_child2));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child2));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child2));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child2));
YGNodeFreeRecursive(root);
@@ -1754,71 +1769,84 @@ TEST(YogaTest, flex_direction_row_reverse_pos_left) {
}
TEST(YogaTest, flex_direction_row_reverse_pos_start) {
- GTEST_SKIP();
-
const YGConfigRef config = YGConfigNew();
YGConfigSetExperimentalFeatureEnabled(config, YGExperimentalFeatureAbsolutePercentageAgainstPaddingEdge, true);
const YGNodeRef root = YGNodeNewWithConfig(config);
- YGNodeStyleSetFlexDirection(root, YGFlexDirectionRowReverse);
- YGNodeStyleSetPosition(root, YGEdgeStart, 100);
YGNodeStyleSetWidth(root, 100);
YGNodeStyleSetHeight(root, 100);
const YGNodeRef root_child0 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child0, 10);
+ YGNodeStyleSetFlexDirection(root_child0, YGFlexDirectionRowReverse);
+ YGNodeStyleSetPosition(root_child0, YGEdgeStart, 100);
+ YGNodeStyleSetWidth(root_child0, 100);
+ YGNodeStyleSetHeight(root_child0, 100);
YGNodeInsertChild(root, root_child0, 0);
- const YGNodeRef root_child1 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child1, 10);
- YGNodeInsertChild(root, root_child1, 1);
+ const YGNodeRef root_child0_child0 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child0, 10);
+ YGNodeInsertChild(root_child0, root_child0_child0, 0);
- const YGNodeRef root_child2 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child2, 10);
- YGNodeInsertChild(root, root_child2, 2);
+ const YGNodeRef root_child0_child1 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child1, 10);
+ YGNodeInsertChild(root_child0, root_child0_child1, 1);
+
+ const YGNodeRef root_child0_child2 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child2, 10);
+ YGNodeInsertChild(root_child0, root_child0_child2, 2);
YGNodeCalculateLayout(root, YGUndefined, YGUndefined, YGDirectionLTR);
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetLeft(root));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root));
- ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetLeft(root_child0));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root_child0));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0));
- ASSERT_FLOAT_EQ(80, YGNodeLayoutGetLeft(root_child1));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child1));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child1));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child1));
+ ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child0_child0));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child0));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child0));
- ASSERT_FLOAT_EQ(70, YGNodeLayoutGetLeft(root_child2));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child2));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child2));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child2));
+ ASSERT_FLOAT_EQ(80, YGNodeLayoutGetLeft(root_child0_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child1));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child1));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child1));
+
+ ASSERT_FLOAT_EQ(70, YGNodeLayoutGetLeft(root_child0_child2));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child2));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child2));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child2));
YGNodeCalculateLayout(root, YGUndefined, YGUndefined, YGDirectionRTL);
- ASSERT_FLOAT_EQ(-200, YGNodeLayoutGetLeft(root));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0));
+ ASSERT_FLOAT_EQ(-100, YGNodeLayoutGetLeft(root_child0));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root_child0));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetLeft(root_child1));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child1));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child1));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0_child0));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child0));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child0));
- ASSERT_FLOAT_EQ(20, YGNodeLayoutGetLeft(root_child2));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child2));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child2));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child2));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetLeft(root_child0_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child1));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child1));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child1));
+
+ ASSERT_FLOAT_EQ(20, YGNodeLayoutGetLeft(root_child0_child2));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child2));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child2));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child2));
YGNodeFreeRecursive(root);
@@ -1832,65 +1860,80 @@ TEST(YogaTest, flex_direction_row_reverse_pos_right) {
YGConfigSetExperimentalFeatureEnabled(config, YGExperimentalFeatureAbsolutePercentageAgainstPaddingEdge, true);
const YGNodeRef root = YGNodeNewWithConfig(config);
- YGNodeStyleSetFlexDirection(root, YGFlexDirectionRowReverse);
- YGNodeStyleSetPosition(root, YGEdgeRight, 100);
YGNodeStyleSetWidth(root, 100);
YGNodeStyleSetHeight(root, 100);
const YGNodeRef root_child0 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child0, 10);
+ YGNodeStyleSetFlexDirection(root_child0, YGFlexDirectionRowReverse);
+ YGNodeStyleSetPosition(root_child0, YGEdgeRight, 100);
+ YGNodeStyleSetWidth(root_child0, 100);
+ YGNodeStyleSetHeight(root_child0, 100);
YGNodeInsertChild(root, root_child0, 0);
- const YGNodeRef root_child1 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child1, 10);
- YGNodeInsertChild(root, root_child1, 1);
+ const YGNodeRef root_child0_child0 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child0, 10);
+ YGNodeInsertChild(root_child0, root_child0_child0, 0);
- const YGNodeRef root_child2 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child2, 10);
- YGNodeInsertChild(root, root_child2, 2);
+ const YGNodeRef root_child0_child1 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child1, 10);
+ YGNodeInsertChild(root_child0, root_child0_child1, 1);
+
+ const YGNodeRef root_child0_child2 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child2, 10);
+ YGNodeInsertChild(root_child0, root_child0_child2, 2);
YGNodeCalculateLayout(root, YGUndefined, YGUndefined, YGDirectionLTR);
- ASSERT_FLOAT_EQ(-200, YGNodeLayoutGetLeft(root));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root));
- ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child0));
+ ASSERT_FLOAT_EQ(-100, YGNodeLayoutGetLeft(root_child0));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root_child0));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0));
- ASSERT_FLOAT_EQ(80, YGNodeLayoutGetLeft(root_child1));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child1));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child1));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child1));
+ ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child0_child0));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child0));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child0));
- ASSERT_FLOAT_EQ(70, YGNodeLayoutGetLeft(root_child2));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child2));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child2));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child2));
+ ASSERT_FLOAT_EQ(80, YGNodeLayoutGetLeft(root_child0_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child1));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child1));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child1));
+
+ ASSERT_FLOAT_EQ(70, YGNodeLayoutGetLeft(root_child0_child2));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child2));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child2));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child2));
YGNodeCalculateLayout(root, YGUndefined, YGUndefined, YGDirectionRTL);
- ASSERT_FLOAT_EQ(-200, YGNodeLayoutGetLeft(root));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0));
+ ASSERT_FLOAT_EQ(-100, YGNodeLayoutGetLeft(root_child0));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root_child0));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetLeft(root_child1));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child1));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child1));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0_child0));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child0));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child0));
- ASSERT_FLOAT_EQ(20, YGNodeLayoutGetLeft(root_child2));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child2));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child2));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child2));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetLeft(root_child0_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child1));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child1));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child1));
+
+ ASSERT_FLOAT_EQ(20, YGNodeLayoutGetLeft(root_child0_child2));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child2));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child2));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child2));
YGNodeFreeRecursive(root);
@@ -1898,71 +1941,84 @@ TEST(YogaTest, flex_direction_row_reverse_pos_right) {
}
TEST(YogaTest, flex_direction_row_reverse_pos_end) {
- GTEST_SKIP();
-
const YGConfigRef config = YGConfigNew();
YGConfigSetExperimentalFeatureEnabled(config, YGExperimentalFeatureAbsolutePercentageAgainstPaddingEdge, true);
const YGNodeRef root = YGNodeNewWithConfig(config);
- YGNodeStyleSetFlexDirection(root, YGFlexDirectionRowReverse);
- YGNodeStyleSetPosition(root, YGEdgeEnd, 100);
YGNodeStyleSetWidth(root, 100);
YGNodeStyleSetHeight(root, 100);
const YGNodeRef root_child0 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child0, 10);
+ YGNodeStyleSetFlexDirection(root_child0, YGFlexDirectionRowReverse);
+ YGNodeStyleSetPosition(root_child0, YGEdgeEnd, 100);
+ YGNodeStyleSetWidth(root_child0, 100);
+ YGNodeStyleSetHeight(root_child0, 100);
YGNodeInsertChild(root, root_child0, 0);
- const YGNodeRef root_child1 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child1, 10);
- YGNodeInsertChild(root, root_child1, 1);
+ const YGNodeRef root_child0_child0 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child0, 10);
+ YGNodeInsertChild(root_child0, root_child0_child0, 0);
- const YGNodeRef root_child2 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child2, 10);
- YGNodeInsertChild(root, root_child2, 2);
+ const YGNodeRef root_child0_child1 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child1, 10);
+ YGNodeInsertChild(root_child0, root_child0_child1, 1);
+
+ const YGNodeRef root_child0_child2 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child2, 10);
+ YGNodeInsertChild(root_child0, root_child0_child2, 2);
YGNodeCalculateLayout(root, YGUndefined, YGUndefined, YGDirectionLTR);
- ASSERT_FLOAT_EQ(-200, YGNodeLayoutGetLeft(root));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root));
- ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child0));
+ ASSERT_FLOAT_EQ(-100, YGNodeLayoutGetLeft(root_child0));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root_child0));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0));
- ASSERT_FLOAT_EQ(80, YGNodeLayoutGetLeft(root_child1));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child1));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child1));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child1));
+ ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child0_child0));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child0));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child0));
- ASSERT_FLOAT_EQ(70, YGNodeLayoutGetLeft(root_child2));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child2));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child2));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child2));
+ ASSERT_FLOAT_EQ(80, YGNodeLayoutGetLeft(root_child0_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child1));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child1));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child1));
+
+ ASSERT_FLOAT_EQ(70, YGNodeLayoutGetLeft(root_child0_child2));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child2));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child2));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child2));
YGNodeCalculateLayout(root, YGUndefined, YGUndefined, YGDirectionRTL);
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetLeft(root));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetLeft(root_child0));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root_child0));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetLeft(root_child1));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child1));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child1));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0_child0));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child0));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child0));
- ASSERT_FLOAT_EQ(20, YGNodeLayoutGetLeft(root_child2));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child2));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child2));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child2));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetLeft(root_child0_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child1));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child1));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child1));
+
+ ASSERT_FLOAT_EQ(20, YGNodeLayoutGetLeft(root_child0_child2));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root_child0_child2));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child2));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0_child2));
YGNodeFreeRecursive(root);
@@ -1976,65 +2032,80 @@ TEST(YogaTest, flex_direction_column_reverse_pos_top) {
YGConfigSetExperimentalFeatureEnabled(config, YGExperimentalFeatureAbsolutePercentageAgainstPaddingEdge, true);
const YGNodeRef root = YGNodeNewWithConfig(config);
- YGNodeStyleSetFlexDirection(root, YGFlexDirectionColumnReverse);
- YGNodeStyleSetPosition(root, YGEdgeTop, 100);
YGNodeStyleSetWidth(root, 100);
YGNodeStyleSetHeight(root, 100);
const YGNodeRef root_child0 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child0, 10);
+ YGNodeStyleSetFlexDirection(root_child0, YGFlexDirectionColumnReverse);
+ YGNodeStyleSetPosition(root_child0, YGEdgeTop, 100);
+ YGNodeStyleSetWidth(root_child0, 100);
+ YGNodeStyleSetHeight(root_child0, 100);
YGNodeInsertChild(root, root_child0, 0);
- const YGNodeRef root_child1 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child1, 10);
- YGNodeInsertChild(root, root_child1, 1);
+ const YGNodeRef root_child0_child0 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child0, 10);
+ YGNodeInsertChild(root_child0, root_child0_child0, 0);
- const YGNodeRef root_child2 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child2, 10);
- YGNodeInsertChild(root, root_child2, 2);
+ const YGNodeRef root_child0_child1 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child1, 10);
+ YGNodeInsertChild(root_child0, root_child0_child1, 1);
+
+ const YGNodeRef root_child0_child2 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child2, 10);
+ YGNodeInsertChild(root_child0, root_child0_child2, 2);
YGNodeCalculateLayout(root, YGUndefined, YGUndefined, YGDirectionLTR);
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child0));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child1));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child1));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child1));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child0_child0));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child0));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child0_child0));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child2));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child2));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child2));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child2));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0_child1));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child0_child1));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child0_child1));
+
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0_child2));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child0_child2));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child2));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child0_child2));
YGNodeCalculateLayout(root, YGUndefined, YGUndefined, YGDirectionRTL);
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root));
- ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child0));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child0));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0));
- ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child1));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child1));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child1));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child1));
+ ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child0_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child0_child0));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child0));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child0_child0));
- ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child2));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child2));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child2));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child2));
+ ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child0_child1));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child0_child1));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child0_child1));
+
+ ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child0_child2));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child0_child2));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child2));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child0_child2));
YGNodeFreeRecursive(root);
@@ -2048,65 +2119,80 @@ TEST(YogaTest, flex_direction_column_reverse_pos_bottom) {
YGConfigSetExperimentalFeatureEnabled(config, YGExperimentalFeatureAbsolutePercentageAgainstPaddingEdge, true);
const YGNodeRef root = YGNodeNewWithConfig(config);
- YGNodeStyleSetFlexDirection(root, YGFlexDirectionColumnReverse);
- YGNodeStyleSetPosition(root, YGEdgeBottom, 100);
YGNodeStyleSetWidth(root, 100);
YGNodeStyleSetHeight(root, 100);
const YGNodeRef root_child0 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child0, 10);
+ YGNodeStyleSetFlexDirection(root_child0, YGFlexDirectionColumnReverse);
+ YGNodeStyleSetPosition(root_child0, YGEdgeBottom, 100);
+ YGNodeStyleSetWidth(root_child0, 100);
+ YGNodeStyleSetHeight(root_child0, 100);
YGNodeInsertChild(root, root_child0, 0);
- const YGNodeRef root_child1 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child1, 10);
- YGNodeInsertChild(root, root_child1, 1);
+ const YGNodeRef root_child0_child0 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child0, 10);
+ YGNodeInsertChild(root_child0, root_child0_child0, 0);
- const YGNodeRef root_child2 = YGNodeNewWithConfig(config);
- YGNodeStyleSetWidth(root_child2, 10);
- YGNodeInsertChild(root, root_child2, 2);
+ const YGNodeRef root_child0_child1 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child1, 10);
+ YGNodeInsertChild(root_child0, root_child0_child1, 1);
+
+ const YGNodeRef root_child0_child2 = YGNodeNewWithConfig(config);
+ YGNodeStyleSetWidth(root_child0_child2, 10);
+ YGNodeInsertChild(root_child0, root_child0_child2, 2);
YGNodeCalculateLayout(root, YGUndefined, YGUndefined, YGDirectionLTR);
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root));
- ASSERT_FLOAT_EQ(-200, YGNodeLayoutGetTop(root));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root));
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child0));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child0));
+ ASSERT_FLOAT_EQ(-100, YGNodeLayoutGetTop(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child1));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child1));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child1));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child0_child0));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child0));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child0_child0));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child2));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child2));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child2));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child2));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0_child1));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child0_child1));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child0_child1));
+
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0_child2));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child0_child2));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child2));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child0_child2));
YGNodeCalculateLayout(root, YGUndefined, YGUndefined, YGDirectionRTL);
ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root));
- ASSERT_FLOAT_EQ(-200, YGNodeLayoutGetTop(root));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetTop(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root));
ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root));
- ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child0));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child0));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child0));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetLeft(root_child0));
+ ASSERT_FLOAT_EQ(-100, YGNodeLayoutGetTop(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetWidth(root_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetHeight(root_child0));
- ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child1));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child1));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child1));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child1));
+ ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child0_child0));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child0_child0));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child0));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child0_child0));
- ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child2));
- ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child2));
- ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child2));
- ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child2));
+ ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child0_child1));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child0_child1));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child1));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child0_child1));
+
+ ASSERT_FLOAT_EQ(90, YGNodeLayoutGetLeft(root_child0_child2));
+ ASSERT_FLOAT_EQ(100, YGNodeLayoutGetTop(root_child0_child2));
+ ASSERT_FLOAT_EQ(10, YGNodeLayoutGetWidth(root_child0_child2));
+ ASSERT_FLOAT_EQ(0, YGNodeLayoutGetHeight(root_child0_child2));
YGNodeFreeRecursive(root);