diff --git a/csharp/tests/Facebook.Yoga/YGAndroidNewsFeed.cs b/csharp/tests/Facebook.Yoga/YGAndroidNewsFeed.cs new file mode 100644 index 00000000..a307292d --- /dev/null +++ b/csharp/tests/Facebook.Yoga/YGAndroidNewsFeed.cs @@ -0,0 +1,301 @@ +/** + * Copyright (c) 2014-present, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + */ + +// @Generated by gentest/gentest.rb from gentest/fixtures/YGAndroidNewsFeed.html + +using System; +using NUnit.Framework; + +namespace Facebook.Yoga +{ + [TestFixture] + public class YGAndroidNewsFeed + { + [Test] + public void Test_android_news_feed() + { + YogaConfig config = new YogaConfig(); + + YogaNode root = new YogaNode(config); + root.AlignContent = YogaAlign.Stretch; + root.Width = 1080; + + YogaNode root_child0 = new YogaNode(config); + root.Insert(0, root_child0); + + YogaNode root_child0_child0 = new YogaNode(config); + root_child0_child0.AlignContent = YogaAlign.Stretch; + root_child0.Insert(0, root_child0_child0); + + YogaNode root_child0_child0_child0 = new YogaNode(config); + root_child0_child0_child0.AlignContent = YogaAlign.Stretch; + root_child0_child0.Insert(0, root_child0_child0_child0); + + YogaNode root_child0_child0_child0_child0 = new YogaNode(config); + root_child0_child0_child0_child0.FlexDirection = YogaFlexDirection.Row; + root_child0_child0_child0_child0.AlignContent = YogaAlign.Stretch; + root_child0_child0_child0_child0.AlignItems = YogaAlign.FlexStart; + root_child0_child0_child0_child0.MarginStart = 36; + root_child0_child0_child0_child0.MarginTop = 24; + root_child0_child0_child0.Insert(0, root_child0_child0_child0_child0); + + YogaNode root_child0_child0_child0_child0_child0 = new YogaNode(config); + root_child0_child0_child0_child0_child0.FlexDirection = YogaFlexDirection.Row; + root_child0_child0_child0_child0_child0.AlignContent = YogaAlign.Stretch; + root_child0_child0_child0_child0.Insert(0, root_child0_child0_child0_child0_child0); + + YogaNode root_child0_child0_child0_child0_child0_child0 = new YogaNode(config); + root_child0_child0_child0_child0_child0_child0.AlignContent = YogaAlign.Stretch; + root_child0_child0_child0_child0_child0_child0.Width = 120; + root_child0_child0_child0_child0_child0_child0.Height = 120; + root_child0_child0_child0_child0_child0.Insert(0, root_child0_child0_child0_child0_child0_child0); + + YogaNode root_child0_child0_child0_child0_child1 = new YogaNode(config); + root_child0_child0_child0_child0_child1.AlignContent = YogaAlign.Stretch; + root_child0_child0_child0_child0_child1.FlexShrink = 1; + root_child0_child0_child0_child0_child1.MarginRight = 36; + root_child0_child0_child0_child0_child1.PaddingLeft = 36; + root_child0_child0_child0_child0_child1.PaddingTop = 21; + root_child0_child0_child0_child0_child1.PaddingRight = 36; + root_child0_child0_child0_child0_child1.PaddingBottom = 18; + root_child0_child0_child0_child0.Insert(1, root_child0_child0_child0_child0_child1); + + YogaNode root_child0_child0_child0_child0_child1_child0 = new YogaNode(config); + root_child0_child0_child0_child0_child1_child0.FlexDirection = YogaFlexDirection.Row; + root_child0_child0_child0_child0_child1_child0.AlignContent = YogaAlign.Stretch; + root_child0_child0_child0_child0_child1_child0.FlexShrink = 1; + root_child0_child0_child0_child0_child1.Insert(0, root_child0_child0_child0_child0_child1_child0); + + YogaNode root_child0_child0_child0_child0_child1_child1 = new YogaNode(config); + root_child0_child0_child0_child0_child1_child1.AlignContent = YogaAlign.Stretch; + root_child0_child0_child0_child0_child1_child1.FlexShrink = 1; + root_child0_child0_child0_child0_child1.Insert(1, root_child0_child0_child0_child0_child1_child1); + + YogaNode root_child0_child0_child1 = new YogaNode(config); + root_child0_child0_child1.AlignContent = YogaAlign.Stretch; + root_child0_child0.Insert(1, root_child0_child0_child1); + + YogaNode root_child0_child0_child1_child0 = new YogaNode(config); + root_child0_child0_child1_child0.FlexDirection = YogaFlexDirection.Row; + root_child0_child0_child1_child0.AlignContent = YogaAlign.Stretch; + root_child0_child0_child1_child0.AlignItems = YogaAlign.FlexStart; + root_child0_child0_child1_child0.MarginStart = 174; + root_child0_child0_child1_child0.MarginTop = 24; + root_child0_child0_child1.Insert(0, root_child0_child0_child1_child0); + + YogaNode root_child0_child0_child1_child0_child0 = new YogaNode(config); + root_child0_child0_child1_child0_child0.FlexDirection = YogaFlexDirection.Row; + root_child0_child0_child1_child0_child0.AlignContent = YogaAlign.Stretch; + root_child0_child0_child1_child0.Insert(0, root_child0_child0_child1_child0_child0); + + YogaNode root_child0_child0_child1_child0_child0_child0 = new YogaNode(config); + root_child0_child0_child1_child0_child0_child0.AlignContent = YogaAlign.Stretch; + root_child0_child0_child1_child0_child0_child0.Width = 72; + root_child0_child0_child1_child0_child0_child0.Height = 72; + root_child0_child0_child1_child0_child0.Insert(0, root_child0_child0_child1_child0_child0_child0); + + YogaNode root_child0_child0_child1_child0_child1 = new YogaNode(config); + root_child0_child0_child1_child0_child1.AlignContent = YogaAlign.Stretch; + root_child0_child0_child1_child0_child1.FlexShrink = 1; + root_child0_child0_child1_child0_child1.MarginRight = 36; + root_child0_child0_child1_child0_child1.PaddingLeft = 36; + root_child0_child0_child1_child0_child1.PaddingTop = 21; + root_child0_child0_child1_child0_child1.PaddingRight = 36; + root_child0_child0_child1_child0_child1.PaddingBottom = 18; + root_child0_child0_child1_child0.Insert(1, root_child0_child0_child1_child0_child1); + + YogaNode root_child0_child0_child1_child0_child1_child0 = new YogaNode(config); + root_child0_child0_child1_child0_child1_child0.FlexDirection = YogaFlexDirection.Row; + root_child0_child0_child1_child0_child1_child0.AlignContent = YogaAlign.Stretch; + root_child0_child0_child1_child0_child1_child0.FlexShrink = 1; + root_child0_child0_child1_child0_child1.Insert(0, root_child0_child0_child1_child0_child1_child0); + + YogaNode root_child0_child0_child1_child0_child1_child1 = new YogaNode(config); + root_child0_child0_child1_child0_child1_child1.AlignContent = YogaAlign.Stretch; + root_child0_child0_child1_child0_child1_child1.FlexShrink = 1; + root_child0_child0_child1_child0_child1.Insert(1, root_child0_child0_child1_child0_child1_child1); + root.StyleDirection = YogaDirection.LTR; + root.CalculateLayout(); + + Assert.AreEqual(0f, root.LayoutX); + Assert.AreEqual(0f, root.LayoutY); + Assert.AreEqual(1080f, root.LayoutWidth); + Assert.AreEqual(240f, root.LayoutHeight); + + Assert.AreEqual(0f, root_child0.LayoutX); + Assert.AreEqual(0f, root_child0.LayoutY); + Assert.AreEqual(1080f, root_child0.LayoutWidth); + Assert.AreEqual(240f, root_child0.LayoutHeight); + + Assert.AreEqual(0f, root_child0_child0.LayoutX); + Assert.AreEqual(0f, root_child0_child0.LayoutY); + Assert.AreEqual(1080f, root_child0_child0.LayoutWidth); + Assert.AreEqual(240f, root_child0_child0.LayoutHeight); + + Assert.AreEqual(0f, root_child0_child0_child0.LayoutX); + Assert.AreEqual(0f, root_child0_child0_child0.LayoutY); + Assert.AreEqual(1080f, root_child0_child0_child0.LayoutWidth); + Assert.AreEqual(144f, root_child0_child0_child0.LayoutHeight); + + Assert.AreEqual(36f, root_child0_child0_child0_child0.LayoutX); + Assert.AreEqual(24f, root_child0_child0_child0_child0.LayoutY); + Assert.AreEqual(1044f, root_child0_child0_child0_child0.LayoutWidth); + Assert.AreEqual(120f, root_child0_child0_child0_child0.LayoutHeight); + + Assert.AreEqual(0f, root_child0_child0_child0_child0_child0.LayoutX); + Assert.AreEqual(0f, root_child0_child0_child0_child0_child0.LayoutY); + Assert.AreEqual(120f, root_child0_child0_child0_child0_child0.LayoutWidth); + Assert.AreEqual(120f, root_child0_child0_child0_child0_child0.LayoutHeight); + + Assert.AreEqual(0f, root_child0_child0_child0_child0_child0_child0.LayoutX); + Assert.AreEqual(0f, root_child0_child0_child0_child0_child0_child0.LayoutY); + Assert.AreEqual(120f, root_child0_child0_child0_child0_child0_child0.LayoutWidth); + Assert.AreEqual(120f, root_child0_child0_child0_child0_child0_child0.LayoutHeight); + + Assert.AreEqual(120f, root_child0_child0_child0_child0_child1.LayoutX); + Assert.AreEqual(0f, root_child0_child0_child0_child0_child1.LayoutY); + Assert.AreEqual(72f, root_child0_child0_child0_child0_child1.LayoutWidth); + Assert.AreEqual(39f, root_child0_child0_child0_child0_child1.LayoutHeight); + + Assert.AreEqual(36f, root_child0_child0_child0_child0_child1_child0.LayoutX); + Assert.AreEqual(21f, root_child0_child0_child0_child0_child1_child0.LayoutY); + Assert.AreEqual(0f, root_child0_child0_child0_child0_child1_child0.LayoutWidth); + Assert.AreEqual(0f, root_child0_child0_child0_child0_child1_child0.LayoutHeight); + + Assert.AreEqual(36f, root_child0_child0_child0_child0_child1_child1.LayoutX); + Assert.AreEqual(21f, root_child0_child0_child0_child0_child1_child1.LayoutY); + Assert.AreEqual(0f, root_child0_child0_child0_child0_child1_child1.LayoutWidth); + Assert.AreEqual(0f, root_child0_child0_child0_child0_child1_child1.LayoutHeight); + + Assert.AreEqual(0f, root_child0_child0_child1.LayoutX); + Assert.AreEqual(144f, root_child0_child0_child1.LayoutY); + Assert.AreEqual(1080f, root_child0_child0_child1.LayoutWidth); + Assert.AreEqual(96f, root_child0_child0_child1.LayoutHeight); + + Assert.AreEqual(174f, root_child0_child0_child1_child0.LayoutX); + Assert.AreEqual(24f, root_child0_child0_child1_child0.LayoutY); + Assert.AreEqual(906f, root_child0_child0_child1_child0.LayoutWidth); + Assert.AreEqual(72f, root_child0_child0_child1_child0.LayoutHeight); + + Assert.AreEqual(0f, root_child0_child0_child1_child0_child0.LayoutX); + Assert.AreEqual(0f, root_child0_child0_child1_child0_child0.LayoutY); + Assert.AreEqual(72f, root_child0_child0_child1_child0_child0.LayoutWidth); + Assert.AreEqual(72f, root_child0_child0_child1_child0_child0.LayoutHeight); + + Assert.AreEqual(0f, root_child0_child0_child1_child0_child0_child0.LayoutX); + Assert.AreEqual(0f, root_child0_child0_child1_child0_child0_child0.LayoutY); + Assert.AreEqual(72f, root_child0_child0_child1_child0_child0_child0.LayoutWidth); + Assert.AreEqual(72f, root_child0_child0_child1_child0_child0_child0.LayoutHeight); + + Assert.AreEqual(72f, root_child0_child0_child1_child0_child1.LayoutX); + Assert.AreEqual(0f, root_child0_child0_child1_child0_child1.LayoutY); + Assert.AreEqual(72f, root_child0_child0_child1_child0_child1.LayoutWidth); + Assert.AreEqual(39f, root_child0_child0_child1_child0_child1.LayoutHeight); + + Assert.AreEqual(36f, root_child0_child0_child1_child0_child1_child0.LayoutX); + Assert.AreEqual(21f, root_child0_child0_child1_child0_child1_child0.LayoutY); + Assert.AreEqual(0f, root_child0_child0_child1_child0_child1_child0.LayoutWidth); + Assert.AreEqual(0f, root_child0_child0_child1_child0_child1_child0.LayoutHeight); + + Assert.AreEqual(36f, root_child0_child0_child1_child0_child1_child1.LayoutX); + Assert.AreEqual(21f, root_child0_child0_child1_child0_child1_child1.LayoutY); + Assert.AreEqual(0f, root_child0_child0_child1_child0_child1_child1.LayoutWidth); + Assert.AreEqual(0f, root_child0_child0_child1_child0_child1_child1.LayoutHeight); + + root.StyleDirection = YogaDirection.RTL; + root.CalculateLayout(); + + Assert.AreEqual(0f, root.LayoutX); + Assert.AreEqual(0f, root.LayoutY); + Assert.AreEqual(1080f, root.LayoutWidth); + Assert.AreEqual(240f, root.LayoutHeight); + + Assert.AreEqual(0f, root_child0.LayoutX); + Assert.AreEqual(0f, root_child0.LayoutY); + Assert.AreEqual(1080f, root_child0.LayoutWidth); + Assert.AreEqual(240f, root_child0.LayoutHeight); + + Assert.AreEqual(0f, root_child0_child0.LayoutX); + Assert.AreEqual(0f, root_child0_child0.LayoutY); + Assert.AreEqual(1080f, root_child0_child0.LayoutWidth); + Assert.AreEqual(240f, root_child0_child0.LayoutHeight); + + Assert.AreEqual(0f, root_child0_child0_child0.LayoutX); + Assert.AreEqual(0f, root_child0_child0_child0.LayoutY); + Assert.AreEqual(1080f, root_child0_child0_child0.LayoutWidth); + Assert.AreEqual(144f, root_child0_child0_child0.LayoutHeight); + + Assert.AreEqual(0f, root_child0_child0_child0_child0.LayoutX); + Assert.AreEqual(24f, root_child0_child0_child0_child0.LayoutY); + Assert.AreEqual(1044f, root_child0_child0_child0_child0.LayoutWidth); + Assert.AreEqual(120f, root_child0_child0_child0_child0.LayoutHeight); + + Assert.AreEqual(924f, root_child0_child0_child0_child0_child0.LayoutX); + Assert.AreEqual(0f, root_child0_child0_child0_child0_child0.LayoutY); + Assert.AreEqual(120f, root_child0_child0_child0_child0_child0.LayoutWidth); + Assert.AreEqual(120f, root_child0_child0_child0_child0_child0.LayoutHeight); + + Assert.AreEqual(0f, root_child0_child0_child0_child0_child0_child0.LayoutX); + Assert.AreEqual(0f, root_child0_child0_child0_child0_child0_child0.LayoutY); + Assert.AreEqual(120f, root_child0_child0_child0_child0_child0_child0.LayoutWidth); + Assert.AreEqual(120f, root_child0_child0_child0_child0_child0_child0.LayoutHeight); + + Assert.AreEqual(816f, root_child0_child0_child0_child0_child1.LayoutX); + Assert.AreEqual(0f, root_child0_child0_child0_child0_child1.LayoutY); + Assert.AreEqual(72f, root_child0_child0_child0_child0_child1.LayoutWidth); + Assert.AreEqual(39f, root_child0_child0_child0_child0_child1.LayoutHeight); + + Assert.AreEqual(36f, root_child0_child0_child0_child0_child1_child0.LayoutX); + Assert.AreEqual(21f, root_child0_child0_child0_child0_child1_child0.LayoutY); + Assert.AreEqual(0f, root_child0_child0_child0_child0_child1_child0.LayoutWidth); + Assert.AreEqual(0f, root_child0_child0_child0_child0_child1_child0.LayoutHeight); + + Assert.AreEqual(36f, root_child0_child0_child0_child0_child1_child1.LayoutX); + Assert.AreEqual(21f, root_child0_child0_child0_child0_child1_child1.LayoutY); + Assert.AreEqual(0f, root_child0_child0_child0_child0_child1_child1.LayoutWidth); + Assert.AreEqual(0f, root_child0_child0_child0_child0_child1_child1.LayoutHeight); + + Assert.AreEqual(0f, root_child0_child0_child1.LayoutX); + Assert.AreEqual(144f, root_child0_child0_child1.LayoutY); + Assert.AreEqual(1080f, root_child0_child0_child1.LayoutWidth); + Assert.AreEqual(96f, root_child0_child0_child1.LayoutHeight); + + Assert.AreEqual(0f, root_child0_child0_child1_child0.LayoutX); + Assert.AreEqual(24f, root_child0_child0_child1_child0.LayoutY); + Assert.AreEqual(906f, root_child0_child0_child1_child0.LayoutWidth); + Assert.AreEqual(72f, root_child0_child0_child1_child0.LayoutHeight); + + Assert.AreEqual(834f, root_child0_child0_child1_child0_child0.LayoutX); + Assert.AreEqual(0f, root_child0_child0_child1_child0_child0.LayoutY); + Assert.AreEqual(72f, root_child0_child0_child1_child0_child0.LayoutWidth); + Assert.AreEqual(72f, root_child0_child0_child1_child0_child0.LayoutHeight); + + Assert.AreEqual(0f, root_child0_child0_child1_child0_child0_child0.LayoutX); + Assert.AreEqual(0f, root_child0_child0_child1_child0_child0_child0.LayoutY); + Assert.AreEqual(72f, root_child0_child0_child1_child0_child0_child0.LayoutWidth); + Assert.AreEqual(72f, root_child0_child0_child1_child0_child0_child0.LayoutHeight); + + Assert.AreEqual(726f, root_child0_child0_child1_child0_child1.LayoutX); + Assert.AreEqual(0f, root_child0_child0_child1_child0_child1.LayoutY); + Assert.AreEqual(72f, root_child0_child0_child1_child0_child1.LayoutWidth); + Assert.AreEqual(39f, root_child0_child0_child1_child0_child1.LayoutHeight); + + Assert.AreEqual(36f, root_child0_child0_child1_child0_child1_child0.LayoutX); + Assert.AreEqual(21f, root_child0_child0_child1_child0_child1_child0.LayoutY); + Assert.AreEqual(0f, root_child0_child0_child1_child0_child1_child0.LayoutWidth); + Assert.AreEqual(0f, root_child0_child0_child1_child0_child1_child0.LayoutHeight); + + Assert.AreEqual(36f, root_child0_child0_child1_child0_child1_child1.LayoutX); + Assert.AreEqual(21f, root_child0_child0_child1_child0_child1_child1.LayoutY); + Assert.AreEqual(0f, root_child0_child0_child1_child0_child1_child1.LayoutWidth); + Assert.AreEqual(0f, root_child0_child0_child1_child0_child1_child1.LayoutHeight); + } + + } +} diff --git a/gentest/fixtures/YGAndroidNewsFeed.html b/gentest/fixtures/YGAndroidNewsFeed.html new file mode 100644 index 00000000..1c9d60d1 --- /dev/null +++ b/gentest/fixtures/YGAndroidNewsFeed.html @@ -0,0 +1,28 @@ +
This source code is licensed under the BSD-style license found in the LICENSE file in the root
+ * directory of this source tree. An additional grant of patent rights can be found in the PATENTS
+ * file in the same directory.
+ */
+
+// @Generated by gentest/gentest.rb from gentest/fixtures/YGAndroidNewsFeed.html
+
+package com.facebook.yoga;
+
+import static org.junit.Assert.assertEquals;
+
+import org.junit.Test;
+
+public class YGAndroidNewsFeed {
+ @Test
+ public void test_android_news_feed() {
+ YogaConfig config = new YogaConfig();
+
+ final YogaNode root = new YogaNode(config);
+ root.setAlignContent(YogaAlign.STRETCH);
+ root.setWidth(1080f);
+
+ final YogaNode root_child0 = new YogaNode(config);
+ root.addChildAt(root_child0, 0);
+
+ final YogaNode root_child0_child0 = new YogaNode(config);
+ root_child0_child0.setAlignContent(YogaAlign.STRETCH);
+ root_child0.addChildAt(root_child0_child0, 0);
+
+ final YogaNode root_child0_child0_child0 = new YogaNode(config);
+ root_child0_child0_child0.setAlignContent(YogaAlign.STRETCH);
+ root_child0_child0.addChildAt(root_child0_child0_child0, 0);
+
+ final YogaNode root_child0_child0_child0_child0 = new YogaNode(config);
+ root_child0_child0_child0_child0.setFlexDirection(YogaFlexDirection.ROW);
+ root_child0_child0_child0_child0.setAlignContent(YogaAlign.STRETCH);
+ root_child0_child0_child0_child0.setAlignItems(YogaAlign.FLEX_START);
+ root_child0_child0_child0_child0.setMargin(YogaEdge.START, 36f);
+ root_child0_child0_child0_child0.setMargin(YogaEdge.TOP, 24f);
+ root_child0_child0_child0.addChildAt(root_child0_child0_child0_child0, 0);
+
+ final YogaNode root_child0_child0_child0_child0_child0 = new YogaNode(config);
+ root_child0_child0_child0_child0_child0.setFlexDirection(YogaFlexDirection.ROW);
+ root_child0_child0_child0_child0_child0.setAlignContent(YogaAlign.STRETCH);
+ root_child0_child0_child0_child0.addChildAt(root_child0_child0_child0_child0_child0, 0);
+
+ final YogaNode root_child0_child0_child0_child0_child0_child0 = new YogaNode(config);
+ root_child0_child0_child0_child0_child0_child0.setAlignContent(YogaAlign.STRETCH);
+ root_child0_child0_child0_child0_child0_child0.setWidth(120f);
+ root_child0_child0_child0_child0_child0_child0.setHeight(120f);
+ root_child0_child0_child0_child0_child0.addChildAt(
+ root_child0_child0_child0_child0_child0_child0, 0);
+
+ final YogaNode root_child0_child0_child0_child0_child1 = new YogaNode(config);
+ root_child0_child0_child0_child0_child1.setAlignContent(YogaAlign.STRETCH);
+ root_child0_child0_child0_child0_child1.setFlexShrink(1f);
+ root_child0_child0_child0_child0_child1.setMargin(YogaEdge.RIGHT, 36f);
+ root_child0_child0_child0_child0_child1.setPadding(YogaEdge.LEFT, 36);
+ root_child0_child0_child0_child0_child1.setPadding(YogaEdge.TOP, 21);
+ root_child0_child0_child0_child0_child1.setPadding(YogaEdge.RIGHT, 36);
+ root_child0_child0_child0_child0_child1.setPadding(YogaEdge.BOTTOM, 18);
+ root_child0_child0_child0_child0.addChildAt(root_child0_child0_child0_child0_child1, 1);
+
+ final YogaNode root_child0_child0_child0_child0_child1_child0 = new YogaNode(config);
+ root_child0_child0_child0_child0_child1_child0.setFlexDirection(YogaFlexDirection.ROW);
+ root_child0_child0_child0_child0_child1_child0.setAlignContent(YogaAlign.STRETCH);
+ root_child0_child0_child0_child0_child1_child0.setFlexShrink(1f);
+ root_child0_child0_child0_child0_child1.addChildAt(
+ root_child0_child0_child0_child0_child1_child0, 0);
+
+ final YogaNode root_child0_child0_child0_child0_child1_child1 = new YogaNode(config);
+ root_child0_child0_child0_child0_child1_child1.setAlignContent(YogaAlign.STRETCH);
+ root_child0_child0_child0_child0_child1_child1.setFlexShrink(1f);
+ root_child0_child0_child0_child0_child1.addChildAt(
+ root_child0_child0_child0_child0_child1_child1, 1);
+
+ final YogaNode root_child0_child0_child1 = new YogaNode(config);
+ root_child0_child0_child1.setAlignContent(YogaAlign.STRETCH);
+ root_child0_child0.addChildAt(root_child0_child0_child1, 1);
+
+ final YogaNode root_child0_child0_child1_child0 = new YogaNode(config);
+ root_child0_child0_child1_child0.setFlexDirection(YogaFlexDirection.ROW);
+ root_child0_child0_child1_child0.setAlignContent(YogaAlign.STRETCH);
+ root_child0_child0_child1_child0.setAlignItems(YogaAlign.FLEX_START);
+ root_child0_child0_child1_child0.setMargin(YogaEdge.START, 174f);
+ root_child0_child0_child1_child0.setMargin(YogaEdge.TOP, 24f);
+ root_child0_child0_child1.addChildAt(root_child0_child0_child1_child0, 0);
+
+ final YogaNode root_child0_child0_child1_child0_child0 = new YogaNode(config);
+ root_child0_child0_child1_child0_child0.setFlexDirection(YogaFlexDirection.ROW);
+ root_child0_child0_child1_child0_child0.setAlignContent(YogaAlign.STRETCH);
+ root_child0_child0_child1_child0.addChildAt(root_child0_child0_child1_child0_child0, 0);
+
+ final YogaNode root_child0_child0_child1_child0_child0_child0 = new YogaNode(config);
+ root_child0_child0_child1_child0_child0_child0.setAlignContent(YogaAlign.STRETCH);
+ root_child0_child0_child1_child0_child0_child0.setWidth(72f);
+ root_child0_child0_child1_child0_child0_child0.setHeight(72f);
+ root_child0_child0_child1_child0_child0.addChildAt(
+ root_child0_child0_child1_child0_child0_child0, 0);
+
+ final YogaNode root_child0_child0_child1_child0_child1 = new YogaNode(config);
+ root_child0_child0_child1_child0_child1.setAlignContent(YogaAlign.STRETCH);
+ root_child0_child0_child1_child0_child1.setFlexShrink(1f);
+ root_child0_child0_child1_child0_child1.setMargin(YogaEdge.RIGHT, 36f);
+ root_child0_child0_child1_child0_child1.setPadding(YogaEdge.LEFT, 36);
+ root_child0_child0_child1_child0_child1.setPadding(YogaEdge.TOP, 21);
+ root_child0_child0_child1_child0_child1.setPadding(YogaEdge.RIGHT, 36);
+ root_child0_child0_child1_child0_child1.setPadding(YogaEdge.BOTTOM, 18);
+ root_child0_child0_child1_child0.addChildAt(root_child0_child0_child1_child0_child1, 1);
+
+ final YogaNode root_child0_child0_child1_child0_child1_child0 = new YogaNode(config);
+ root_child0_child0_child1_child0_child1_child0.setFlexDirection(YogaFlexDirection.ROW);
+ root_child0_child0_child1_child0_child1_child0.setAlignContent(YogaAlign.STRETCH);
+ root_child0_child0_child1_child0_child1_child0.setFlexShrink(1f);
+ root_child0_child0_child1_child0_child1.addChildAt(
+ root_child0_child0_child1_child0_child1_child0, 0);
+
+ final YogaNode root_child0_child0_child1_child0_child1_child1 = new YogaNode(config);
+ root_child0_child0_child1_child0_child1_child1.setAlignContent(YogaAlign.STRETCH);
+ root_child0_child0_child1_child0_child1_child1.setFlexShrink(1f);
+ root_child0_child0_child1_child0_child1.addChildAt(
+ root_child0_child0_child1_child0_child1_child1, 1);
+ root.setDirection(YogaDirection.LTR);
+ root.calculateLayout(YogaConstants.UNDEFINED, YogaConstants.UNDEFINED);
+
+ assertEquals(0f, root.getLayoutX(), 0.0f);
+ assertEquals(0f, root.getLayoutY(), 0.0f);
+ assertEquals(1080f, root.getLayoutWidth(), 0.0f);
+ assertEquals(240f, root.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0.getLayoutY(), 0.0f);
+ assertEquals(1080f, root_child0.getLayoutWidth(), 0.0f);
+ assertEquals(240f, root_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(1080f, root_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(240f, root_child0_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(1080f, root_child0_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(144f, root_child0_child0_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(36f, root_child0_child0_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(24f, root_child0_child0_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(1044f, root_child0_child0_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(120f, root_child0_child0_child0_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0_child0_child0_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0_child0_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(120f, root_child0_child0_child0_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(120f, root_child0_child0_child0_child0_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0_child0_child0_child0_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0_child0_child0_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(120f, root_child0_child0_child0_child0_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(120f, root_child0_child0_child0_child0_child0_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(120f, root_child0_child0_child0_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0_child0_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(72f, root_child0_child0_child0_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(39f, root_child0_child0_child0_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(36f, root_child0_child0_child0_child0_child1_child0.getLayoutX(), 0.0f);
+ assertEquals(21f, root_child0_child0_child0_child0_child1_child0.getLayoutY(), 0.0f);
+ assertEquals(0f, root_child0_child0_child0_child0_child1_child0.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child0_child0_child0_child1_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(36f, root_child0_child0_child0_child0_child1_child1.getLayoutX(), 0.0f);
+ assertEquals(21f, root_child0_child0_child0_child0_child1_child1.getLayoutY(), 0.0f);
+ assertEquals(0f, root_child0_child0_child0_child0_child1_child1.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child0_child0_child0_child1_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(144f, root_child0_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(1080f, root_child0_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(96f, root_child0_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(174f, root_child0_child0_child1_child0.getLayoutX(), 0.0f);
+ assertEquals(24f, root_child0_child0_child1_child0.getLayoutY(), 0.0f);
+ assertEquals(906f, root_child0_child0_child1_child0.getLayoutWidth(), 0.0f);
+ assertEquals(72f, root_child0_child0_child1_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0_child0_child1_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0_child1_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(72f, root_child0_child0_child1_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(72f, root_child0_child0_child1_child0_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0_child0_child1_child0_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0_child1_child0_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(72f, root_child0_child0_child1_child0_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(72f, root_child0_child0_child1_child0_child0_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(72f, root_child0_child0_child1_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0_child1_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(72f, root_child0_child0_child1_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(39f, root_child0_child0_child1_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(36f, root_child0_child0_child1_child0_child1_child0.getLayoutX(), 0.0f);
+ assertEquals(21f, root_child0_child0_child1_child0_child1_child0.getLayoutY(), 0.0f);
+ assertEquals(0f, root_child0_child0_child1_child0_child1_child0.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child0_child1_child0_child1_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(36f, root_child0_child0_child1_child0_child1_child1.getLayoutX(), 0.0f);
+ assertEquals(21f, root_child0_child0_child1_child0_child1_child1.getLayoutY(), 0.0f);
+ assertEquals(0f, root_child0_child0_child1_child0_child1_child1.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child0_child1_child0_child1_child1.getLayoutHeight(), 0.0f);
+
+ root.setDirection(YogaDirection.RTL);
+ root.calculateLayout(YogaConstants.UNDEFINED, YogaConstants.UNDEFINED);
+
+ assertEquals(0f, root.getLayoutX(), 0.0f);
+ assertEquals(0f, root.getLayoutY(), 0.0f);
+ assertEquals(1080f, root.getLayoutWidth(), 0.0f);
+ assertEquals(240f, root.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0.getLayoutY(), 0.0f);
+ assertEquals(1080f, root_child0.getLayoutWidth(), 0.0f);
+ assertEquals(240f, root_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(1080f, root_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(240f, root_child0_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(1080f, root_child0_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(144f, root_child0_child0_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0_child0_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(24f, root_child0_child0_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(1044f, root_child0_child0_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(120f, root_child0_child0_child0_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(924f, root_child0_child0_child0_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0_child0_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(120f, root_child0_child0_child0_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(120f, root_child0_child0_child0_child0_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0_child0_child0_child0_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0_child0_child0_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(120f, root_child0_child0_child0_child0_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(120f, root_child0_child0_child0_child0_child0_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(816f, root_child0_child0_child0_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0_child0_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(72f, root_child0_child0_child0_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(39f, root_child0_child0_child0_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(36f, root_child0_child0_child0_child0_child1_child0.getLayoutX(), 0.0f);
+ assertEquals(21f, root_child0_child0_child0_child0_child1_child0.getLayoutY(), 0.0f);
+ assertEquals(0f, root_child0_child0_child0_child0_child1_child0.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child0_child0_child0_child1_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(36f, root_child0_child0_child0_child0_child1_child1.getLayoutX(), 0.0f);
+ assertEquals(21f, root_child0_child0_child0_child0_child1_child1.getLayoutY(), 0.0f);
+ assertEquals(0f, root_child0_child0_child0_child0_child1_child1.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child0_child0_child0_child1_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(144f, root_child0_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(1080f, root_child0_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(96f, root_child0_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0_child0_child1_child0.getLayoutX(), 0.0f);
+ assertEquals(24f, root_child0_child0_child1_child0.getLayoutY(), 0.0f);
+ assertEquals(906f, root_child0_child0_child1_child0.getLayoutWidth(), 0.0f);
+ assertEquals(72f, root_child0_child0_child1_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(834f, root_child0_child0_child1_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0_child1_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(72f, root_child0_child0_child1_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(72f, root_child0_child0_child1_child0_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(0f, root_child0_child0_child1_child0_child0_child0.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0_child1_child0_child0_child0.getLayoutY(), 0.0f);
+ assertEquals(72f, root_child0_child0_child1_child0_child0_child0.getLayoutWidth(), 0.0f);
+ assertEquals(72f, root_child0_child0_child1_child0_child0_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(726f, root_child0_child0_child1_child0_child1.getLayoutX(), 0.0f);
+ assertEquals(0f, root_child0_child0_child1_child0_child1.getLayoutY(), 0.0f);
+ assertEquals(72f, root_child0_child0_child1_child0_child1.getLayoutWidth(), 0.0f);
+ assertEquals(39f, root_child0_child0_child1_child0_child1.getLayoutHeight(), 0.0f);
+
+ assertEquals(36f, root_child0_child0_child1_child0_child1_child0.getLayoutX(), 0.0f);
+ assertEquals(21f, root_child0_child0_child1_child0_child1_child0.getLayoutY(), 0.0f);
+ assertEquals(0f, root_child0_child0_child1_child0_child1_child0.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child0_child1_child0_child1_child0.getLayoutHeight(), 0.0f);
+
+ assertEquals(36f, root_child0_child0_child1_child0_child1_child1.getLayoutX(), 0.0f);
+ assertEquals(21f, root_child0_child0_child1_child0_child1_child1.getLayoutY(), 0.0f);
+ assertEquals(0f, root_child0_child0_child1_child0_child1_child1.getLayoutWidth(), 0.0f);
+ assertEquals(0f, root_child0_child0_child1_child0_child1_child1.getLayoutHeight(), 0.0f);
+ }
+}
diff --git a/javascript/tests/Facebook.Yoga/YGAndroidNewsFeed.js b/javascript/tests/Facebook.Yoga/YGAndroidNewsFeed.js
new file mode 100644
index 00000000..4fc02214
--- /dev/null
+++ b/javascript/tests/Facebook.Yoga/YGAndroidNewsFeed.js
@@ -0,0 +1,296 @@
+/**
+ * Copyright (c) 2014-present, Facebook, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under the BSD-style license found in the
+ * LICENSE file in the root directory of this source tree. An additional grant
+ * of patent rights can be found in the PATENTS file in the same directory.
+ */
+
+// @Generated by gentest/gentest.rb from gentest/fixtures/YGAndroidNewsFeed.html
+
+var Yoga = Yoga || require("../../sources/entry-" + process.env.TEST_ENTRY);
+
+it("android_news_feed", function () {
+ var config = Yoga.Config.create();
+
+ try {
+ var root = Yoga.Node.create(config);
+ root.setAlignContent(Yoga.ALIGN_STRETCH);
+ root.setWidth(1080);
+
+ var root_child0 = Yoga.Node.create(config);
+ root.insertChild(root_child0, 0);
+
+ var root_child0_child0 = Yoga.Node.create(config);
+ root_child0_child0.setAlignContent(Yoga.ALIGN_STRETCH);
+ root_child0.insertChild(root_child0_child0, 0);
+
+ var root_child0_child0_child0 = Yoga.Node.create(config);
+ root_child0_child0_child0.setAlignContent(Yoga.ALIGN_STRETCH);
+ root_child0_child0.insertChild(root_child0_child0_child0, 0);
+
+ var root_child0_child0_child0_child0 = Yoga.Node.create(config);
+ root_child0_child0_child0_child0.setFlexDirection(Yoga.FLEX_DIRECTION_ROW);
+ root_child0_child0_child0_child0.setAlignContent(Yoga.ALIGN_STRETCH);
+ root_child0_child0_child0_child0.setAlignItems(Yoga.ALIGN_FLEX_START);
+ root_child0_child0_child0_child0.setMargin(Yoga.EDGE_START, 36);
+ root_child0_child0_child0_child0.setMargin(Yoga.EDGE_TOP, 24);
+ root_child0_child0_child0.insertChild(root_child0_child0_child0_child0, 0);
+
+ var root_child0_child0_child0_child0_child0 = Yoga.Node.create(config);
+ root_child0_child0_child0_child0_child0.setFlexDirection(Yoga.FLEX_DIRECTION_ROW);
+ root_child0_child0_child0_child0_child0.setAlignContent(Yoga.ALIGN_STRETCH);
+ root_child0_child0_child0_child0.insertChild(root_child0_child0_child0_child0_child0, 0);
+
+ var root_child0_child0_child0_child0_child0_child0 = Yoga.Node.create(config);
+ root_child0_child0_child0_child0_child0_child0.setAlignContent(Yoga.ALIGN_STRETCH);
+ root_child0_child0_child0_child0_child0_child0.setWidth(120);
+ root_child0_child0_child0_child0_child0_child0.setHeight(120);
+ root_child0_child0_child0_child0_child0.insertChild(root_child0_child0_child0_child0_child0_child0, 0);
+
+ var root_child0_child0_child0_child0_child1 = Yoga.Node.create(config);
+ root_child0_child0_child0_child0_child1.setAlignContent(Yoga.ALIGN_STRETCH);
+ root_child0_child0_child0_child0_child1.setFlexShrink(1);
+ root_child0_child0_child0_child0_child1.setMargin(Yoga.EDGE_RIGHT, 36);
+ root_child0_child0_child0_child0_child1.setPadding(Yoga.EDGE_LEFT, 36);
+ root_child0_child0_child0_child0_child1.setPadding(Yoga.EDGE_TOP, 21);
+ root_child0_child0_child0_child0_child1.setPadding(Yoga.EDGE_RIGHT, 36);
+ root_child0_child0_child0_child0_child1.setPadding(Yoga.EDGE_BOTTOM, 18);
+ root_child0_child0_child0_child0.insertChild(root_child0_child0_child0_child0_child1, 1);
+
+ var root_child0_child0_child0_child0_child1_child0 = Yoga.Node.create(config);
+ root_child0_child0_child0_child0_child1_child0.setFlexDirection(Yoga.FLEX_DIRECTION_ROW);
+ root_child0_child0_child0_child0_child1_child0.setAlignContent(Yoga.ALIGN_STRETCH);
+ root_child0_child0_child0_child0_child1_child0.setFlexShrink(1);
+ root_child0_child0_child0_child0_child1.insertChild(root_child0_child0_child0_child0_child1_child0, 0);
+
+ var root_child0_child0_child0_child0_child1_child1 = Yoga.Node.create(config);
+ root_child0_child0_child0_child0_child1_child1.setAlignContent(Yoga.ALIGN_STRETCH);
+ root_child0_child0_child0_child0_child1_child1.setFlexShrink(1);
+ root_child0_child0_child0_child0_child1.insertChild(root_child0_child0_child0_child0_child1_child1, 1);
+
+ var root_child0_child0_child1 = Yoga.Node.create(config);
+ root_child0_child0_child1.setAlignContent(Yoga.ALIGN_STRETCH);
+ root_child0_child0.insertChild(root_child0_child0_child1, 1);
+
+ var root_child0_child0_child1_child0 = Yoga.Node.create(config);
+ root_child0_child0_child1_child0.setFlexDirection(Yoga.FLEX_DIRECTION_ROW);
+ root_child0_child0_child1_child0.setAlignContent(Yoga.ALIGN_STRETCH);
+ root_child0_child0_child1_child0.setAlignItems(Yoga.ALIGN_FLEX_START);
+ root_child0_child0_child1_child0.setMargin(Yoga.EDGE_START, 174);
+ root_child0_child0_child1_child0.setMargin(Yoga.EDGE_TOP, 24);
+ root_child0_child0_child1.insertChild(root_child0_child0_child1_child0, 0);
+
+ var root_child0_child0_child1_child0_child0 = Yoga.Node.create(config);
+ root_child0_child0_child1_child0_child0.setFlexDirection(Yoga.FLEX_DIRECTION_ROW);
+ root_child0_child0_child1_child0_child0.setAlignContent(Yoga.ALIGN_STRETCH);
+ root_child0_child0_child1_child0.insertChild(root_child0_child0_child1_child0_child0, 0);
+
+ var root_child0_child0_child1_child0_child0_child0 = Yoga.Node.create(config);
+ root_child0_child0_child1_child0_child0_child0.setAlignContent(Yoga.ALIGN_STRETCH);
+ root_child0_child0_child1_child0_child0_child0.setWidth(72);
+ root_child0_child0_child1_child0_child0_child0.setHeight(72);
+ root_child0_child0_child1_child0_child0.insertChild(root_child0_child0_child1_child0_child0_child0, 0);
+
+ var root_child0_child0_child1_child0_child1 = Yoga.Node.create(config);
+ root_child0_child0_child1_child0_child1.setAlignContent(Yoga.ALIGN_STRETCH);
+ root_child0_child0_child1_child0_child1.setFlexShrink(1);
+ root_child0_child0_child1_child0_child1.setMargin(Yoga.EDGE_RIGHT, 36);
+ root_child0_child0_child1_child0_child1.setPadding(Yoga.EDGE_LEFT, 36);
+ root_child0_child0_child1_child0_child1.setPadding(Yoga.EDGE_TOP, 21);
+ root_child0_child0_child1_child0_child1.setPadding(Yoga.EDGE_RIGHT, 36);
+ root_child0_child0_child1_child0_child1.setPadding(Yoga.EDGE_BOTTOM, 18);
+ root_child0_child0_child1_child0.insertChild(root_child0_child0_child1_child0_child1, 1);
+
+ var root_child0_child0_child1_child0_child1_child0 = Yoga.Node.create(config);
+ root_child0_child0_child1_child0_child1_child0.setFlexDirection(Yoga.FLEX_DIRECTION_ROW);
+ root_child0_child0_child1_child0_child1_child0.setAlignContent(Yoga.ALIGN_STRETCH);
+ root_child0_child0_child1_child0_child1_child0.setFlexShrink(1);
+ root_child0_child0_child1_child0_child1.insertChild(root_child0_child0_child1_child0_child1_child0, 0);
+
+ var root_child0_child0_child1_child0_child1_child1 = Yoga.Node.create(config);
+ root_child0_child0_child1_child0_child1_child1.setAlignContent(Yoga.ALIGN_STRETCH);
+ root_child0_child0_child1_child0_child1_child1.setFlexShrink(1);
+ root_child0_child0_child1_child0_child1.insertChild(root_child0_child0_child1_child0_child1_child1, 1);
+ root.calculateLayout(Yoga.UNDEFINED, Yoga.UNDEFINED, Yoga.DIRECTION_LTR);
+
+ console.assert(0 === root.getComputedLeft(), "0 === root.getComputedLeft() (" + root.getComputedLeft() + ")");
+ console.assert(0 === root.getComputedTop(), "0 === root.getComputedTop() (" + root.getComputedTop() + ")");
+ console.assert(1080 === root.getComputedWidth(), "1080 === root.getComputedWidth() (" + root.getComputedWidth() + ")");
+ console.assert(240 === root.getComputedHeight(), "240 === root.getComputedHeight() (" + root.getComputedHeight() + ")");
+
+ console.assert(0 === root_child0.getComputedLeft(), "0 === root_child0.getComputedLeft() (" + root_child0.getComputedLeft() + ")");
+ console.assert(0 === root_child0.getComputedTop(), "0 === root_child0.getComputedTop() (" + root_child0.getComputedTop() + ")");
+ console.assert(1080 === root_child0.getComputedWidth(), "1080 === root_child0.getComputedWidth() (" + root_child0.getComputedWidth() + ")");
+ console.assert(240 === root_child0.getComputedHeight(), "240 === root_child0.getComputedHeight() (" + root_child0.getComputedHeight() + ")");
+
+ console.assert(0 === root_child0_child0.getComputedLeft(), "0 === root_child0_child0.getComputedLeft() (" + root_child0_child0.getComputedLeft() + ")");
+ console.assert(0 === root_child0_child0.getComputedTop(), "0 === root_child0_child0.getComputedTop() (" + root_child0_child0.getComputedTop() + ")");
+ console.assert(1080 === root_child0_child0.getComputedWidth(), "1080 === root_child0_child0.getComputedWidth() (" + root_child0_child0.getComputedWidth() + ")");
+ console.assert(240 === root_child0_child0.getComputedHeight(), "240 === root_child0_child0.getComputedHeight() (" + root_child0_child0.getComputedHeight() + ")");
+
+ console.assert(0 === root_child0_child0_child0.getComputedLeft(), "0 === root_child0_child0_child0.getComputedLeft() (" + root_child0_child0_child0.getComputedLeft() + ")");
+ console.assert(0 === root_child0_child0_child0.getComputedTop(), "0 === root_child0_child0_child0.getComputedTop() (" + root_child0_child0_child0.getComputedTop() + ")");
+ console.assert(1080 === root_child0_child0_child0.getComputedWidth(), "1080 === root_child0_child0_child0.getComputedWidth() (" + root_child0_child0_child0.getComputedWidth() + ")");
+ console.assert(144 === root_child0_child0_child0.getComputedHeight(), "144 === root_child0_child0_child0.getComputedHeight() (" + root_child0_child0_child0.getComputedHeight() + ")");
+
+ console.assert(36 === root_child0_child0_child0_child0.getComputedLeft(), "36 === root_child0_child0_child0_child0.getComputedLeft() (" + root_child0_child0_child0_child0.getComputedLeft() + ")");
+ console.assert(24 === root_child0_child0_child0_child0.getComputedTop(), "24 === root_child0_child0_child0_child0.getComputedTop() (" + root_child0_child0_child0_child0.getComputedTop() + ")");
+ console.assert(1044 === root_child0_child0_child0_child0.getComputedWidth(), "1044 === root_child0_child0_child0_child0.getComputedWidth() (" + root_child0_child0_child0_child0.getComputedWidth() + ")");
+ console.assert(120 === root_child0_child0_child0_child0.getComputedHeight(), "120 === root_child0_child0_child0_child0.getComputedHeight() (" + root_child0_child0_child0_child0.getComputedHeight() + ")");
+
+ console.assert(0 === root_child0_child0_child0_child0_child0.getComputedLeft(), "0 === root_child0_child0_child0_child0_child0.getComputedLeft() (" + root_child0_child0_child0_child0_child0.getComputedLeft() + ")");
+ console.assert(0 === root_child0_child0_child0_child0_child0.getComputedTop(), "0 === root_child0_child0_child0_child0_child0.getComputedTop() (" + root_child0_child0_child0_child0_child0.getComputedTop() + ")");
+ console.assert(120 === root_child0_child0_child0_child0_child0.getComputedWidth(), "120 === root_child0_child0_child0_child0_child0.getComputedWidth() (" + root_child0_child0_child0_child0_child0.getComputedWidth() + ")");
+ console.assert(120 === root_child0_child0_child0_child0_child0.getComputedHeight(), "120 === root_child0_child0_child0_child0_child0.getComputedHeight() (" + root_child0_child0_child0_child0_child0.getComputedHeight() + ")");
+
+ console.assert(0 === root_child0_child0_child0_child0_child0_child0.getComputedLeft(), "0 === root_child0_child0_child0_child0_child0_child0.getComputedLeft() (" + root_child0_child0_child0_child0_child0_child0.getComputedLeft() + ")");
+ console.assert(0 === root_child0_child0_child0_child0_child0_child0.getComputedTop(), "0 === root_child0_child0_child0_child0_child0_child0.getComputedTop() (" + root_child0_child0_child0_child0_child0_child0.getComputedTop() + ")");
+ console.assert(120 === root_child0_child0_child0_child0_child0_child0.getComputedWidth(), "120 === root_child0_child0_child0_child0_child0_child0.getComputedWidth() (" + root_child0_child0_child0_child0_child0_child0.getComputedWidth() + ")");
+ console.assert(120 === root_child0_child0_child0_child0_child0_child0.getComputedHeight(), "120 === root_child0_child0_child0_child0_child0_child0.getComputedHeight() (" + root_child0_child0_child0_child0_child0_child0.getComputedHeight() + ")");
+
+ console.assert(120 === root_child0_child0_child0_child0_child1.getComputedLeft(), "120 === root_child0_child0_child0_child0_child1.getComputedLeft() (" + root_child0_child0_child0_child0_child1.getComputedLeft() + ")");
+ console.assert(0 === root_child0_child0_child0_child0_child1.getComputedTop(), "0 === root_child0_child0_child0_child0_child1.getComputedTop() (" + root_child0_child0_child0_child0_child1.getComputedTop() + ")");
+ console.assert(72 === root_child0_child0_child0_child0_child1.getComputedWidth(), "72 === root_child0_child0_child0_child0_child1.getComputedWidth() (" + root_child0_child0_child0_child0_child1.getComputedWidth() + ")");
+ console.assert(39 === root_child0_child0_child0_child0_child1.getComputedHeight(), "39 === root_child0_child0_child0_child0_child1.getComputedHeight() (" + root_child0_child0_child0_child0_child1.getComputedHeight() + ")");
+
+ console.assert(36 === root_child0_child0_child0_child0_child1_child0.getComputedLeft(), "36 === root_child0_child0_child0_child0_child1_child0.getComputedLeft() (" + root_child0_child0_child0_child0_child1_child0.getComputedLeft() + ")");
+ console.assert(21 === root_child0_child0_child0_child0_child1_child0.getComputedTop(), "21 === root_child0_child0_child0_child0_child1_child0.getComputedTop() (" + root_child0_child0_child0_child0_child1_child0.getComputedTop() + ")");
+ console.assert(0 === root_child0_child0_child0_child0_child1_child0.getComputedWidth(), "0 === root_child0_child0_child0_child0_child1_child0.getComputedWidth() (" + root_child0_child0_child0_child0_child1_child0.getComputedWidth() + ")");
+ console.assert(0 === root_child0_child0_child0_child0_child1_child0.getComputedHeight(), "0 === root_child0_child0_child0_child0_child1_child0.getComputedHeight() (" + root_child0_child0_child0_child0_child1_child0.getComputedHeight() + ")");
+
+ console.assert(36 === root_child0_child0_child0_child0_child1_child1.getComputedLeft(), "36 === root_child0_child0_child0_child0_child1_child1.getComputedLeft() (" + root_child0_child0_child0_child0_child1_child1.getComputedLeft() + ")");
+ console.assert(21 === root_child0_child0_child0_child0_child1_child1.getComputedTop(), "21 === root_child0_child0_child0_child0_child1_child1.getComputedTop() (" + root_child0_child0_child0_child0_child1_child1.getComputedTop() + ")");
+ console.assert(0 === root_child0_child0_child0_child0_child1_child1.getComputedWidth(), "0 === root_child0_child0_child0_child0_child1_child1.getComputedWidth() (" + root_child0_child0_child0_child0_child1_child1.getComputedWidth() + ")");
+ console.assert(0 === root_child0_child0_child0_child0_child1_child1.getComputedHeight(), "0 === root_child0_child0_child0_child0_child1_child1.getComputedHeight() (" + root_child0_child0_child0_child0_child1_child1.getComputedHeight() + ")");
+
+ console.assert(0 === root_child0_child0_child1.getComputedLeft(), "0 === root_child0_child0_child1.getComputedLeft() (" + root_child0_child0_child1.getComputedLeft() + ")");
+ console.assert(144 === root_child0_child0_child1.getComputedTop(), "144 === root_child0_child0_child1.getComputedTop() (" + root_child0_child0_child1.getComputedTop() + ")");
+ console.assert(1080 === root_child0_child0_child1.getComputedWidth(), "1080 === root_child0_child0_child1.getComputedWidth() (" + root_child0_child0_child1.getComputedWidth() + ")");
+ console.assert(96 === root_child0_child0_child1.getComputedHeight(), "96 === root_child0_child0_child1.getComputedHeight() (" + root_child0_child0_child1.getComputedHeight() + ")");
+
+ console.assert(174 === root_child0_child0_child1_child0.getComputedLeft(), "174 === root_child0_child0_child1_child0.getComputedLeft() (" + root_child0_child0_child1_child0.getComputedLeft() + ")");
+ console.assert(24 === root_child0_child0_child1_child0.getComputedTop(), "24 === root_child0_child0_child1_child0.getComputedTop() (" + root_child0_child0_child1_child0.getComputedTop() + ")");
+ console.assert(906 === root_child0_child0_child1_child0.getComputedWidth(), "906 === root_child0_child0_child1_child0.getComputedWidth() (" + root_child0_child0_child1_child0.getComputedWidth() + ")");
+ console.assert(72 === root_child0_child0_child1_child0.getComputedHeight(), "72 === root_child0_child0_child1_child0.getComputedHeight() (" + root_child0_child0_child1_child0.getComputedHeight() + ")");
+
+ console.assert(0 === root_child0_child0_child1_child0_child0.getComputedLeft(), "0 === root_child0_child0_child1_child0_child0.getComputedLeft() (" + root_child0_child0_child1_child0_child0.getComputedLeft() + ")");
+ console.assert(0 === root_child0_child0_child1_child0_child0.getComputedTop(), "0 === root_child0_child0_child1_child0_child0.getComputedTop() (" + root_child0_child0_child1_child0_child0.getComputedTop() + ")");
+ console.assert(72 === root_child0_child0_child1_child0_child0.getComputedWidth(), "72 === root_child0_child0_child1_child0_child0.getComputedWidth() (" + root_child0_child0_child1_child0_child0.getComputedWidth() + ")");
+ console.assert(72 === root_child0_child0_child1_child0_child0.getComputedHeight(), "72 === root_child0_child0_child1_child0_child0.getComputedHeight() (" + root_child0_child0_child1_child0_child0.getComputedHeight() + ")");
+
+ console.assert(0 === root_child0_child0_child1_child0_child0_child0.getComputedLeft(), "0 === root_child0_child0_child1_child0_child0_child0.getComputedLeft() (" + root_child0_child0_child1_child0_child0_child0.getComputedLeft() + ")");
+ console.assert(0 === root_child0_child0_child1_child0_child0_child0.getComputedTop(), "0 === root_child0_child0_child1_child0_child0_child0.getComputedTop() (" + root_child0_child0_child1_child0_child0_child0.getComputedTop() + ")");
+ console.assert(72 === root_child0_child0_child1_child0_child0_child0.getComputedWidth(), "72 === root_child0_child0_child1_child0_child0_child0.getComputedWidth() (" + root_child0_child0_child1_child0_child0_child0.getComputedWidth() + ")");
+ console.assert(72 === root_child0_child0_child1_child0_child0_child0.getComputedHeight(), "72 === root_child0_child0_child1_child0_child0_child0.getComputedHeight() (" + root_child0_child0_child1_child0_child0_child0.getComputedHeight() + ")");
+
+ console.assert(72 === root_child0_child0_child1_child0_child1.getComputedLeft(), "72 === root_child0_child0_child1_child0_child1.getComputedLeft() (" + root_child0_child0_child1_child0_child1.getComputedLeft() + ")");
+ console.assert(0 === root_child0_child0_child1_child0_child1.getComputedTop(), "0 === root_child0_child0_child1_child0_child1.getComputedTop() (" + root_child0_child0_child1_child0_child1.getComputedTop() + ")");
+ console.assert(72 === root_child0_child0_child1_child0_child1.getComputedWidth(), "72 === root_child0_child0_child1_child0_child1.getComputedWidth() (" + root_child0_child0_child1_child0_child1.getComputedWidth() + ")");
+ console.assert(39 === root_child0_child0_child1_child0_child1.getComputedHeight(), "39 === root_child0_child0_child1_child0_child1.getComputedHeight() (" + root_child0_child0_child1_child0_child1.getComputedHeight() + ")");
+
+ console.assert(36 === root_child0_child0_child1_child0_child1_child0.getComputedLeft(), "36 === root_child0_child0_child1_child0_child1_child0.getComputedLeft() (" + root_child0_child0_child1_child0_child1_child0.getComputedLeft() + ")");
+ console.assert(21 === root_child0_child0_child1_child0_child1_child0.getComputedTop(), "21 === root_child0_child0_child1_child0_child1_child0.getComputedTop() (" + root_child0_child0_child1_child0_child1_child0.getComputedTop() + ")");
+ console.assert(0 === root_child0_child0_child1_child0_child1_child0.getComputedWidth(), "0 === root_child0_child0_child1_child0_child1_child0.getComputedWidth() (" + root_child0_child0_child1_child0_child1_child0.getComputedWidth() + ")");
+ console.assert(0 === root_child0_child0_child1_child0_child1_child0.getComputedHeight(), "0 === root_child0_child0_child1_child0_child1_child0.getComputedHeight() (" + root_child0_child0_child1_child0_child1_child0.getComputedHeight() + ")");
+
+ console.assert(36 === root_child0_child0_child1_child0_child1_child1.getComputedLeft(), "36 === root_child0_child0_child1_child0_child1_child1.getComputedLeft() (" + root_child0_child0_child1_child0_child1_child1.getComputedLeft() + ")");
+ console.assert(21 === root_child0_child0_child1_child0_child1_child1.getComputedTop(), "21 === root_child0_child0_child1_child0_child1_child1.getComputedTop() (" + root_child0_child0_child1_child0_child1_child1.getComputedTop() + ")");
+ console.assert(0 === root_child0_child0_child1_child0_child1_child1.getComputedWidth(), "0 === root_child0_child0_child1_child0_child1_child1.getComputedWidth() (" + root_child0_child0_child1_child0_child1_child1.getComputedWidth() + ")");
+ console.assert(0 === root_child0_child0_child1_child0_child1_child1.getComputedHeight(), "0 === root_child0_child0_child1_child0_child1_child1.getComputedHeight() (" + root_child0_child0_child1_child0_child1_child1.getComputedHeight() + ")");
+
+ root.calculateLayout(Yoga.UNDEFINED, Yoga.UNDEFINED, Yoga.DIRECTION_RTL);
+
+ console.assert(0 === root.getComputedLeft(), "0 === root.getComputedLeft() (" + root.getComputedLeft() + ")");
+ console.assert(0 === root.getComputedTop(), "0 === root.getComputedTop() (" + root.getComputedTop() + ")");
+ console.assert(1080 === root.getComputedWidth(), "1080 === root.getComputedWidth() (" + root.getComputedWidth() + ")");
+ console.assert(240 === root.getComputedHeight(), "240 === root.getComputedHeight() (" + root.getComputedHeight() + ")");
+
+ console.assert(0 === root_child0.getComputedLeft(), "0 === root_child0.getComputedLeft() (" + root_child0.getComputedLeft() + ")");
+ console.assert(0 === root_child0.getComputedTop(), "0 === root_child0.getComputedTop() (" + root_child0.getComputedTop() + ")");
+ console.assert(1080 === root_child0.getComputedWidth(), "1080 === root_child0.getComputedWidth() (" + root_child0.getComputedWidth() + ")");
+ console.assert(240 === root_child0.getComputedHeight(), "240 === root_child0.getComputedHeight() (" + root_child0.getComputedHeight() + ")");
+
+ console.assert(0 === root_child0_child0.getComputedLeft(), "0 === root_child0_child0.getComputedLeft() (" + root_child0_child0.getComputedLeft() + ")");
+ console.assert(0 === root_child0_child0.getComputedTop(), "0 === root_child0_child0.getComputedTop() (" + root_child0_child0.getComputedTop() + ")");
+ console.assert(1080 === root_child0_child0.getComputedWidth(), "1080 === root_child0_child0.getComputedWidth() (" + root_child0_child0.getComputedWidth() + ")");
+ console.assert(240 === root_child0_child0.getComputedHeight(), "240 === root_child0_child0.getComputedHeight() (" + root_child0_child0.getComputedHeight() + ")");
+
+ console.assert(0 === root_child0_child0_child0.getComputedLeft(), "0 === root_child0_child0_child0.getComputedLeft() (" + root_child0_child0_child0.getComputedLeft() + ")");
+ console.assert(0 === root_child0_child0_child0.getComputedTop(), "0 === root_child0_child0_child0.getComputedTop() (" + root_child0_child0_child0.getComputedTop() + ")");
+ console.assert(1080 === root_child0_child0_child0.getComputedWidth(), "1080 === root_child0_child0_child0.getComputedWidth() (" + root_child0_child0_child0.getComputedWidth() + ")");
+ console.assert(144 === root_child0_child0_child0.getComputedHeight(), "144 === root_child0_child0_child0.getComputedHeight() (" + root_child0_child0_child0.getComputedHeight() + ")");
+
+ console.assert(0 === root_child0_child0_child0_child0.getComputedLeft(), "0 === root_child0_child0_child0_child0.getComputedLeft() (" + root_child0_child0_child0_child0.getComputedLeft() + ")");
+ console.assert(24 === root_child0_child0_child0_child0.getComputedTop(), "24 === root_child0_child0_child0_child0.getComputedTop() (" + root_child0_child0_child0_child0.getComputedTop() + ")");
+ console.assert(1044 === root_child0_child0_child0_child0.getComputedWidth(), "1044 === root_child0_child0_child0_child0.getComputedWidth() (" + root_child0_child0_child0_child0.getComputedWidth() + ")");
+ console.assert(120 === root_child0_child0_child0_child0.getComputedHeight(), "120 === root_child0_child0_child0_child0.getComputedHeight() (" + root_child0_child0_child0_child0.getComputedHeight() + ")");
+
+ console.assert(924 === root_child0_child0_child0_child0_child0.getComputedLeft(), "924 === root_child0_child0_child0_child0_child0.getComputedLeft() (" + root_child0_child0_child0_child0_child0.getComputedLeft() + ")");
+ console.assert(0 === root_child0_child0_child0_child0_child0.getComputedTop(), "0 === root_child0_child0_child0_child0_child0.getComputedTop() (" + root_child0_child0_child0_child0_child0.getComputedTop() + ")");
+ console.assert(120 === root_child0_child0_child0_child0_child0.getComputedWidth(), "120 === root_child0_child0_child0_child0_child0.getComputedWidth() (" + root_child0_child0_child0_child0_child0.getComputedWidth() + ")");
+ console.assert(120 === root_child0_child0_child0_child0_child0.getComputedHeight(), "120 === root_child0_child0_child0_child0_child0.getComputedHeight() (" + root_child0_child0_child0_child0_child0.getComputedHeight() + ")");
+
+ console.assert(0 === root_child0_child0_child0_child0_child0_child0.getComputedLeft(), "0 === root_child0_child0_child0_child0_child0_child0.getComputedLeft() (" + root_child0_child0_child0_child0_child0_child0.getComputedLeft() + ")");
+ console.assert(0 === root_child0_child0_child0_child0_child0_child0.getComputedTop(), "0 === root_child0_child0_child0_child0_child0_child0.getComputedTop() (" + root_child0_child0_child0_child0_child0_child0.getComputedTop() + ")");
+ console.assert(120 === root_child0_child0_child0_child0_child0_child0.getComputedWidth(), "120 === root_child0_child0_child0_child0_child0_child0.getComputedWidth() (" + root_child0_child0_child0_child0_child0_child0.getComputedWidth() + ")");
+ console.assert(120 === root_child0_child0_child0_child0_child0_child0.getComputedHeight(), "120 === root_child0_child0_child0_child0_child0_child0.getComputedHeight() (" + root_child0_child0_child0_child0_child0_child0.getComputedHeight() + ")");
+
+ console.assert(816 === root_child0_child0_child0_child0_child1.getComputedLeft(), "816 === root_child0_child0_child0_child0_child1.getComputedLeft() (" + root_child0_child0_child0_child0_child1.getComputedLeft() + ")");
+ console.assert(0 === root_child0_child0_child0_child0_child1.getComputedTop(), "0 === root_child0_child0_child0_child0_child1.getComputedTop() (" + root_child0_child0_child0_child0_child1.getComputedTop() + ")");
+ console.assert(72 === root_child0_child0_child0_child0_child1.getComputedWidth(), "72 === root_child0_child0_child0_child0_child1.getComputedWidth() (" + root_child0_child0_child0_child0_child1.getComputedWidth() + ")");
+ console.assert(39 === root_child0_child0_child0_child0_child1.getComputedHeight(), "39 === root_child0_child0_child0_child0_child1.getComputedHeight() (" + root_child0_child0_child0_child0_child1.getComputedHeight() + ")");
+
+ console.assert(36 === root_child0_child0_child0_child0_child1_child0.getComputedLeft(), "36 === root_child0_child0_child0_child0_child1_child0.getComputedLeft() (" + root_child0_child0_child0_child0_child1_child0.getComputedLeft() + ")");
+ console.assert(21 === root_child0_child0_child0_child0_child1_child0.getComputedTop(), "21 === root_child0_child0_child0_child0_child1_child0.getComputedTop() (" + root_child0_child0_child0_child0_child1_child0.getComputedTop() + ")");
+ console.assert(0 === root_child0_child0_child0_child0_child1_child0.getComputedWidth(), "0 === root_child0_child0_child0_child0_child1_child0.getComputedWidth() (" + root_child0_child0_child0_child0_child1_child0.getComputedWidth() + ")");
+ console.assert(0 === root_child0_child0_child0_child0_child1_child0.getComputedHeight(), "0 === root_child0_child0_child0_child0_child1_child0.getComputedHeight() (" + root_child0_child0_child0_child0_child1_child0.getComputedHeight() + ")");
+
+ console.assert(36 === root_child0_child0_child0_child0_child1_child1.getComputedLeft(), "36 === root_child0_child0_child0_child0_child1_child1.getComputedLeft() (" + root_child0_child0_child0_child0_child1_child1.getComputedLeft() + ")");
+ console.assert(21 === root_child0_child0_child0_child0_child1_child1.getComputedTop(), "21 === root_child0_child0_child0_child0_child1_child1.getComputedTop() (" + root_child0_child0_child0_child0_child1_child1.getComputedTop() + ")");
+ console.assert(0 === root_child0_child0_child0_child0_child1_child1.getComputedWidth(), "0 === root_child0_child0_child0_child0_child1_child1.getComputedWidth() (" + root_child0_child0_child0_child0_child1_child1.getComputedWidth() + ")");
+ console.assert(0 === root_child0_child0_child0_child0_child1_child1.getComputedHeight(), "0 === root_child0_child0_child0_child0_child1_child1.getComputedHeight() (" + root_child0_child0_child0_child0_child1_child1.getComputedHeight() + ")");
+
+ console.assert(0 === root_child0_child0_child1.getComputedLeft(), "0 === root_child0_child0_child1.getComputedLeft() (" + root_child0_child0_child1.getComputedLeft() + ")");
+ console.assert(144 === root_child0_child0_child1.getComputedTop(), "144 === root_child0_child0_child1.getComputedTop() (" + root_child0_child0_child1.getComputedTop() + ")");
+ console.assert(1080 === root_child0_child0_child1.getComputedWidth(), "1080 === root_child0_child0_child1.getComputedWidth() (" + root_child0_child0_child1.getComputedWidth() + ")");
+ console.assert(96 === root_child0_child0_child1.getComputedHeight(), "96 === root_child0_child0_child1.getComputedHeight() (" + root_child0_child0_child1.getComputedHeight() + ")");
+
+ console.assert(0 === root_child0_child0_child1_child0.getComputedLeft(), "0 === root_child0_child0_child1_child0.getComputedLeft() (" + root_child0_child0_child1_child0.getComputedLeft() + ")");
+ console.assert(24 === root_child0_child0_child1_child0.getComputedTop(), "24 === root_child0_child0_child1_child0.getComputedTop() (" + root_child0_child0_child1_child0.getComputedTop() + ")");
+ console.assert(906 === root_child0_child0_child1_child0.getComputedWidth(), "906 === root_child0_child0_child1_child0.getComputedWidth() (" + root_child0_child0_child1_child0.getComputedWidth() + ")");
+ console.assert(72 === root_child0_child0_child1_child0.getComputedHeight(), "72 === root_child0_child0_child1_child0.getComputedHeight() (" + root_child0_child0_child1_child0.getComputedHeight() + ")");
+
+ console.assert(834 === root_child0_child0_child1_child0_child0.getComputedLeft(), "834 === root_child0_child0_child1_child0_child0.getComputedLeft() (" + root_child0_child0_child1_child0_child0.getComputedLeft() + ")");
+ console.assert(0 === root_child0_child0_child1_child0_child0.getComputedTop(), "0 === root_child0_child0_child1_child0_child0.getComputedTop() (" + root_child0_child0_child1_child0_child0.getComputedTop() + ")");
+ console.assert(72 === root_child0_child0_child1_child0_child0.getComputedWidth(), "72 === root_child0_child0_child1_child0_child0.getComputedWidth() (" + root_child0_child0_child1_child0_child0.getComputedWidth() + ")");
+ console.assert(72 === root_child0_child0_child1_child0_child0.getComputedHeight(), "72 === root_child0_child0_child1_child0_child0.getComputedHeight() (" + root_child0_child0_child1_child0_child0.getComputedHeight() + ")");
+
+ console.assert(0 === root_child0_child0_child1_child0_child0_child0.getComputedLeft(), "0 === root_child0_child0_child1_child0_child0_child0.getComputedLeft() (" + root_child0_child0_child1_child0_child0_child0.getComputedLeft() + ")");
+ console.assert(0 === root_child0_child0_child1_child0_child0_child0.getComputedTop(), "0 === root_child0_child0_child1_child0_child0_child0.getComputedTop() (" + root_child0_child0_child1_child0_child0_child0.getComputedTop() + ")");
+ console.assert(72 === root_child0_child0_child1_child0_child0_child0.getComputedWidth(), "72 === root_child0_child0_child1_child0_child0_child0.getComputedWidth() (" + root_child0_child0_child1_child0_child0_child0.getComputedWidth() + ")");
+ console.assert(72 === root_child0_child0_child1_child0_child0_child0.getComputedHeight(), "72 === root_child0_child0_child1_child0_child0_child0.getComputedHeight() (" + root_child0_child0_child1_child0_child0_child0.getComputedHeight() + ")");
+
+ console.assert(726 === root_child0_child0_child1_child0_child1.getComputedLeft(), "726 === root_child0_child0_child1_child0_child1.getComputedLeft() (" + root_child0_child0_child1_child0_child1.getComputedLeft() + ")");
+ console.assert(0 === root_child0_child0_child1_child0_child1.getComputedTop(), "0 === root_child0_child0_child1_child0_child1.getComputedTop() (" + root_child0_child0_child1_child0_child1.getComputedTop() + ")");
+ console.assert(72 === root_child0_child0_child1_child0_child1.getComputedWidth(), "72 === root_child0_child0_child1_child0_child1.getComputedWidth() (" + root_child0_child0_child1_child0_child1.getComputedWidth() + ")");
+ console.assert(39 === root_child0_child0_child1_child0_child1.getComputedHeight(), "39 === root_child0_child0_child1_child0_child1.getComputedHeight() (" + root_child0_child0_child1_child0_child1.getComputedHeight() + ")");
+
+ console.assert(36 === root_child0_child0_child1_child0_child1_child0.getComputedLeft(), "36 === root_child0_child0_child1_child0_child1_child0.getComputedLeft() (" + root_child0_child0_child1_child0_child1_child0.getComputedLeft() + ")");
+ console.assert(21 === root_child0_child0_child1_child0_child1_child0.getComputedTop(), "21 === root_child0_child0_child1_child0_child1_child0.getComputedTop() (" + root_child0_child0_child1_child0_child1_child0.getComputedTop() + ")");
+ console.assert(0 === root_child0_child0_child1_child0_child1_child0.getComputedWidth(), "0 === root_child0_child0_child1_child0_child1_child0.getComputedWidth() (" + root_child0_child0_child1_child0_child1_child0.getComputedWidth() + ")");
+ console.assert(0 === root_child0_child0_child1_child0_child1_child0.getComputedHeight(), "0 === root_child0_child0_child1_child0_child1_child0.getComputedHeight() (" + root_child0_child0_child1_child0_child1_child0.getComputedHeight() + ")");
+
+ console.assert(36 === root_child0_child0_child1_child0_child1_child1.getComputedLeft(), "36 === root_child0_child0_child1_child0_child1_child1.getComputedLeft() (" + root_child0_child0_child1_child0_child1_child1.getComputedLeft() + ")");
+ console.assert(21 === root_child0_child0_child1_child0_child1_child1.getComputedTop(), "21 === root_child0_child0_child1_child0_child1_child1.getComputedTop() (" + root_child0_child0_child1_child0_child1_child1.getComputedTop() + ")");
+ console.assert(0 === root_child0_child0_child1_child0_child1_child1.getComputedWidth(), "0 === root_child0_child0_child1_child0_child1_child1.getComputedWidth() (" + root_child0_child0_child1_child0_child1_child1.getComputedWidth() + ")");
+ console.assert(0 === root_child0_child0_child1_child0_child1_child1.getComputedHeight(), "0 === root_child0_child0_child1_child0_child1_child1.getComputedHeight() (" + root_child0_child0_child1_child0_child1_child1.getComputedHeight() + ")");
+ } finally {
+ if (typeof root !== "undefined") {
+ root.freeRecursive();
+ }
+
+ config.free();
+ }
+});
diff --git a/tests/YGAndroidNewsFeed.cpp b/tests/YGAndroidNewsFeed.cpp
new file mode 100644
index 00000000..4ceb0d2c
--- /dev/null
+++ b/tests/YGAndroidNewsFeed.cpp
@@ -0,0 +1,447 @@
+/**
+ * Copyright (c) 2014-present, Facebook, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under the BSD-style license found in the
+ * LICENSE file in the root directory of this source tree. An additional grant
+ * of patent rights can be found in the PATENTS file in the same directory.
+ */
+
+// @Generated by gentest/gentest.rb from gentest/fixtures/YGAndroidNewsFeed.html
+
+#include