From 33b61bcc0c64b4d44377f86df8746b54f2bce01b Mon Sep 17 00:00:00 2001 From: "jochen@chromium.org" Date: Thu, 10 Jun 2010 12:55:00 +0000 Subject: Wrappers around BrowsingDataHelpers that returned canned responses. BUG=45230 TEST=CannedBrowsingData*HelperTest.* Review URL: http://codereview.chromium.org/2707001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49388 0039d316-1c4b-4281-b951-d872f2087c98 --- .../browsing_data_appcache_helper_unittest.cc | 61 ++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 chrome/browser/browsing_data_appcache_helper_unittest.cc (limited to 'chrome/browser/browsing_data_appcache_helper_unittest.cc') diff --git a/chrome/browser/browsing_data_appcache_helper_unittest.cc b/chrome/browser/browsing_data_appcache_helper_unittest.cc new file mode 100644 index 0000000..fe30c7c --- /dev/null +++ b/chrome/browser/browsing_data_appcache_helper_unittest.cc @@ -0,0 +1,61 @@ +// Copyright (c) 2010 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/browsing_data_appcache_helper.h" + +#include "base/stl_util-inl.h" +#include "chrome/test/testing_profile.h" +#include "testing/gtest/include/gtest/gtest.h" + +namespace { +class TestCompletionCallback : public CallbackRunner { + public: + TestCompletionCallback() + : have_result_(false) { + } + + bool have_result() const { return have_result_; } + + virtual void RunWithParams(const Tuple0& params) { + have_result_ = true; + } + private: + bool have_result_; +}; + +} // namespace + +TEST(CannedBrowsingDataAppCacheHelperTest, SetInfo) { + TestingProfile profile; + + GURL manifest1("http://example1.com/manifest.xml"); + GURL manifest2("http://example2.com/path1/manifest.xml"); + GURL manifest3("http://example2.com/path2/manifest.xml"); + + scoped_refptr helper = + new CannedBrowsingDataAppCacheHelper(&profile); + helper->AddAppCache(manifest1); + helper->AddAppCache(manifest2); + helper->AddAppCache(manifest3); + + TestCompletionCallback callback; + helper->StartFetching(&callback); + ASSERT_TRUE(callback.have_result()); + + std::map& collection = + helper->info_collection()->infos_by_origin; + + ASSERT_EQ(2u, collection.size()); + EXPECT_TRUE(ContainsKey(collection, manifest1.GetOrigin())); + ASSERT_EQ(1u, collection[manifest1.GetOrigin()].size()); + EXPECT_EQ(manifest1, collection[manifest1.GetOrigin()].at(0).manifest_url); + + EXPECT_TRUE(ContainsKey(collection, manifest2.GetOrigin())); + EXPECT_EQ(2u, collection[manifest2.GetOrigin()].size()); + std::set manifest_results; + manifest_results.insert(collection[manifest2.GetOrigin()].at(0).manifest_url); + manifest_results.insert(collection[manifest2.GetOrigin()].at(1).manifest_url); + EXPECT_TRUE(ContainsKey(manifest_results, manifest2)); + EXPECT_TRUE(ContainsKey(manifest_results, manifest3)); +} -- cgit v1.1