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

Side by Side Diff: Source/web/tests/WebFrameTest.cpp

Issue 1112813002: Make use of v8::Local alias in Source/web* (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 5 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 unified diff | Download patch
« no previous file with comments | « Source/web/WebPluginContainerImpl.cpp ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 3093 matching lines...) Expand 10 before | Expand all | Expand 10 after
3104 // Now retrieve the FocusedNode and test it should be null. 3104 // Now retrieve the FocusedNode and test it should be null.
3105 EXPECT_EQ(0, webViewHelper.webViewImpl()->focusedElement()); 3105 EXPECT_EQ(0, webViewHelper.webViewImpl()->focusedElement());
3106 } 3106 }
3107 3107
3108 // Implementation of WebFrameClient that tracks the v8 contexts that are created 3108 // Implementation of WebFrameClient that tracks the v8 contexts that are created
3109 // and destroyed for verification. 3109 // and destroyed for verification.
3110 class ContextLifetimeTestWebFrameClient : public FrameTestHelpers::TestWebFrameC lient { 3110 class ContextLifetimeTestWebFrameClient : public FrameTestHelpers::TestWebFrameC lient {
3111 public: 3111 public:
3112 struct Notification { 3112 struct Notification {
3113 public: 3113 public:
3114 Notification(WebLocalFrame* frame, v8::Handle<v8::Context> context, int worldId) 3114 Notification(WebLocalFrame* frame, v8::Local<v8::Context> context, int w orldId)
3115 : frame(frame) 3115 : frame(frame)
3116 , context(context->GetIsolate(), context) 3116 , context(context->GetIsolate(), context)
3117 , worldId(worldId) 3117 , worldId(worldId)
3118 { 3118 {
3119 } 3119 }
3120 3120
3121 ~Notification() 3121 ~Notification()
3122 { 3122 {
3123 context.Reset(); 3123 context.Reset();
3124 } 3124 }
(...skipping 22 matching lines...) Expand all
3147 delete releaseNotifications[i]; 3147 delete releaseNotifications[i];
3148 3148
3149 createNotifications.clear(); 3149 createNotifications.clear();
3150 releaseNotifications.clear(); 3150 releaseNotifications.clear();
3151 } 3151 }
3152 3152
3153 std::vector<Notification*> createNotifications; 3153 std::vector<Notification*> createNotifications;
3154 std::vector<Notification*> releaseNotifications; 3154 std::vector<Notification*> releaseNotifications;
3155 3155
3156 private: 3156 private:
3157 virtual void didCreateScriptContext(WebLocalFrame* frame, v8::Handle<v8::Con text> context, int extensionGroup, int worldId) override 3157 virtual void didCreateScriptContext(WebLocalFrame* frame, v8::Local<v8::Cont ext> context, int extensionGroup, int worldId) override
3158 { 3158 {
3159 createNotifications.push_back(new Notification(frame, context, worldId)) ; 3159 createNotifications.push_back(new Notification(frame, context, worldId)) ;
3160 } 3160 }
3161 3161
3162 virtual void willReleaseScriptContext(WebLocalFrame* frame, v8::Handle<v8::C ontext> context, int worldId) override 3162 virtual void willReleaseScriptContext(WebLocalFrame* frame, v8::Local<v8::Co ntext> context, int worldId) override
3163 { 3163 {
3164 releaseNotifications.push_back(new Notification(frame, context, worldId) ); 3164 releaseNotifications.push_back(new Notification(frame, context, worldId) );
3165 } 3165 }
3166 }; 3166 };
3167 3167
3168 // TODO(aa): Deflake this test. 3168 // TODO(aa): Deflake this test.
3169 TEST_F(WebFrameTest, FLAKY_ContextNotificationsLoadUnload) 3169 TEST_F(WebFrameTest, FLAKY_ContextNotificationsLoadUnload)
3170 { 3170 {
3171 v8::HandleScope handleScope(v8::Isolate::GetCurrent()); 3171 v8::HandleScope handleScope(v8::Isolate::GetCurrent());
3172 3172
(...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after
3415 frame->executeCommand(WebString::fromUTF8("SelectAll")); 3415 frame->executeCommand(WebString::fromUTF8("SelectAll"));
3416 EXPECT_TRUE(frame->hasSelection()); 3416 EXPECT_TRUE(frame->hasSelection());
3417 frame->executeCommand(WebString::fromUTF8("Unselect")); 3417 frame->executeCommand(WebString::fromUTF8("Unselect"));
3418 EXPECT_FALSE(frame->hasSelection()); 3418 EXPECT_FALSE(frame->hasSelection());
3419 WebString selectionHtml = frame->selectionAsMarkup(); 3419 WebString selectionHtml = frame->selectionAsMarkup();
3420 EXPECT_TRUE(selectionHtml.isEmpty()); 3420 EXPECT_TRUE(selectionHtml.isEmpty());
3421 } 3421 }
3422 3422
3423 class TestExecuteScriptDuringDidCreateScriptContext : public FrameTestHelpers::T estWebFrameClient { 3423 class TestExecuteScriptDuringDidCreateScriptContext : public FrameTestHelpers::T estWebFrameClient {
3424 public: 3424 public:
3425 virtual void didCreateScriptContext(WebLocalFrame* frame, v8::Handle<v8::Con text> context, int extensionGroup, int worldId) override 3425 virtual void didCreateScriptContext(WebLocalFrame* frame, v8::Local<v8::Cont ext> context, int extensionGroup, int worldId) override
3426 { 3426 {
3427 frame->executeScript(WebScriptSource("window.history = 'replaced';")); 3427 frame->executeScript(WebScriptSource("window.history = 'replaced';"));
3428 } 3428 }
3429 }; 3429 };
3430 3430
3431 TEST_F(WebFrameTest, ExecuteScriptDuringDidCreateScriptContext) 3431 TEST_F(WebFrameTest, ExecuteScriptDuringDidCreateScriptContext)
3432 { 3432 {
3433 registerMockedHttpURLLoad("hello_world.html"); 3433 registerMockedHttpURLLoad("hello_world.html");
3434 3434
3435 TestExecuteScriptDuringDidCreateScriptContext webFrameClient; 3435 TestExecuteScriptDuringDidCreateScriptContext webFrameClient;
(...skipping 873 matching lines...) Expand 10 before | Expand all | Expand 10 after
4309 { 4309 {
4310 registerMockedHttpURLLoad(testFile); 4310 registerMockedHttpURLLoad(testFile);
4311 FrameTestHelpers::loadFrame(m_webViewHelper.webView()->mainFrame(), m_ba seURL + testFile); 4311 FrameTestHelpers::loadFrame(m_webViewHelper.webView()->mainFrame(), m_ba seURL + testFile);
4312 m_webViewHelper.webView()->layout(); 4312 m_webViewHelper.webView()->layout();
4313 4313
4314 const WebSelection* selection = m_fakeSelectionLayerTreeView.selection() ; 4314 const WebSelection* selection = m_fakeSelectionLayerTreeView.selection() ;
4315 const WebSelectionBound* selectStart = m_fakeSelectionLayerTreeView.star t(); 4315 const WebSelectionBound* selectStart = m_fakeSelectionLayerTreeView.star t();
4316 const WebSelectionBound* selectEnd = m_fakeSelectionLayerTreeView.end(); 4316 const WebSelectionBound* selectEnd = m_fakeSelectionLayerTreeView.end();
4317 4317
4318 v8::HandleScope handleScope(v8::Isolate::GetCurrent()); 4318 v8::HandleScope handleScope(v8::Isolate::GetCurrent());
4319 v8::Handle<v8::Value> result = m_webViewHelper.webView()->mainFrame()->t oWebLocalFrame()->executeScriptAndReturnValue(WebScriptSource("expectedResult")) ; 4319 v8::Local<v8::Value> result = m_webViewHelper.webView()->mainFrame()->to WebLocalFrame()->executeScriptAndReturnValue(WebScriptSource("expectedResult"));
4320 if (result.IsEmpty() || (*result)->IsUndefined()) { 4320 if (result.IsEmpty() || (*result)->IsUndefined()) {
4321 EXPECT_FALSE(selection); 4321 EXPECT_FALSE(selection);
4322 EXPECT_FALSE(selectStart); 4322 EXPECT_FALSE(selectStart);
4323 EXPECT_FALSE(selectEnd); 4323 EXPECT_FALSE(selectEnd);
4324 return; 4324 return;
4325 } 4325 }
4326 4326
4327 ASSERT_TRUE(selection); 4327 ASSERT_TRUE(selection);
4328 ASSERT_TRUE(selectStart); 4328 ASSERT_TRUE(selectStart);
4329 ASSERT_TRUE(selectEnd); 4329 ASSERT_TRUE(selectEnd);
(...skipping 2983 matching lines...) Expand 10 before | Expand all | Expand 10 after
7313 ASSERT_EQ(2u, popupWebFrameClient.messages.size()); 7313 ASSERT_EQ(2u, popupWebFrameClient.messages.size());
7314 EXPECT_TRUE(std::string::npos != popupWebFrameClient.messages[1].text.utf8() .find("Blocked a frame")); 7314 EXPECT_TRUE(std::string::npos != popupWebFrameClient.messages[1].text.utf8() .find("Blocked a frame"));
7315 7315
7316 // Manually reset to break WebViewHelpers' dependencies on the stack 7316 // Manually reset to break WebViewHelpers' dependencies on the stack
7317 // allocated WebFrameClients. 7317 // allocated WebFrameClients.
7318 webViewHelper.reset(); 7318 webViewHelper.reset();
7319 popupWebViewHelper.reset(); 7319 popupWebViewHelper.reset();
7320 } 7320 }
7321 7321
7322 } // namespace blink 7322 } // namespace blink
OLDNEW
« no previous file with comments | « Source/web/WebPluginContainerImpl.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698