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

Unified Diff: content/public/test/content_browser_test_utils.cc

Issue 1917073002: Block webpages from navigating to view-source URLs (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Delete layout tests Created 4 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
« no previous file with comments | « content/public/test/content_browser_test_utils.h ('k') | content/renderer/render_thread_impl.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/public/test/content_browser_test_utils.cc
diff --git a/content/public/test/content_browser_test_utils.cc b/content/public/test/content_browser_test_utils.cc
index daa8e09267aec581b1ada59ffba88c66473c0475..6be71c424d0fda55353a21460e99f72ef0469866 100644
--- a/content/public/test/content_browser_test_utils.cc
+++ b/content/public/test/content_browser_test_utils.cc
@@ -8,6 +8,8 @@
#include "base/files/file_path.h"
#include "base/path_service.h"
#include "base/run_loop.h"
+#include "base/strings/pattern.h"
+#include "base/strings/utf_string_conversions.h"
#include "content/public/browser/navigation_controller.h"
#include "content/public/browser/notification_source.h"
#include "content/public/browser/web_contents.h"
@@ -127,5 +129,32 @@ void ShellAddedObserver::ShellCreated(Shell* shell) {
runner_->QuitClosure().Run();
}
+ConsoleObserverDelegate::ConsoleObserverDelegate(WebContents* web_contents,
+ const std::string& filter)
+ : web_contents_(web_contents),
+ filter_(filter),
+ message_loop_runner_(new MessageLoopRunner) {}
+
+ConsoleObserverDelegate::~ConsoleObserverDelegate() {}
+
+void ConsoleObserverDelegate::Wait() {
+ message_loop_runner_->Run();
+}
+
+bool ConsoleObserverDelegate::AddMessageToConsole(
+ WebContents* source,
+ int32_t level,
+ const base::string16& message,
+ int32_t line_no,
+ const base::string16& source_id) {
+ DCHECK(source == web_contents_);
+
+ std::string ascii_message = base::UTF16ToASCII(message);
+ if (base::MatchPattern(ascii_message, filter_)) {
+ message_ = ascii_message;
+ message_loop_runner_->Quit();
+ }
+ return false;
+}
} // namespace content
« no previous file with comments | « content/public/test/content_browser_test_utils.h ('k') | content/renderer/render_thread_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698