OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2010 Google Inc. All rights reserved. | 2 * Copyright (C) 2010 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 4080 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4091 | 4091 |
4092 element->focus(); | 4092 element->focus(); |
4093 document->execCommand("InsertText", false, "_wellcome_."); | 4093 document->execCommand("InsertText", false, "_wellcome_."); |
4094 | 4094 |
4095 const int allTextBeginOffset = 0; | 4095 const int allTextBeginOffset = 0; |
4096 const int allTextLength = 11; | 4096 const int allTextLength = 11; |
4097 frame->selectRange(WebRange::fromDocumentRange(frame, allTextBeginOffset, al
lTextLength)); | 4097 frame->selectRange(WebRange::fromDocumentRange(frame, allTextBeginOffset, al
lTextLength)); |
4098 RefPtr<Range> selectionRange = frame->frame()->selection().toNormalizedRange
(); | 4098 RefPtr<Range> selectionRange = frame->frame()->selection().toNormalizedRange
(); |
4099 | 4099 |
4100 EXPECT_EQ(1, spellcheck.numberOfTimesChecked()); | 4100 EXPECT_EQ(1, spellcheck.numberOfTimesChecked()); |
4101 EXPECT_EQ(1U, document->markers()->markersInRange(selectionRange.get(), Docu
mentMarker::Spelling).size()); | 4101 EXPECT_EQ(1U, document->markers().markersInRange(selectionRange.get(), Docum
entMarker::Spelling).size()); |
4102 | 4102 |
4103 frame->replaceMisspelledRange("welcome"); | 4103 frame->replaceMisspelledRange("welcome"); |
4104 EXPECT_EQ("_welcome_.", frame->contentAsText(std::numeric_limits<size_t>::ma
x()).utf8()); | 4104 EXPECT_EQ("_welcome_.", frame->contentAsText(std::numeric_limits<size_t>::ma
x()).utf8()); |
4105 } | 4105 } |
4106 | 4106 |
4107 TEST_F(WebFrameTest, RemoveSpellingMarkers) | 4107 TEST_F(WebFrameTest, RemoveSpellingMarkers) |
4108 { | 4108 { |
4109 registerMockedHttpURLLoad("spell.html"); | 4109 registerMockedHttpURLLoad("spell.html"); |
4110 FrameTestHelpers::WebViewHelper webViewHelper; | 4110 FrameTestHelpers::WebViewHelper webViewHelper; |
4111 webViewHelper.initializeAndLoad(m_baseURL + "spell.html"); | 4111 webViewHelper.initializeAndLoad(m_baseURL + "spell.html"); |
(...skipping 11 matching lines...) Expand all Loading... |
4123 element->focus(); | 4123 element->focus(); |
4124 document->execCommand("InsertText", false, "_wellcome_."); | 4124 document->execCommand("InsertText", false, "_wellcome_."); |
4125 | 4125 |
4126 frame->removeSpellingMarkers(); | 4126 frame->removeSpellingMarkers(); |
4127 | 4127 |
4128 const int allTextBeginOffset = 0; | 4128 const int allTextBeginOffset = 0; |
4129 const int allTextLength = 11; | 4129 const int allTextLength = 11; |
4130 frame->selectRange(WebRange::fromDocumentRange(frame, allTextBeginOffset, al
lTextLength)); | 4130 frame->selectRange(WebRange::fromDocumentRange(frame, allTextBeginOffset, al
lTextLength)); |
4131 RefPtr<Range> selectionRange = frame->frame()->selection().toNormalizedRange
(); | 4131 RefPtr<Range> selectionRange = frame->frame()->selection().toNormalizedRange
(); |
4132 | 4132 |
4133 EXPECT_EQ(0U, document->markers()->markersInRange(selectionRange.get(), Docu
mentMarker::Spelling).size()); | 4133 EXPECT_EQ(0U, document->markers().markersInRange(selectionRange.get(), Docum
entMarker::Spelling).size()); |
4134 } | 4134 } |
4135 | 4135 |
4136 TEST_F(WebFrameTest, MarkerHashIdentifiers) { | 4136 TEST_F(WebFrameTest, MarkerHashIdentifiers) { |
4137 registerMockedHttpURLLoad("spell.html"); | 4137 registerMockedHttpURLLoad("spell.html"); |
4138 FrameTestHelpers::WebViewHelper webViewHelper; | 4138 FrameTestHelpers::WebViewHelper webViewHelper; |
4139 webViewHelper.initializeAndLoad(m_baseURL + "spell.html"); | 4139 webViewHelper.initializeAndLoad(m_baseURL + "spell.html"); |
4140 | 4140 |
4141 static const uint32_t kHash = 42; | 4141 static const uint32_t kHash = 42; |
4142 SpellCheckClient spellcheck(kHash); | 4142 SpellCheckClient spellcheck(kHash); |
4143 webViewHelper.webView()->setSpellCheckClient(&spellcheck); | 4143 webViewHelper.webView()->setSpellCheckClient(&spellcheck); |
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4273 WebInputElement webInputElement = frame->document().getElementById("data").t
o<WebInputElement>(); | 4273 WebInputElement webInputElement = frame->document().getElementById("data").t
o<WebInputElement>(); |
4274 Document* document = frame->frame()->document(); | 4274 Document* document = frame->frame()->document(); |
4275 Element* element = document->getElementById("data"); | 4275 Element* element = document->getElementById("data"); |
4276 | 4276 |
4277 webViewHelper.webView()->settings()->setAsynchronousSpellCheckingEnabled(tru
e); | 4277 webViewHelper.webView()->settings()->setAsynchronousSpellCheckingEnabled(tru
e); |
4278 webViewHelper.webView()->settings()->setUnifiedTextCheckerEnabled(true); | 4278 webViewHelper.webView()->settings()->setUnifiedTextCheckerEnabled(true); |
4279 webViewHelper.webView()->settings()->setEditingBehavior(WebSettings::Editing
BehaviorWin); | 4279 webViewHelper.webView()->settings()->setEditingBehavior(WebSettings::Editing
BehaviorWin); |
4280 | 4280 |
4281 element->focus(); | 4281 element->focus(); |
4282 document->execCommand("InsertText", false, "welcome "); | 4282 document->execCommand("InsertText", false, "welcome "); |
4283 document->markers()->addMarker(rangeOfContents(element->toNode()).get(), Doc
umentMarker::Spelling); | 4283 document->markers().addMarker(rangeOfContents(element->toNode()).get(), Docu
mentMarker::Spelling); |
4284 document->markers()->addMarker(rangeOfContents(element->toNode()).get(), Doc
umentMarker::Grammar); | 4284 document->markers().addMarker(rangeOfContents(element->toNode()).get(), Docu
mentMarker::Grammar); |
4285 document->markers()->addMarker(rangeOfContents(element->toNode()).get(), Doc
umentMarker::InvisibleSpellcheck); | 4285 document->markers().addMarker(rangeOfContents(element->toNode()).get(), Docu
mentMarker::InvisibleSpellcheck); |
4286 EXPECT_EQ(3U, document->markers()->markers().size()); | 4286 EXPECT_EQ(3U, document->markers().markers().size()); |
4287 | 4287 |
4288 spellcheck.kickNoResults(); | 4288 spellcheck.kickNoResults(); |
4289 EXPECT_EQ(0U, document->markers()->markers().size()); | 4289 EXPECT_EQ(0U, document->markers().markers().size()); |
4290 } | 4290 } |
4291 | 4291 |
4292 TEST_F(WebFrameTest, SpellcheckResultsSavedInDocument) | 4292 TEST_F(WebFrameTest, SpellcheckResultsSavedInDocument) |
4293 { | 4293 { |
4294 registerMockedHttpURLLoad("spell.html"); | 4294 registerMockedHttpURLLoad("spell.html"); |
4295 FrameTestHelpers::WebViewHelper webViewHelper; | 4295 FrameTestHelpers::WebViewHelper webViewHelper; |
4296 webViewHelper.initializeAndLoad(m_baseURL + "spell.html"); | 4296 webViewHelper.initializeAndLoad(m_baseURL + "spell.html"); |
4297 | 4297 |
4298 StubbornSpellCheckClient spellcheck; | 4298 StubbornSpellCheckClient spellcheck; |
4299 webViewHelper.webView()->setSpellCheckClient(&spellcheck); | 4299 webViewHelper.webView()->setSpellCheckClient(&spellcheck); |
4300 | 4300 |
4301 WebFrameImpl* frame = toWebFrameImpl(webViewHelper.webView()->mainFrame()); | 4301 WebFrameImpl* frame = toWebFrameImpl(webViewHelper.webView()->mainFrame()); |
4302 WebInputElement webInputElement = frame->document().getElementById("data").t
o<WebInputElement>(); | 4302 WebInputElement webInputElement = frame->document().getElementById("data").t
o<WebInputElement>(); |
4303 Document* document = frame->frame()->document(); | 4303 Document* document = frame->frame()->document(); |
4304 Element* element = document->getElementById("data"); | 4304 Element* element = document->getElementById("data"); |
4305 | 4305 |
4306 webViewHelper.webView()->settings()->setAsynchronousSpellCheckingEnabled(tru
e); | 4306 webViewHelper.webView()->settings()->setAsynchronousSpellCheckingEnabled(tru
e); |
4307 webViewHelper.webView()->settings()->setUnifiedTextCheckerEnabled(true); | 4307 webViewHelper.webView()->settings()->setUnifiedTextCheckerEnabled(true); |
4308 webViewHelper.webView()->settings()->setEditingBehavior(WebSettings::Editing
BehaviorWin); | 4308 webViewHelper.webView()->settings()->setEditingBehavior(WebSettings::Editing
BehaviorWin); |
4309 | 4309 |
4310 element->focus(); | 4310 element->focus(); |
4311 document->execCommand("InsertText", false, "wellcome "); | 4311 document->execCommand("InsertText", false, "wellcome "); |
4312 | 4312 |
4313 spellcheck.kick(); | 4313 spellcheck.kick(); |
4314 ASSERT_EQ(1U, document->markers()->markers().size()); | 4314 ASSERT_EQ(1U, document->markers().markers().size()); |
4315 ASSERT_NE(static_cast<DocumentMarker*>(0), document->markers()->markers()[0]
); | 4315 ASSERT_NE(static_cast<DocumentMarker*>(0), document->markers().markers()[0])
; |
4316 EXPECT_EQ(DocumentMarker::Spelling, document->markers()->markers()[0]->type(
)); | 4316 EXPECT_EQ(DocumentMarker::Spelling, document->markers().markers()[0]->type()
); |
4317 | 4317 |
4318 document->execCommand("InsertText", false, "wellcome "); | 4318 document->execCommand("InsertText", false, "wellcome "); |
4319 | 4319 |
4320 spellcheck.kickGrammar(); | 4320 spellcheck.kickGrammar(); |
4321 ASSERT_EQ(1U, document->markers()->markers().size()); | 4321 ASSERT_EQ(1U, document->markers().markers().size()); |
4322 ASSERT_NE(static_cast<DocumentMarker*>(0), document->markers()->markers()[0]
); | 4322 ASSERT_NE(static_cast<DocumentMarker*>(0), document->markers().markers()[0])
; |
4323 EXPECT_EQ(DocumentMarker::Grammar, document->markers()->markers()[0]->type()
); | 4323 EXPECT_EQ(DocumentMarker::Grammar, document->markers().markers()[0]->type())
; |
4324 | 4324 |
4325 document->execCommand("InsertText", false, "wellcome "); | 4325 document->execCommand("InsertText", false, "wellcome "); |
4326 | 4326 |
4327 spellcheck.kickInvisibleSpellcheck(); | 4327 spellcheck.kickInvisibleSpellcheck(); |
4328 ASSERT_EQ(1U, document->markers()->markers().size()); | 4328 ASSERT_EQ(1U, document->markers().markers().size()); |
4329 ASSERT_NE(static_cast<DocumentMarker*>(0), document->markers()->markers()[0]
); | 4329 ASSERT_NE(static_cast<DocumentMarker*>(0), document->markers().markers()[0])
; |
4330 EXPECT_EQ(DocumentMarker::InvisibleSpellcheck, document->markers()->markers(
)[0]->type()); | 4330 EXPECT_EQ(DocumentMarker::InvisibleSpellcheck, document->markers().markers()
[0]->type()); |
4331 } | 4331 } |
4332 | 4332 |
4333 class TestAccessInitialDocumentWebFrameClient : public WebFrameClient { | 4333 class TestAccessInitialDocumentWebFrameClient : public WebFrameClient { |
4334 public: | 4334 public: |
4335 TestAccessInitialDocumentWebFrameClient() : m_didAccessInitialDocument(false
) | 4335 TestAccessInitialDocumentWebFrameClient() : m_didAccessInitialDocument(false
) |
4336 { | 4336 { |
4337 } | 4337 } |
4338 | 4338 |
4339 virtual void didAccessInitialDocument(WebFrame* frame) | 4339 virtual void didAccessInitialDocument(WebFrame* frame) |
4340 { | 4340 { |
(...skipping 876 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5217 webViewHelper.initializeAndLoad("about:blank"); | 5217 webViewHelper.initializeAndLoad("about:blank"); |
5218 | 5218 |
5219 WebCore::FrameView* frameView = webViewHelper.webViewImpl()->mainFrameImpl()
->frameView(); | 5219 WebCore::FrameView* frameView = webViewHelper.webViewImpl()->mainFrameImpl()
->frameView(); |
5220 frameView->setFrameRect(WebCore::IntRect(0, 0, 200, 200)); | 5220 frameView->setFrameRect(WebCore::IntRect(0, 0, 200, 200)); |
5221 EXPECT_EQ_RECT(WebCore::IntRect(0, 0, 200, 200), frameView->frameRect()); | 5221 EXPECT_EQ_RECT(WebCore::IntRect(0, 0, 200, 200), frameView->frameRect()); |
5222 frameView->setFrameRect(WebCore::IntRect(100, 100, 200, 200)); | 5222 frameView->setFrameRect(WebCore::IntRect(100, 100, 200, 200)); |
5223 EXPECT_EQ_RECT(WebCore::IntRect(100, 100, 200, 200), frameView->frameRect())
; | 5223 EXPECT_EQ_RECT(WebCore::IntRect(100, 100, 200, 200), frameView->frameRect())
; |
5224 } | 5224 } |
5225 | 5225 |
5226 } // namespace | 5226 } // namespace |
OLD | NEW |