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

Side by Side Diff: content/browser/devtools/protocol/devtools_protocol_browsertest.cc

Issue 2366773003: [DevTools] Avoid current_ and pending_ being the same host in RenderFrameDevToolsAgentHost. (Closed)
Patch Set: rebased, win failure Created 4 years, 2 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 | « no previous file | content/browser/devtools/render_frame_devtools_agent_host.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 <stddef.h> 5 #include <stddef.h>
6 #include <utility> 6 #include <utility>
7 7
8 #include "base/base64.h" 8 #include "base/base64.h"
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/bind_helpers.h" 10 #include "base/bind_helpers.h"
(...skipping 340 matching lines...) Expand 10 before | Expand all | Expand 10 after
351 } else { 351 } else {
352 requested_notification_params_.reset(); 352 requested_notification_params_.reset();
353 } 353 }
354 waiting_for_notification_ = std::string(); 354 waiting_for_notification_ = std::string();
355 base::MessageLoop::current()->QuitNow(); 355 base::MessageLoop::current()->QuitNow();
356 } 356 }
357 } 357 }
358 } 358 }
359 359
360 void AgentHostClosed(DevToolsAgentHost* agent_host, bool replaced) override { 360 void AgentHostClosed(DevToolsAgentHost* agent_host, bool replaced) override {
361 EXPECT_TRUE(false); 361 DCHECK(false);
362 } 362 }
363 363
364 std::string waiting_for_notification_; 364 std::string waiting_for_notification_;
365 int waiting_for_command_result_id_; 365 int waiting_for_command_result_id_;
366 bool in_dispatch_; 366 bool in_dispatch_;
367 scoped_refptr<net::X509Certificate> last_shown_certificate_; 367 scoped_refptr<net::X509Certificate> last_shown_certificate_;
368 scoped_refptr<net::X509Certificate> ok_cert_; 368 scoped_refptr<net::X509Certificate> ok_cert_;
369 scoped_refptr<net::X509Certificate> expired_cert_; 369 scoped_refptr<net::X509Certificate> expired_cert_;
370 }; 370 };
371 371
(...skipping 459 matching lines...) Expand 10 before | Expand all | Expand 10 after
831 // Ensure that the A.com process is still alive by executing a script in the 831 // Ensure that the A.com process is still alive by executing a script in the
832 // original tab. 832 // original tab.
833 success = false; 833 success = false;
834 EXPECT_TRUE(ExecuteScriptAndExtractBool(shell(), 834 EXPECT_TRUE(ExecuteScriptAndExtractBool(shell(),
835 "window.domAutomationController.send(" 835 "window.domAutomationController.send("
836 " !!window.open('', 'foo'));", 836 " !!window.open('', 'foo'));",
837 &success)); 837 &success));
838 EXPECT_TRUE(success); 838 EXPECT_TRUE(success);
839 } 839 }
840 840
841 // CrashTab() works differently on Windows, leading to RFH removal before
842 // RenderProcessGone is called. TODO(dgozman): figure out the problem.
843 #if defined(OS_WIN)
844 #define MAYBE_DoubleCrash DISABLED_DoubleCrash
845 #else
846 #define MAYBE_DoubleCrash DoubleCrash
847 #endif
848 IN_PROC_BROWSER_TEST_F(DevToolsProtocolTest, MAYBE_DoubleCrash) {
849 ASSERT_TRUE(embedded_test_server()->Start());
850 GURL test_url = embedded_test_server()->GetURL("/devtools/navigation.html");
851 NavigateToURLBlockUntilNavigationsComplete(shell(), GURL("about:blank"), 1);
852 Attach();
853 SendCommand("ServiceWorker.enable", nullptr);
854 NavigateToURLBlockUntilNavigationsComplete(shell(), test_url, 1);
855 CrashTab(shell()->web_contents());
856 NavigateToURLBlockUntilNavigationsComplete(shell(), test_url, 1);
857 CrashTab(shell()->web_contents());
858 NavigateToURLBlockUntilNavigationsComplete(shell(), GURL("about:blank"), 1);
859 // Should not crash at this point.
860 }
861
841 IN_PROC_BROWSER_TEST_F(DevToolsProtocolTest, ReloadBlankPage) { 862 IN_PROC_BROWSER_TEST_F(DevToolsProtocolTest, ReloadBlankPage) {
842 Shell* window = Shell::CreateNewWindow( 863 Shell* window = Shell::CreateNewWindow(
843 shell()->web_contents()->GetBrowserContext(), 864 shell()->web_contents()->GetBrowserContext(),
844 GURL("javascript:x=1"), 865 GURL("javascript:x=1"),
845 nullptr, 866 nullptr,
846 gfx::Size()); 867 gfx::Size());
847 WaitForLoadStop(window->web_contents()); 868 WaitForLoadStop(window->web_contents());
848 Attach(); 869 Attach();
849 SendCommand("Page.reload", nullptr, false); 870 SendCommand("Page.reload", nullptr, false);
850 // Should not crash at this point. 871 // Should not crash at this point.
(...skipping 334 matching lines...) Expand 10 before | Expand all | Expand 10 after
1185 ASSERT_TRUE(transient_entry); 1206 ASSERT_TRUE(transient_entry);
1186 transient_entry->GetSSL().certificate = expired_cert(); 1207 transient_entry->GetSSL().certificate = expired_cert();
1187 ASSERT_TRUE(transient_entry->GetSSL().certificate); 1208 ASSERT_TRUE(transient_entry->GetSSL().certificate);
1188 1209
1189 std::unique_ptr<base::DictionaryValue> params2(new base::DictionaryValue()); 1210 std::unique_ptr<base::DictionaryValue> params2(new base::DictionaryValue());
1190 SendCommand("Security.showCertificateViewer", std::move(params2), true); 1211 SendCommand("Security.showCertificateViewer", std::move(params2), true);
1191 EXPECT_EQ(transient_entry->GetSSL().certificate, last_shown_certificate()); 1212 EXPECT_EQ(transient_entry->GetSSL().certificate, last_shown_certificate());
1192 } 1213 }
1193 1214
1194 } // namespace content 1215 } // namespace content
OLDNEW
« no previous file with comments | « no previous file | content/browser/devtools/render_frame_devtools_agent_host.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698