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

Unified Diff: third_party/WebKit/Source/core/editing/markers/DocumentMarkerControllerTest.cpp

Issue 2883503004: [DMC #7] Only create RenderedDocumentMarkers for TextMatchMarkerListImpl (Closed)
Patch Set: Rebase on InvalidateRectsForAllMarkers() refactor Created 3 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/editing/markers/DocumentMarkerControllerTest.cpp
diff --git a/third_party/WebKit/Source/core/editing/markers/DocumentMarkerControllerTest.cpp b/third_party/WebKit/Source/core/editing/markers/DocumentMarkerControllerTest.cpp
index 0e23593766962c11d7b8bb844db704ffee0dff20..d741378ced50b52c93943adc0c196f07832e5642 100644
--- a/third_party/WebKit/Source/core/editing/markers/DocumentMarkerControllerTest.cpp
+++ b/third_party/WebKit/Source/core/editing/markers/DocumentMarkerControllerTest.cpp
@@ -57,6 +57,7 @@ class DocumentMarkerControllerTest : public ::testing::Test {
Text* CreateTextNode(const char*);
void MarkNodeContents(Node*);
+ void MarkNodeContentsTextMatch(Node*);
void SetBodyInnerHTML(const char*);
private:
@@ -76,6 +77,15 @@ void DocumentMarkerControllerTest::MarkNodeContents(Node* node) {
DocumentMarker::kSpelling);
}
+void DocumentMarkerControllerTest::MarkNodeContentsTextMatch(Node* node) {
+ // Force layoutObjects to be created; TextIterator, which is used in
+ // DocumentMarkerControllerTest::addMarker(), needs them.
+ GetDocument().UpdateStyleAndLayout();
+ auto range = EphemeralRange::RangeOfContents(*node);
+ MarkerController().AddTextMatchMarker(range,
+ DocumentMarker::MatchStatus::kActive);
+}
+
void DocumentMarkerControllerTest::SetBodyInnerHTML(const char* body_content) {
GetDocument().body()->setInnerHTML(String::FromUTF8(body_content));
}
@@ -193,15 +203,15 @@ TEST_F(DocumentMarkerControllerTest, NodeWillBeRemovedBySetInnerHTML) {
TEST_F(DocumentMarkerControllerTest, UpdateRenderedRects) {
SetBodyInnerHTML("<div style='margin: 100px'>foo</div>");
Element* div = ToElement(GetDocument().body()->firstChild());
- MarkNodeContents(div);
+ MarkNodeContentsTextMatch(div);
Vector<IntRect> rendered_rects =
- MarkerController().RenderedRectsForMarkers(DocumentMarker::kSpelling);
+ MarkerController().RenderedRectsForMarkers(DocumentMarker::kTextMatch);
EXPECT_EQ(1u, rendered_rects.size());
div->setAttribute(HTMLNames::styleAttr, "margin: 200px");
GetDocument().UpdateStyleAndLayout();
Vector<IntRect> new_rendered_rects =
- MarkerController().RenderedRectsForMarkers(DocumentMarker::kSpelling);
+ MarkerController().RenderedRectsForMarkers(DocumentMarker::kTextMatch);
EXPECT_EQ(1u, new_rendered_rects.size());
EXPECT_NE(rendered_rects[0], new_rendered_rects[0]);
}

Powered by Google App Engine
This is Rietveld 408576698