From e9f53eee2cfbf8e0be80364f9b7a0877169fc8a5 Mon Sep 17 00:00:00 2001 From: Emil Sjolander Date: Thu, 14 Jul 2016 09:33:57 -0700 Subject: [PATCH] Remove CSSLayoutTestUtils from RN Reviewed By: javache Differential Revision: D3561502 fbshipit-source-id: 3a58ed9fb291793d70cc3e8f4ae21fabff73275e --- React/CSSLayout/CSSLayoutTestUtils.c | 139 --------------------------- React/CSSLayout/CSSLayoutTestUtils.h | 37 ------- React/CSSLayout/README | 15 --- 3 files changed, 191 deletions(-) delete mode 100644 React/CSSLayout/CSSLayoutTestUtils.c delete mode 100644 React/CSSLayout/CSSLayoutTestUtils.h delete mode 100644 React/CSSLayout/README diff --git a/React/CSSLayout/CSSLayoutTestUtils.c b/React/CSSLayout/CSSLayoutTestUtils.c deleted file mode 100644 index e5e19271c..000000000 --- a/React/CSSLayout/CSSLayoutTestUtils.c +++ /dev/null @@ -1,139 +0,0 @@ -/** - * 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. - */ - -#include "CSSLayoutTestUtils.h" -#include - -#ifdef _MSC_VER -#include -#define isnan _isnan - -/* define fmaxf & fminf if < VC12 */ -#if _MSC_VER < 1800 -__forceinline const float fmaxf(const float a, const float b) { - return (a > b) ? a : b; -} -__forceinline const float fminf(const float a, const float b) { - return (a < b) ? a : b; -} -#endif -#endif - -static bool eq(float a, float b) { - return fabs(a - b) < 0.0001; -} - -static bool are_layout_equal(css_node_t *a, css_node_t *b) { - if (!eq(a->layout.dimensions[CSS_WIDTH], b->layout.dimensions[CSS_WIDTH]) || - !eq(a->layout.dimensions[CSS_HEIGHT], b->layout.dimensions[CSS_HEIGHT]) || - !eq(a->layout.position[CSS_TOP], b->layout.position[CSS_TOP]) || - !eq(a->layout.position[CSS_LEFT], b->layout.position[CSS_LEFT]) || - !eq(a->children_count, b->children_count)) { - return false; - } - for (int i = 0; i < a->children_count; ++i) { - if (!are_layout_equal(a->get_child(a->context, i), b->get_child(b->context, i))) { - return false; - } - } - return true; -} - -css_dim_t measure(void *context, float width, css_measure_mode_t widthMode, float height, css_measure_mode_t heightMode) { - const char *text = (const char *)context; - css_dim_t dim; - if (strcmp(text, SMALL_TEXT) == 0) { - if (widthMode == CSS_MEASURE_MODE_UNDEFINED) { - width = 1000000; - } - dim.dimensions[CSS_WIDTH] = fminf(SMALL_WIDTH, width); - dim.dimensions[CSS_HEIGHT] = SMALL_WIDTH > width ? BIG_HEIGHT : SMALL_HEIGHT; - return dim; - } - if (strcmp(text, LONG_TEXT) == 0) { - if (widthMode == CSS_MEASURE_MODE_UNDEFINED) { - width = 1000000; - } - dim.dimensions[CSS_WIDTH] = fminf(BIG_WIDTH, width); - dim.dimensions[CSS_HEIGHT] = BIG_WIDTH > width ? BIG_HEIGHT : SMALL_HEIGHT; - return dim; - } - - if (strcmp(text, MEASURE_WITH_RATIO_2) == 0) { - if (widthMode == CSS_MEASURE_MODE_EXACTLY) { - dim.dimensions[CSS_WIDTH] = width; - dim.dimensions[CSS_HEIGHT] = width * 2; - } else if (heightMode == CSS_MEASURE_MODE_EXACTLY) { - dim.dimensions[CSS_WIDTH] = height * 2; - dim.dimensions[CSS_HEIGHT] = height; - } else if (widthMode == CSS_MEASURE_MODE_AT_MOST) { - dim.dimensions[CSS_WIDTH] = width; - dim.dimensions[CSS_HEIGHT] = width * 2; - } else if (heightMode == CSS_MEASURE_MODE_AT_MOST) { - dim.dimensions[CSS_WIDTH] = height * 2; - dim.dimensions[CSS_HEIGHT] = height; - } else { - dim.dimensions[CSS_WIDTH] = 99999; - dim.dimensions[CSS_HEIGHT] = 99999; - } - return dim; - } - - if (strcmp(text, MEASURE_WITH_MATCH_PARENT) == 0) { - if (widthMode == CSS_MEASURE_MODE_UNDEFINED) { - width = 99999; - } - if (heightMode == CSS_MEASURE_MODE_UNDEFINED) { - height = 99999; - } - dim.dimensions[CSS_WIDTH] = width; - dim.dimensions[CSS_HEIGHT] = height; - return dim; - } - - // Should not go here - dim.dimensions[CSS_WIDTH] = CSS_UNDEFINED; - dim.dimensions[CSS_HEIGHT] = CSS_UNDEFINED; - return dim; -} - -bool test(css_node_t *style, css_node_t *expected_layout) { - layoutNode(style, CSS_UNDEFINED, CSS_UNDEFINED, (css_direction_t)-1); - return are_layout_equal(style, expected_layout); -} - -static css_node_t* get_child(void *context, int i) { - css_node_t* children = (css_node_t*)context; - return &children[i]; -} - -static bool is_dirty(void *context) { - (void)context; // remove unused warning - return true; -} - -static void init_test_css_node(css_node_t *node) { - node->get_child = get_child; - node->is_dirty = is_dirty; -} - -css_node_t *new_test_css_node(void) { - css_node_t *node = new_css_node(); - init_test_css_node(node); - return node; -} - -void init_css_node_children(css_node_t *node, int children_count) { - node->context = calloc((size_t)children_count, sizeof(css_node_t)); - for (int i = 0; i < children_count; ++i) { - init_css_node(node->get_child(node->context, i)); - init_test_css_node(node->get_child(node->context, i)); - } - node->children_count = children_count; -} diff --git a/React/CSSLayout/CSSLayoutTestUtils.h b/React/CSSLayout/CSSLayoutTestUtils.h deleted file mode 100644 index 270b31123..000000000 --- a/React/CSSLayout/CSSLayoutTestUtils.h +++ /dev/null @@ -1,37 +0,0 @@ -/** - * 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. - */ - -#ifndef __CSS_LAYOUT_TEXT_UTILS_H -#define __CSS_LAYOUT_TEXT_UTILS_H - -#include -#include - -#include "CSSMacros.h" -#include "CSSLayout.h" - -#define SMALL_WIDTH 35 -#define SMALL_HEIGHT 18 -#define BIG_WIDTH 172 -#define BIG_HEIGHT 36 -#define SMALL_TEXT "small" -#define LONG_TEXT "loooooooooong with space" -#define MEASURE_WITH_RATIO_2 "measureWithRatio2" -#define MEASURE_WITH_MATCH_PARENT "measureWithMatchParent" - -CSS_EXTERN_C_BEGIN - -bool test(css_node_t *style, css_node_t *expected_layout); -css_dim_t measure(void *context, float width, css_measure_mode_t widthMode, float height, css_measure_mode_t heightMode); -void init_css_node_children(css_node_t *node, int children_count); -css_node_t *new_test_css_node(void); - -CSS_EXTERN_C_END - -#endif diff --git a/React/CSSLayout/README b/React/CSSLayout/README deleted file mode 100644 index 9d85b26ff..000000000 --- a/React/CSSLayout/README +++ /dev/null @@ -1,15 +0,0 @@ -The source of truth for css-layout is: https://github.com/facebook/css-layout - -The code here should be kept in sync with GitHub. -HEAD at the time this code was synced: https://github.com/facebook/css-layout/commit/a1f36b53f5464c8ee7abc311765dc3ecb1b879c6 - -There is generated code in: - - README (this file) - - fbandroid/java/com/facebook/csslayout - - fbandroid/javatests/com/facebook/csslayout - - fbobjc/Libraries/FBReactKit/js/react-native-github/React/Layout - -The code was generated by running 'make' in the css-layout folder and running: - - scripts/sync-css-layout.sh -