Files
yoga/java/tests/com/facebook/csslayout/CSSLayoutPaddingTest.java

228 lines
7.6 KiB
Java
Raw Normal View History

/**
* 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.sh with the following input
*
<div id="padding_no_size" style="padding: 10px;">
</div>
<div id="padding_container_match_child" style="padding: 10px;">
<div style="width: 10px; height: 10px;"></div>
</div>
<div id="padding_flex_child" style="width: 100px; height: 100px; padding: 10px;">
<div style="width: 10px; flex-grow:1"></div>
</div>
<div id="padding_stretch_child" style="width: 100px; height: 100px; padding: 10px;">
<div style="height: 10px;"></div>
</div>
<div id="padding_center_child" style="width: 100px; height: 100px; padding-start: 10px; padding-top: 10; padding-end: 20px; padding-bottom: 20px; align-items: center; justify-content: center;">
<div style="height: 10px; width: 10px;"></div>
</div>
*
*/
package com.facebook.csslayout;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
public class CSSLayoutPaddingTest {
@Test
public void test_padding_no_size() {
final CSSNode root = new CSSNode();
root.setPadding(Spacing.LEFT, 10);
root.setPadding(Spacing.TOP, 10);
root.setPadding(Spacing.RIGHT, 10);
root.setPadding(Spacing.BOTTOM, 10);
root.setDirection(CSSDirection.LTR);
root.calculateLayout(null);
assertEquals(0, root.getLayoutX(), 0.0f);
assertEquals(0, root.getLayoutY(), 0.0f);
assertEquals(20, root.getLayoutWidth(), 0.0f);
assertEquals(20, root.getLayoutHeight(), 0.0f);
root.setDirection(CSSDirection.RTL);
root.calculateLayout(null);
assertEquals(0, root.getLayoutX(), 0.0f);
assertEquals(0, root.getLayoutY(), 0.0f);
assertEquals(20, root.getLayoutWidth(), 0.0f);
assertEquals(20, root.getLayoutHeight(), 0.0f);
}
@Test
public void test_padding_container_match_child() {
final CSSNode root = new CSSNode();
root.setPadding(Spacing.LEFT, 10);
root.setPadding(Spacing.TOP, 10);
root.setPadding(Spacing.RIGHT, 10);
root.setPadding(Spacing.BOTTOM, 10);
final CSSNode root_child0 = new CSSNode();
root_child0.setStyleWidth(10);
root_child0.setStyleHeight(10);
root.addChildAt(root_child0, 0);
root.setDirection(CSSDirection.LTR);
root.calculateLayout(null);
assertEquals(0, root.getLayoutX(), 0.0f);
assertEquals(0, root.getLayoutY(), 0.0f);
assertEquals(30, root.getLayoutWidth(), 0.0f);
assertEquals(30, root.getLayoutHeight(), 0.0f);
assertEquals(10, root_child0.getLayoutX(), 0.0f);
assertEquals(10, root_child0.getLayoutY(), 0.0f);
assertEquals(10, root_child0.getLayoutWidth(), 0.0f);
assertEquals(10, root_child0.getLayoutHeight(), 0.0f);
root.setDirection(CSSDirection.RTL);
root.calculateLayout(null);
assertEquals(0, root.getLayoutX(), 0.0f);
assertEquals(0, root.getLayoutY(), 0.0f);
assertEquals(30, root.getLayoutWidth(), 0.0f);
assertEquals(30, root.getLayoutHeight(), 0.0f);
assertEquals(10, root_child0.getLayoutX(), 0.0f);
assertEquals(10, root_child0.getLayoutY(), 0.0f);
assertEquals(10, root_child0.getLayoutWidth(), 0.0f);
assertEquals(10, root_child0.getLayoutHeight(), 0.0f);
}
@Test
public void test_padding_flex_child() {
final CSSNode root = new CSSNode();
root.setPadding(Spacing.LEFT, 10);
root.setPadding(Spacing.TOP, 10);
root.setPadding(Spacing.RIGHT, 10);
root.setPadding(Spacing.BOTTOM, 10);
root.setStyleWidth(100);
root.setStyleHeight(100);
final CSSNode root_child0 = new CSSNode();
root_child0.setFlexGrow(1);
root_child0.setStyleWidth(10);
root.addChildAt(root_child0, 0);
root.setDirection(CSSDirection.LTR);
root.calculateLayout(null);
assertEquals(0, root.getLayoutX(), 0.0f);
assertEquals(0, root.getLayoutY(), 0.0f);
assertEquals(100, root.getLayoutWidth(), 0.0f);
assertEquals(100, root.getLayoutHeight(), 0.0f);
assertEquals(10, root_child0.getLayoutX(), 0.0f);
assertEquals(10, root_child0.getLayoutY(), 0.0f);
assertEquals(10, root_child0.getLayoutWidth(), 0.0f);
assertEquals(80, root_child0.getLayoutHeight(), 0.0f);
root.setDirection(CSSDirection.RTL);
root.calculateLayout(null);
assertEquals(0, root.getLayoutX(), 0.0f);
assertEquals(0, root.getLayoutY(), 0.0f);
assertEquals(100, root.getLayoutWidth(), 0.0f);
assertEquals(100, root.getLayoutHeight(), 0.0f);
assertEquals(80, root_child0.getLayoutX(), 0.0f);
assertEquals(10, root_child0.getLayoutY(), 0.0f);
assertEquals(10, root_child0.getLayoutWidth(), 0.0f);
assertEquals(80, root_child0.getLayoutHeight(), 0.0f);
}
@Test
public void test_padding_stretch_child() {
final CSSNode root = new CSSNode();
root.setPadding(Spacing.LEFT, 10);
root.setPadding(Spacing.TOP, 10);
root.setPadding(Spacing.RIGHT, 10);
root.setPadding(Spacing.BOTTOM, 10);
root.setStyleWidth(100);
root.setStyleHeight(100);
final CSSNode root_child0 = new CSSNode();
root_child0.setStyleHeight(10);
root.addChildAt(root_child0, 0);
root.setDirection(CSSDirection.LTR);
root.calculateLayout(null);
assertEquals(0, root.getLayoutX(), 0.0f);
assertEquals(0, root.getLayoutY(), 0.0f);
assertEquals(100, root.getLayoutWidth(), 0.0f);
assertEquals(100, root.getLayoutHeight(), 0.0f);
assertEquals(10, root_child0.getLayoutX(), 0.0f);
assertEquals(10, root_child0.getLayoutY(), 0.0f);
assertEquals(80, root_child0.getLayoutWidth(), 0.0f);
assertEquals(10, root_child0.getLayoutHeight(), 0.0f);
root.setDirection(CSSDirection.RTL);
root.calculateLayout(null);
assertEquals(0, root.getLayoutX(), 0.0f);
assertEquals(0, root.getLayoutY(), 0.0f);
assertEquals(100, root.getLayoutWidth(), 0.0f);
assertEquals(100, root.getLayoutHeight(), 0.0f);
assertEquals(10, root_child0.getLayoutX(), 0.0f);
assertEquals(10, root_child0.getLayoutY(), 0.0f);
assertEquals(80, root_child0.getLayoutWidth(), 0.0f);
assertEquals(10, root_child0.getLayoutHeight(), 0.0f);
}
@Test
public void test_padding_center_child() {
final CSSNode root = new CSSNode();
root.setJustifyContent(CSSJustify.CENTER);
root.setAlignItems(CSSAlign.CENTER);
root.setPadding(Spacing.START, 10);
root.setPadding(Spacing.END, 20);
root.setPadding(Spacing.BOTTOM, 20);
root.setStyleWidth(100);
root.setStyleHeight(100);
final CSSNode root_child0 = new CSSNode();
root_child0.setStyleWidth(10);
root_child0.setStyleHeight(10);
root.addChildAt(root_child0, 0);
root.setDirection(CSSDirection.LTR);
root.calculateLayout(null);
assertEquals(0, root.getLayoutX(), 0.0f);
assertEquals(0, root.getLayoutY(), 0.0f);
assertEquals(100, root.getLayoutWidth(), 0.0f);
assertEquals(100, root.getLayoutHeight(), 0.0f);
assertEquals(40, root_child0.getLayoutX(), 0.0f);
assertEquals(35, root_child0.getLayoutY(), 0.0f);
assertEquals(10, root_child0.getLayoutWidth(), 0.0f);
assertEquals(10, root_child0.getLayoutHeight(), 0.0f);
root.setDirection(CSSDirection.RTL);
root.calculateLayout(null);
assertEquals(0, root.getLayoutX(), 0.0f);
assertEquals(0, root.getLayoutY(), 0.0f);
assertEquals(100, root.getLayoutWidth(), 0.0f);
assertEquals(100, root.getLayoutHeight(), 0.0f);
assertEquals(50, root_child0.getLayoutX(), 0.0f);
assertEquals(35, root_child0.getLayoutY(), 0.0f);
assertEquals(10, root_child0.getLayoutWidth(), 0.0f);
assertEquals(10, root_child0.getLayoutHeight(), 0.0f);
}
}