Index: net/cookies/cookie_monster_store_test.h |
diff --git a/net/cookies/cookie_monster_store_test.h b/net/cookies/cookie_monster_store_test.h |
deleted file mode 100644 |
index 4a3f9a96f8b32753d471ff85d80476c744a1df62..0000000000000000000000000000000000000000 |
--- a/net/cookies/cookie_monster_store_test.h |
+++ /dev/null |
@@ -1,204 +0,0 @@ |
-// Copyright (c) 2012 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. |
- |
-// This file contains test infrastructure for multiple files |
-// (current cookie_monster_unittest.cc and cookie_monster_perftest.cc) |
-// that need to test out CookieMonster interactions with the backing store. |
-// It should only be included by test code. |
- |
-#ifndef NET_COOKIES_COOKIE_MONSTER_STORE_TEST_H_ |
-#define NET_COOKIES_COOKIE_MONSTER_STORE_TEST_H_ |
- |
-#include <map> |
-#include <string> |
-#include <utility> |
-#include <vector> |
-#include "net/cookies/canonical_cookie.h" |
-#include "net/cookies/cookie_monster.h" |
- |
-namespace base { |
-class Time; |
-} |
- |
-namespace net { |
- |
-// Wrapper class for posting a loaded callback. Since the Callback class is not |
-// reference counted, we cannot post a callback to the message loop directly, |
-// instead we post a LoadedCallbackTask. |
-class LoadedCallbackTask |
- : public base::RefCountedThreadSafe<LoadedCallbackTask> { |
- public: |
- typedef CookieMonster::PersistentCookieStore::LoadedCallback LoadedCallback; |
- |
- LoadedCallbackTask(LoadedCallback loaded_callback, |
- std::vector<CanonicalCookie*> cookies); |
- |
- void Run() { |
- loaded_callback_.Run(cookies_); |
- } |
- |
- private: |
- friend class base::RefCountedThreadSafe<LoadedCallbackTask>; |
- ~LoadedCallbackTask(); |
- |
- LoadedCallback loaded_callback_; |
- std::vector<CanonicalCookie*> cookies_; |
- |
- DISALLOW_COPY_AND_ASSIGN(LoadedCallbackTask); |
-}; // Wrapper class LoadedCallbackTask |
- |
-// Describes a call to one of the 3 functions of PersistentCookieStore. |
-struct CookieStoreCommand { |
- enum Type { |
- ADD, |
- UPDATE_ACCESS_TIME, |
- REMOVE, |
- }; |
- |
- CookieStoreCommand(Type type, const CanonicalCookie& cookie) |
- : type(type), |
- cookie(cookie) {} |
- |
- Type type; |
- CanonicalCookie cookie; |
-}; |
- |
-// Implementation of PersistentCookieStore that captures the |
-// received commands and saves them to a list. |
-// The result of calls to Load() can be configured using SetLoadExpectation(). |
-class MockPersistentCookieStore |
- : public CookieMonster::PersistentCookieStore { |
- public: |
- typedef std::vector<CookieStoreCommand> CommandList; |
- |
- MockPersistentCookieStore(); |
- |
- void SetLoadExpectation( |
- bool return_value, |
- const std::vector<CanonicalCookie*>& result); |
- |
- const CommandList& commands() const { |
- return commands_; |
- } |
- |
- void Load(const LoadedCallback& loaded_callback) override; |
- |
- void LoadCookiesForKey(const std::string& key, |
- const LoadedCallback& loaded_callback) override; |
- |
- void AddCookie(const CanonicalCookie& cookie) override; |
- |
- void UpdateCookieAccessTime(const CanonicalCookie& cookie) override; |
- |
- void DeleteCookie(const CanonicalCookie& cookie) override; |
- |
- void Flush(const base::Closure& callback) override; |
- |
- void SetForceKeepSessionState() override; |
- |
- protected: |
- ~MockPersistentCookieStore() override; |
- |
- private: |
- CommandList commands_; |
- |
- // Deferred result to use when Load() is called. |
- bool load_return_value_; |
- std::vector<CanonicalCookie*> load_result_; |
- // Indicates if the store has been fully loaded to avoid returning duplicate |
- // cookies. |
- bool loaded_; |
- |
- DISALLOW_COPY_AND_ASSIGN(MockPersistentCookieStore); |
-}; |
- |
-// Mock for CookieMonsterDelegate |
-class MockCookieMonsterDelegate : public CookieMonsterDelegate { |
- public: |
- typedef std::pair<CanonicalCookie, bool> |
- CookieNotification; |
- |
- MockCookieMonsterDelegate(); |
- |
- const std::vector<CookieNotification>& changes() const { return changes_; } |
- |
- void reset() { changes_.clear(); } |
- |
- void OnCookieChanged(const CanonicalCookie& cookie, |
- bool removed, |
- CookieMonsterDelegate::ChangeCause cause) override; |
- |
- void OnLoaded() override; |
- |
- private: |
- ~MockCookieMonsterDelegate() override; |
- |
- std::vector<CookieNotification> changes_; |
- |
- DISALLOW_COPY_AND_ASSIGN(MockCookieMonsterDelegate); |
-}; |
- |
-// Helper to build a single CanonicalCookie. |
-CanonicalCookie BuildCanonicalCookie(const std::string& key, |
- const std::string& cookie_line, |
- const base::Time& creation_time); |
- |
-// Helper to build a list of CanonicalCookie*s. |
-void AddCookieToList( |
- const std::string& key, |
- const std::string& cookie_line, |
- const base::Time& creation_time, |
- std::vector<CanonicalCookie*>* out_list); |
- |
-// Just act like a backing database. Keep cookie information from |
-// Add/Update/Delete and regurgitate it when Load is called. |
-class MockSimplePersistentCookieStore |
- : public CookieMonster::PersistentCookieStore { |
- public: |
- MockSimplePersistentCookieStore(); |
- |
- void Load(const LoadedCallback& loaded_callback) override; |
- |
- void LoadCookiesForKey(const std::string& key, |
- const LoadedCallback& loaded_callback) override; |
- |
- void AddCookie(const CanonicalCookie& cookie) override; |
- |
- void UpdateCookieAccessTime(const CanonicalCookie& cookie) override; |
- |
- void DeleteCookie(const CanonicalCookie& cookie) override; |
- |
- void Flush(const base::Closure& callback) override; |
- |
- void SetForceKeepSessionState() override; |
- |
- protected: |
- ~MockSimplePersistentCookieStore() override; |
- |
- private: |
- typedef std::map<int64, CanonicalCookie> CanonicalCookieMap; |
- |
- CanonicalCookieMap cookies_; |
- |
- // Indicates if the store has been fully loaded to avoid return duplicate |
- // cookies in subsequent load requests |
- bool loaded_; |
-}; |
- |
-// Helper function for creating a CookieMonster backed by a |
-// MockSimplePersistentCookieStore for garbage collection testing. |
-// |
-// Fill the store through import with |num_cookies| cookies, |num_old_cookies| |
-// with access time Now()-days_old, the rest with access time Now(). |
-// Do two SetCookies(). Return whether each of the two SetCookies() took |
-// longer than |gc_perf_micros| to complete, and how many cookie were |
-// left in the store afterwards. |
-CookieMonster* CreateMonsterFromStoreForGC( |
- int num_cookies, |
- int num_old_cookies, |
- int days_old); |
- |
-} // namespace net |
- |
-#endif // NET_COOKIES_COOKIE_MONSTER_STORE_TEST_H_ |