Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(234)

Side by Side Diff: third_party/WebKit/Source/core/layout/ng/ng_inline_node_test.cc

Issue 2614883007: Change computed style enums to be prefixed with 'k'. (Closed)
Patch Set: Rebase on ToT. Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "core/layout/ng/ng_inline_node.h" 5 #include "core/layout/ng/ng_inline_node.h"
6 6
7 #include "core/layout/ng/ng_constraint_space.h" 7 #include "core/layout/ng/ng_constraint_space.h"
8 #include "core/layout/ng/ng_constraint_space_builder.h" 8 #include "core/layout/ng/ng_constraint_space_builder.h"
9 #include "core/layout/ng/ng_fragment_builder.h" 9 #include "core/layout/ng/ng_fragment_builder.h"
10 #include "core/layout/ng/ng_physical_box_fragment.h" 10 #include "core/layout/ng/ng_physical_box_fragment.h"
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
83 EXPECT_EQ(start, item.StartOffset()); \ 83 EXPECT_EQ(start, item.StartOffset()); \
84 EXPECT_EQ(end, item.EndOffset()); \ 84 EXPECT_EQ(end, item.EndOffset()); \
85 EXPECT_EQ(direction, item.Direction()) 85 EXPECT_EQ(direction, item.Direction())
86 86
87 TEST_F(NGInlineNodeTest, SegmentASCII) { 87 TEST_F(NGInlineNodeTest, SegmentASCII) {
88 NGInlineNodeForTest* node = new NGInlineNodeForTest(style_.get()); 88 NGInlineNodeForTest* node = new NGInlineNodeForTest(style_.get());
89 node->Append("Hello"); 89 node->Append("Hello");
90 node->SegmentText(); 90 node->SegmentText();
91 Vector<NGLayoutInlineItem>& items = node->Items(); 91 Vector<NGLayoutInlineItem>& items = node->Items();
92 ASSERT_EQ(1u, items.size()); 92 ASSERT_EQ(1u, items.size());
93 TEST_ITEM_OFFSET_DIR(items[0], 0u, 5u, TextDirection::Ltr); 93 TEST_ITEM_OFFSET_DIR(items[0], 0u, 5u, TextDirection::kLtr);
94 } 94 }
95 95
96 TEST_F(NGInlineNodeTest, SegmentHebrew) { 96 TEST_F(NGInlineNodeTest, SegmentHebrew) {
97 NGInlineNodeForTest* node = new NGInlineNodeForTest(style_.get()); 97 NGInlineNodeForTest* node = new NGInlineNodeForTest(style_.get());
98 node->Append(u"\u05E2\u05D1\u05E8\u05D9\u05EA"); 98 node->Append(u"\u05E2\u05D1\u05E8\u05D9\u05EA");
99 node->SegmentText(); 99 node->SegmentText();
100 ASSERT_EQ(1u, node->Items().size()); 100 ASSERT_EQ(1u, node->Items().size());
101 Vector<NGLayoutInlineItem>& items = node->Items(); 101 Vector<NGLayoutInlineItem>& items = node->Items();
102 ASSERT_EQ(1u, items.size()); 102 ASSERT_EQ(1u, items.size());
103 TEST_ITEM_OFFSET_DIR(items[0], 0u, 5u, TextDirection::Rtl); 103 TEST_ITEM_OFFSET_DIR(items[0], 0u, 5u, TextDirection::kRtl);
104 } 104 }
105 105
106 TEST_F(NGInlineNodeTest, SegmentSplit1To2) { 106 TEST_F(NGInlineNodeTest, SegmentSplit1To2) {
107 NGInlineNodeForTest* node = new NGInlineNodeForTest(style_.get()); 107 NGInlineNodeForTest* node = new NGInlineNodeForTest(style_.get());
108 node->Append(u"Hello \u05E2\u05D1\u05E8\u05D9\u05EA"); 108 node->Append(u"Hello \u05E2\u05D1\u05E8\u05D9\u05EA");
109 node->SegmentText(); 109 node->SegmentText();
110 ASSERT_EQ(2u, node->Items().size()); 110 ASSERT_EQ(2u, node->Items().size());
111 Vector<NGLayoutInlineItem>& items = node->Items(); 111 Vector<NGLayoutInlineItem>& items = node->Items();
112 ASSERT_EQ(2u, items.size()); 112 ASSERT_EQ(2u, items.size());
113 TEST_ITEM_OFFSET_DIR(items[0], 0u, 6u, TextDirection::Ltr); 113 TEST_ITEM_OFFSET_DIR(items[0], 0u, 6u, TextDirection::kLtr);
114 TEST_ITEM_OFFSET_DIR(items[1], 6u, 11u, TextDirection::Rtl); 114 TEST_ITEM_OFFSET_DIR(items[1], 6u, 11u, TextDirection::kRtl);
115 } 115 }
116 116
117 TEST_F(NGInlineNodeTest, SegmentSplit3To4) { 117 TEST_F(NGInlineNodeTest, SegmentSplit3To4) {
118 NGInlineNodeForTest* node = new NGInlineNodeForTest(style_.get()); 118 NGInlineNodeForTest* node = new NGInlineNodeForTest(style_.get());
119 node->Append("Hel"); 119 node->Append("Hel");
120 node->Append(u"lo \u05E2"); 120 node->Append(u"lo \u05E2");
121 node->Append(u"\u05D1\u05E8\u05D9\u05EA"); 121 node->Append(u"\u05D1\u05E8\u05D9\u05EA");
122 node->SegmentText(); 122 node->SegmentText();
123 Vector<NGLayoutInlineItem>& items = node->Items(); 123 Vector<NGLayoutInlineItem>& items = node->Items();
124 ASSERT_EQ(4u, items.size()); 124 ASSERT_EQ(4u, items.size());
125 TEST_ITEM_OFFSET_DIR(items[0], 0u, 3u, TextDirection::Ltr); 125 TEST_ITEM_OFFSET_DIR(items[0], 0u, 3u, TextDirection::kLtr);
126 TEST_ITEM_OFFSET_DIR(items[1], 3u, 6u, TextDirection::Ltr); 126 TEST_ITEM_OFFSET_DIR(items[1], 3u, 6u, TextDirection::kLtr);
127 TEST_ITEM_OFFSET_DIR(items[2], 6u, 7u, TextDirection::Rtl); 127 TEST_ITEM_OFFSET_DIR(items[2], 6u, 7u, TextDirection::kRtl);
128 TEST_ITEM_OFFSET_DIR(items[3], 7u, 11u, TextDirection::Rtl); 128 TEST_ITEM_OFFSET_DIR(items[3], 7u, 11u, TextDirection::kRtl);
129 } 129 }
130 130
131 TEST_F(NGInlineNodeTest, SegmentBidiOverride) { 131 TEST_F(NGInlineNodeTest, SegmentBidiOverride) {
132 NGInlineNodeForTest* node = new NGInlineNodeForTest(style_.get()); 132 NGInlineNodeForTest* node = new NGInlineNodeForTest(style_.get());
133 node->Append("Hello "); 133 node->Append("Hello ");
134 node->Append(rightToLeftOverrideCharacter); 134 node->Append(rightToLeftOverrideCharacter);
135 node->Append("ABC"); 135 node->Append("ABC");
136 node->Append(popDirectionalFormattingCharacter); 136 node->Append(popDirectionalFormattingCharacter);
137 node->SegmentText(); 137 node->SegmentText();
138 Vector<NGLayoutInlineItem>& items = node->Items(); 138 Vector<NGLayoutInlineItem>& items = node->Items();
139 ASSERT_EQ(4u, items.size()); 139 ASSERT_EQ(4u, items.size());
140 TEST_ITEM_OFFSET_DIR(items[0], 0u, 6u, TextDirection::Ltr); 140 TEST_ITEM_OFFSET_DIR(items[0], 0u, 6u, TextDirection::kLtr);
141 TEST_ITEM_OFFSET_DIR(items[1], 6u, 7u, TextDirection::Rtl); 141 TEST_ITEM_OFFSET_DIR(items[1], 6u, 7u, TextDirection::kRtl);
142 TEST_ITEM_OFFSET_DIR(items[2], 7u, 10u, TextDirection::Rtl); 142 TEST_ITEM_OFFSET_DIR(items[2], 7u, 10u, TextDirection::kRtl);
143 TEST_ITEM_OFFSET_DIR(items[3], 10u, 11u, TextDirection::Ltr); 143 TEST_ITEM_OFFSET_DIR(items[3], 10u, 11u, TextDirection::kLtr);
144 } 144 }
145 145
146 static NGInlineNodeForTest* CreateBidiIsolateNode(const ComputedStyle* style) { 146 static NGInlineNodeForTest* CreateBidiIsolateNode(const ComputedStyle* style) {
147 NGInlineNodeForTest* node = new NGInlineNodeForTest(style); 147 NGInlineNodeForTest* node = new NGInlineNodeForTest(style);
148 node->Append("Hello ", style); 148 node->Append("Hello ", style);
149 node->Append(rightToLeftIsolateCharacter); 149 node->Append(rightToLeftIsolateCharacter);
150 node->Append(u"\u05E2\u05D1\u05E8\u05D9\u05EA ", style); 150 node->Append(u"\u05E2\u05D1\u05E8\u05D9\u05EA ", style);
151 node->Append(leftToRightIsolateCharacter); 151 node->Append(leftToRightIsolateCharacter);
152 node->Append("A", style); 152 node->Append("A", style);
153 node->Append(popDirectionalIsolateCharacter); 153 node->Append(popDirectionalIsolateCharacter);
154 node->Append(u"\u05E2\u05D1\u05E8\u05D9\u05EA", style); 154 node->Append(u"\u05E2\u05D1\u05E8\u05D9\u05EA", style);
155 node->Append(popDirectionalIsolateCharacter); 155 node->Append(popDirectionalIsolateCharacter);
156 node->Append(" World", style); 156 node->Append(" World", style);
157 node->SegmentText(); 157 node->SegmentText();
158 return node; 158 return node;
159 } 159 }
160 160
161 TEST_F(NGInlineNodeTest, SegmentBidiIsolate) { 161 TEST_F(NGInlineNodeTest, SegmentBidiIsolate) {
162 NGInlineNodeForTest* node = CreateBidiIsolateNode(style_.get()); 162 NGInlineNodeForTest* node = CreateBidiIsolateNode(style_.get());
163 Vector<NGLayoutInlineItem>& items = node->Items(); 163 Vector<NGLayoutInlineItem>& items = node->Items();
164 ASSERT_EQ(9u, items.size()); 164 ASSERT_EQ(9u, items.size());
165 TEST_ITEM_OFFSET_DIR(items[0], 0u, 6u, TextDirection::Ltr); 165 TEST_ITEM_OFFSET_DIR(items[0], 0u, 6u, TextDirection::kLtr);
166 TEST_ITEM_OFFSET_DIR(items[1], 6u, 7u, TextDirection::Ltr); 166 TEST_ITEM_OFFSET_DIR(items[1], 6u, 7u, TextDirection::kLtr);
167 TEST_ITEM_OFFSET_DIR(items[2], 7u, 13u, TextDirection::Rtl); 167 TEST_ITEM_OFFSET_DIR(items[2], 7u, 13u, TextDirection::kRtl);
168 TEST_ITEM_OFFSET_DIR(items[3], 13u, 14u, TextDirection::Rtl); 168 TEST_ITEM_OFFSET_DIR(items[3], 13u, 14u, TextDirection::kRtl);
169 TEST_ITEM_OFFSET_DIR(items[4], 14u, 15u, TextDirection::Ltr); 169 TEST_ITEM_OFFSET_DIR(items[4], 14u, 15u, TextDirection::kLtr);
170 TEST_ITEM_OFFSET_DIR(items[5], 15u, 16u, TextDirection::Rtl); 170 TEST_ITEM_OFFSET_DIR(items[5], 15u, 16u, TextDirection::kRtl);
171 TEST_ITEM_OFFSET_DIR(items[6], 16u, 21u, TextDirection::Rtl); 171 TEST_ITEM_OFFSET_DIR(items[6], 16u, 21u, TextDirection::kRtl);
172 TEST_ITEM_OFFSET_DIR(items[7], 21u, 22u, TextDirection::Ltr); 172 TEST_ITEM_OFFSET_DIR(items[7], 21u, 22u, TextDirection::kLtr);
173 TEST_ITEM_OFFSET_DIR(items[8], 22u, 28u, TextDirection::Ltr); 173 TEST_ITEM_OFFSET_DIR(items[8], 22u, 28u, TextDirection::kLtr);
174 } 174 }
175 175
176 #define TEST_TEXT_FRAGMENT(fragment, node, start_index, end_index, dir) \ 176 #define TEST_TEXT_FRAGMENT(fragment, node, start_index, end_index, dir) \
177 EXPECT_EQ(node, fragment->Node()); \ 177 EXPECT_EQ(node, fragment->Node()); \
178 EXPECT_EQ(start_index, fragment->StartIndex()); \ 178 EXPECT_EQ(start_index, fragment->StartIndex()); \
179 EXPECT_EQ(end_index, fragment->EndIndex()); \ 179 EXPECT_EQ(end_index, fragment->EndIndex()); \
180 EXPECT_EQ(dir, node->Items()[fragment->StartIndex()].Direction()) 180 EXPECT_EQ(dir, node->Items()[fragment->StartIndex()].Direction())
181 181
182 TEST_F(NGInlineNodeTest, CreateLineBidiIsolate) { 182 TEST_F(NGInlineNodeTest, CreateLineBidiIsolate) {
183 NGInlineNodeForTest* node = CreateBidiIsolateNode(style_.get()); 183 NGInlineNodeForTest* node = CreateBidiIsolateNode(style_.get());
184 HeapVector<Member<const NGPhysicalTextFragment>> fragments; 184 HeapVector<Member<const NGPhysicalTextFragment>> fragments;
185 CreateLine(node, &fragments); 185 CreateLine(node, &fragments);
186 ASSERT_EQ(5u, fragments.size()); 186 ASSERT_EQ(5u, fragments.size());
187 TEST_TEXT_FRAGMENT(fragments[0], node, 0u, 1u, TextDirection::Ltr); 187 TEST_TEXT_FRAGMENT(fragments[0], node, 0u, 1u, TextDirection::kLtr);
188 TEST_TEXT_FRAGMENT(fragments[1], node, 6u, 7u, TextDirection::Rtl); 188 TEST_TEXT_FRAGMENT(fragments[1], node, 6u, 7u, TextDirection::kRtl);
189 TEST_TEXT_FRAGMENT(fragments[2], node, 4u, 5u, TextDirection::Ltr); 189 TEST_TEXT_FRAGMENT(fragments[2], node, 4u, 5u, TextDirection::kLtr);
190 TEST_TEXT_FRAGMENT(fragments[3], node, 2u, 3u, TextDirection::Rtl); 190 TEST_TEXT_FRAGMENT(fragments[3], node, 2u, 3u, TextDirection::kRtl);
191 TEST_TEXT_FRAGMENT(fragments[4], node, 8u, 9u, TextDirection::Ltr); 191 TEST_TEXT_FRAGMENT(fragments[4], node, 8u, 9u, TextDirection::kLtr);
192 } 192 }
193 193
194 } // namespace blink 194 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698