diff options
author | tsepez@chromium.org <tsepez@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-05 22:20:44 +0000 |
---|---|---|
committer | tsepez@chromium.org <tsepez@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-05 22:20:44 +0000 |
commit | 0d495b40f8420624b4d6db230392e53a6472e725 (patch) | |
tree | 162e976243a9c455b85be797149298073ccccd5e /chrome | |
parent | f900fb44fe7bd9c34e0a583bff4a43280be42878 (diff) | |
download | chromium_src-0d495b40f8420624b4d6db230392e53a6472e725.zip chromium_src-0d495b40f8420624b4d6db230392e53a6472e725.tar.gz chromium_src-0d495b40f8420624b4d6db230392e53a6472e725.tar.bz2 |
Add unit test for the javascript: URL blocking code.
BUG=91851
TEST=unit_tests:OmniboxView.*
Review URL: http://codereview.chromium.org/7585016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95669 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/browser/ui/omnibox/omnibox_view_unittest.cc | 28 | ||||
-rw-r--r-- | chrome/chrome_tests.gypi | 1 |
2 files changed, 29 insertions, 0 deletions
diff --git a/chrome/browser/ui/omnibox/omnibox_view_unittest.cc b/chrome/browser/ui/omnibox/omnibox_view_unittest.cc new file mode 100644 index 0000000..d017bff --- /dev/null +++ b/chrome/browser/ui/omnibox/omnibox_view_unittest.cc @@ -0,0 +1,28 @@ +// Copyright (c) 2011 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/ui/omnibox/omnibox_view.h" +#include "base/string16.h" +#include "base/string_util.h" +#include "base/utf_string_conversions.h" +#include "testing/gtest/include/gtest/gtest.h" + +TEST(OmniboxView, TestStripSchemasUnsafeForPaste) { + const char* urls[] = { + "http://www.google.com?q=javascript:alert(0)", // Safe URL. + "javAscript:alert(0)", // Unsafe JS URL. + "jaVascript:\njavaScript: alert(0)" // Single strip unsafe. + }; + + const char* expecteds[] = { + "http://www.google.com?q=javascript:alert(0)", // Safe URL. + "alert(0)", // Unsafe JS URL. + "alert(0)" // Single strip unsafe. + }; + + for (size_t i = 0; i < arraysize(urls); i++) { + EXPECT_EQ(ASCIIToUTF16(expecteds[i]), + OmniboxView::StripJavascriptSchemas(ASCIIToUTF16(urls[i]))); + } +} diff --git a/chrome/chrome_tests.gypi b/chrome/chrome_tests.gypi index e150411..19e3d28 100644 --- a/chrome/chrome_tests.gypi +++ b/chrome/chrome_tests.gypi @@ -1869,6 +1869,7 @@ 'browser/ui/gtk/status_icons/status_tray_gtk_unittest.cc', 'browser/ui/gtk/tabs/tab_renderer_gtk_unittest.cc', 'browser/ui/login/login_prompt_unittest.cc', + 'browser/ui/omnibox/omnibox_view_unittest.cc', 'browser/ui/panels/panel_browser_window_cocoa_unittest.mm', 'browser/ui/search_engines/keyword_editor_controller_unittest.cc', 'browser/ui/shell_dialogs_unittest.cc', |