Add test support for intrinsic sized nodes

Summary: This diff adds support for intrinsic sizing in generated tests. This is done by importing a testing font called "Ahem" which, as used, has an exact width and height of 10px for each character. Support has been added for C++, Java, and Javascript generated tests.

Differential Revision: D58307002
This commit is contained in:
Maddie Lord
2024-06-24 22:34:58 -07:00
committed by Facebook GitHub Bot
parent cedac5edf4
commit c24adff88e
77 changed files with 2284 additions and 119 deletions

View File

@@ -7,9 +7,10 @@
#pragma once
#include <yoga/YGNode.h>
#include <yoga/event/event.h>
#include <functional>
#include <string_view>
namespace facebook::yoga::test {
@@ -24,4 +25,19 @@ struct ScopedEventSubscription {
~ScopedEventSubscription();
};
YGSize IntrinsicSizeMeasure(
YGNodeConstRef node,
float width,
YGMeasureMode widthMode,
float height,
YGMeasureMode heightMode);
float longestWordWidth(std::string_view text, float widthPerChar);
float calculateHeight(
std::string_view text,
float measuredWidth,
float widthPerChar,
float heightPerChar);
} // namespace facebook::yoga::test