| Index: chrome/renderer/safe_browsing/malware_dom_details_browsertest.cc
|
| diff --git a/chrome/renderer/safe_browsing/malware_dom_details_browsertest.cc b/chrome/renderer/safe_browsing/malware_dom_details_browsertest.cc
|
| deleted file mode 100644
|
| index e4ef1e649a1f3435715c1438ee384af09b3cb70b..0000000000000000000000000000000000000000
|
| --- a/chrome/renderer/safe_browsing/malware_dom_details_browsertest.cc
|
| +++ /dev/null
|
| @@ -1,130 +0,0 @@
|
| -// 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 "base/strings/stringprintf.h"
|
| -#include "chrome/common/safe_browsing/safebrowsing_messages.h"
|
| -#include "chrome/renderer/safe_browsing/malware_dom_details.h"
|
| -#include "chrome/test/base/chrome_render_view_test.h"
|
| -#include "net/base/escape.h"
|
| -
|
| -typedef ChromeRenderViewTest MalwareDOMDetailsTest;
|
| -
|
| -
|
| -TEST_F(MalwareDOMDetailsTest, Everything) {
|
| - scoped_ptr<safe_browsing::MalwareDOMDetails> details(
|
| - safe_browsing::MalwareDOMDetails::Create(view_));
|
| - // Lower kMaxNodes for the test. Loading 500 subframes in a
|
| - // debug build takes a while.
|
| - details->kMaxNodes = 50;
|
| -
|
| - const char urlprefix[] = "data:text/html;charset=utf-8,";
|
| -
|
| - { // An page with an internal script
|
| - std::string html = "<html><head><script></script></head></html>";
|
| - LoadHTML(html.c_str());
|
| - std::vector<SafeBrowsingHostMsg_MalwareDOMDetails_Node> params;
|
| - details->ExtractResources(¶ms);
|
| - ASSERT_EQ(1u, params.size());
|
| - EXPECT_EQ(GURL(urlprefix + html), params[0].url);
|
| - }
|
| -
|
| - { // A page with 2 external scripts.
|
| - // Note: This part of the test causes 2 leaks: LEAK: 5 WebCoreNode
|
| - // LEAK: 2 CachedResource.
|
| - GURL script1_url("data:text/javascript;charset=utf-8,var a=1;");
|
| - GURL script2_url("data:text/javascript;charset=utf-8,var b=2;");
|
| - std::string html = "<html><head><script src=\"" + script1_url.spec() +
|
| - "\"></script><script src=\"" + script2_url.spec() +
|
| - "\"></script></head></html>";
|
| - GURL url(urlprefix + html);
|
| -
|
| - LoadHTML(html.c_str());
|
| - std::vector<SafeBrowsingHostMsg_MalwareDOMDetails_Node> params;
|
| - details->ExtractResources(¶ms);
|
| - ASSERT_EQ(3u, params.size());
|
| - EXPECT_EQ(script1_url, params[0].url);
|
| - EXPECT_EQ("SCRIPT", params[0].tag_name);
|
| - EXPECT_EQ(script2_url, params[1].url);
|
| - EXPECT_EQ("SCRIPT", params[0].tag_name);
|
| - EXPECT_EQ(url, params[2].url);
|
| - }
|
| -
|
| - { // A page with an iframe which in turn contains an iframe.
|
| - // html
|
| - // \ iframe1
|
| - // \ iframe2
|
| - std::string iframe2_html = "<html><body>iframe2</body></html>";
|
| - GURL iframe2_url(urlprefix + iframe2_html);
|
| - std::string iframe1_html = "<iframe src=\"" + net::EscapeForHTML(
|
| - iframe2_url.spec()) + "\"></iframe>";
|
| - GURL iframe1_url(urlprefix + iframe1_html);
|
| - std::string html = "<html><head><iframe src=\"" + net::EscapeForHTML(
|
| - iframe1_url.spec()) + "\"></iframe></head></html>";
|
| - GURL url(urlprefix + html);
|
| -
|
| - LoadHTML(html.c_str());
|
| - std::vector<SafeBrowsingHostMsg_MalwareDOMDetails_Node> params;
|
| - details->ExtractResources(¶ms);
|
| - ASSERT_EQ(5u, params.size());
|
| -
|
| - EXPECT_EQ(iframe1_url, params[0].url);
|
| - EXPECT_EQ(url, params[0].parent);
|
| - EXPECT_EQ(0u, params[0].children.size());
|
| - EXPECT_EQ("IFRAME", params[0].tag_name);
|
| -
|
| - EXPECT_EQ(url, params[1].url);
|
| - EXPECT_EQ(GURL(), params[1].parent);
|
| - EXPECT_EQ(1u, params[1].children.size());
|
| - EXPECT_EQ(iframe1_url, params[1].children[0]);
|
| -
|
| - EXPECT_EQ(iframe2_url, params[2].url);
|
| - EXPECT_EQ(iframe1_url, params[2].parent);
|
| - EXPECT_EQ(0u, params[2].children.size());
|
| - EXPECT_EQ("IFRAME", params[2].tag_name);
|
| -
|
| - // The frames are added twice, once with the correct parent and tagname
|
| - // and once with the correct children. The caller in the browser
|
| - // is responsible for merging.
|
| - EXPECT_EQ(iframe1_url, params[3].url);
|
| - EXPECT_EQ(GURL(), params[3].parent);
|
| - EXPECT_EQ(1u, params[3].children.size());
|
| - EXPECT_EQ(iframe2_url, params[3].children[0]);
|
| -
|
| - EXPECT_EQ(iframe2_url, params[4].url);
|
| - EXPECT_EQ(GURL(), params[4].parent);
|
| - EXPECT_EQ(0u, params[4].children.size());
|
| - }
|
| -
|
| - { // >50 subframes, to verify kMaxNodes.
|
| - std::string html;
|
| - for (int i = 0; i < 55; ++i) {
|
| - // The iframe contents is just a number.
|
| - GURL iframe_url(base::StringPrintf("%s%d", urlprefix, i));
|
| - html += "<iframe src=\"" + net::EscapeForHTML(iframe_url.spec()) +
|
| - "\"></iframe>";
|
| - }
|
| - GURL url(urlprefix + html);
|
| -
|
| - LoadHTML(html.c_str());
|
| - std::vector<SafeBrowsingHostMsg_MalwareDOMDetails_Node> params;
|
| - details->ExtractResources(¶ms);
|
| - ASSERT_EQ(51u, params.size());
|
| - }
|
| -
|
| - { // A page with >50 scripts, to verify kMaxNodes.
|
| - std::string html;
|
| - for (int i = 0; i < 55; ++i) {
|
| - // The iframe contents is just a number.
|
| - GURL script_url(base::StringPrintf("%s%d", urlprefix, i));
|
| - html += "<script src=\"" + net::EscapeForHTML(script_url.spec()) +
|
| - "\"></script>";
|
| - }
|
| - GURL url(urlprefix + html);
|
| -
|
| - LoadHTML(html.c_str());
|
| - std::vector<SafeBrowsingHostMsg_MalwareDOMDetails_Node> params;
|
| - details->ExtractResources(¶ms);
|
| - ASSERT_EQ(51u, params.size());
|
| - }
|
| -}
|
|
|