#include <sstream>
#include "testing/gmock/include/gmock/gmock.h"
#include "third_party/blink/renderer/core/dom/tag_collection.h"
#include "third_party/blink/renderer/core/html/forms/html_text_area_element.h"
#include "third_party/blink/renderer/core/layout/base_layout_algorithm_test.h"
#include "third_party/blink/renderer/core/layout/box_fragment_builder.h"
#include "third_party/blink/renderer/core/layout/constraint_space_builder.h"
#include "third_party/blink/renderer/core/layout/inline/inline_box_state.h"
#include "third_party/blink/renderer/core/layout/inline/inline_break_token.h"
#include "third_party/blink/renderer/core/layout/inline/inline_child_layout_context.h"
#include "third_party/blink/renderer/core/layout/inline/inline_cursor.h"
#include "third_party/blink/renderer/core/layout/inline/inline_node.h"
#include "third_party/blink/renderer/core/layout/inline/physical_line_box_fragment.h"
#include "third_party/blink/renderer/core/layout/layout_block_flow.h"
#include "third_party/blink/renderer/core/layout/layout_result.h"
#include "third_party/blink/renderer/core/layout/physical_box_fragment.h"
#include "third_party/blink/renderer/platform/testing/runtime_enabled_features_test_helpers.h"
namespace blink {
namespace {
struct TextBoxTrimResult { … };
const PhysicalLineBoxFragment* FindBlockInInlineLineBoxFragment(
Element* container) { … }
class InlineLayoutAlgorithmTest : public BaseLayoutAlgorithmTest { … };
TEST_F(InlineLayoutAlgorithmTest, Types) { … }
TEST_F(InlineLayoutAlgorithmTest, TypesForFirstLine) { … }
TEST_F(InlineLayoutAlgorithmTest, TypesForBlockInInline) { … }
TEST_F(InlineLayoutAlgorithmTest, BreakToken) { … }
TEST_F(InlineLayoutAlgorithmTest,
EmptyLineWithOutOfFlowInInlineContainingBlock) { … }
TEST_F(InlineLayoutAlgorithmTest, BoxForEndMargin) { … }
TEST_F(InlineLayoutAlgorithmTest, InlineBoxBorderPadding) { … }
TEST_F(InlineLayoutAlgorithmTest, ContainerBorderPadding) { … }
#if defined(ADDRESS_SANITIZER)
#define MAYBE_VerticalAlignBottomReplaced …
#else
#define MAYBE_VerticalAlignBottomReplaced …
#endif
TEST_F(InlineLayoutAlgorithmTest, MAYBE_VerticalAlignBottomReplaced) { … }
TEST_F(InlineLayoutAlgorithmTest, TextFloatsAroundFloatsBefore) { … }
TEST_F(InlineLayoutAlgorithmTest, TextFloatsAroundInlineFloatThatFitsOnLine) { … }
TEST_F(InlineLayoutAlgorithmTest,
TextFloatsAroundInlineFloatThatDoesNotFitOnLine) { … }
TEST_F(InlineLayoutAlgorithmTest,
FloatsArePositionedWithRespectToTopEdgeAlignmentRule) { … }
TEST_F(InlineLayoutAlgorithmTest, BlockInInlineAppend) { … }
TEST_F(InlineLayoutAlgorithmTest, PositionFloatsWithMargins) { … }
TEST_F(InlineLayoutAlgorithmTest, InkOverflow) { … }
TEST_F(InlineLayoutAlgorithmTest, TextCombineBasic) { … }
TEST_F(InlineLayoutAlgorithmTest, TextCombineFake) { … }
TEST_F(InlineLayoutAlgorithmTest, InitialLetterEmpty) { … }
TEST_F(InlineLayoutAlgorithmTest, InitialLetterWithEmptyInline) { … }
TEST_F(InlineLayoutAlgorithmTest, LineBoxWithHangingWidthRTLRightAligned) { … }
TEST_F(InlineLayoutAlgorithmTest, LineBoxWithHangingWidthRTLCenterAligned) { … }
TEST_F(InlineLayoutAlgorithmTest, TextBoxTrimConstraintSpace) { … }
TEST_F(InlineLayoutAlgorithmTest, TextBoxTrimConstraintSpaceSingle) { … }
TEST_F(InlineLayoutAlgorithmTest, TextBoxTrimConstraintSpaceEmptyOnly) { … }
TEST_F(InlineLayoutAlgorithmTest, TextBoxTrimConstraintSpaceNone) { … }
#undef MAYBE_VerticalAlignBottomReplaced
TEST_F(InlineLayoutAlgorithmTest, BoxFragmentInRubyCrash) { … }
}
}