blob: a732790c9f87ed29c3b55c4f26dbf34ec2119122 [file] [log] [blame]
// 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.
#ifndef CHROME_BROWSER_EXTENSIONS_MOCK_EXTENSION_SPECIAL_STORAGE_POLICY_H_
#define CHROME_BROWSER_EXTENSIONS_MOCK_EXTENSION_SPECIAL_STORAGE_POLICY_H_
#include <set>
#include <string>
#include "base/macros.h"
#include "chrome/browser/extensions/extension_special_storage_policy.h"
#include "services/network/session_cleanup_cookie_store.h"
#include "url/gurl.h"
// This class is the same as MockSpecialStoragePolicy (in
// content/public/test/mock_special_storage_policy.h), but it inherits
// ExtensionSpecialStoragePolicy instead of storage::SpecialStoragePolicy.
class MockExtensionSpecialStoragePolicy : public ExtensionSpecialStoragePolicy {
public:
MockExtensionSpecialStoragePolicy();
// storage::SpecialStoragePolicy:
bool IsStorageProtected(const GURL& origin) override;
bool IsStorageUnlimited(const GURL& origin) override;
bool IsStorageSessionOnly(const GURL& origin) override;
bool HasSessionOnlyOrigins() override;
network::SessionCleanupCookieStore::DeleteCookiePredicate
CreateDeleteCookieOnExitPredicate() override;
void AddProtected(const GURL& origin) {
protected_.insert(origin);
}
private:
~MockExtensionSpecialStoragePolicy() override;
std::set<GURL> protected_;
DISALLOW_COPY_AND_ASSIGN(MockExtensionSpecialStoragePolicy);
};
#endif // CHROME_BROWSER_EXTENSIONS_MOCK_EXTENSION_SPECIAL_STORAGE_POLICY_H_