| Index: webkit/quota/mock_quota_manager.cc
|
| diff --git a/webkit/quota/mock_quota_manager.cc b/webkit/quota/mock_quota_manager.cc
|
| index 535fb650ddd53b48e6b261fb6ec45c87e150f04d..34bd3b0a5dcb0040c1c69f3110a2ab521a0bea48 100644
|
| --- a/webkit/quota/mock_quota_manager.cc
|
| +++ b/webkit/quota/mock_quota_manager.cc
|
| @@ -90,6 +90,11 @@ MockQuotaManager::OriginInfo::OriginInfo(
|
|
|
| MockQuotaManager::OriginInfo::~OriginInfo() {}
|
|
|
| +MockQuotaManager::StorageInfo::StorageInfo() : usage(0), quota(kint64max) {}
|
| +MockQuotaManager::StorageInfo::~StorageInfo() {}
|
| +
|
| +// MockQuotaManager ----------------------------------------------------------
|
| +
|
| MockQuotaManager::MockQuotaManager(
|
| bool is_incognito,
|
| const FilePath& profile_path,
|
| @@ -100,6 +105,19 @@ MockQuotaManager::MockQuotaManager(
|
| special_storage_policy) {
|
| }
|
|
|
| +void MockQuotaManager::GetUsageAndQuota(
|
| + const GURL& origin,
|
| + quota::StorageType type,
|
| + const GetUsageAndQuotaCallback& callback) {
|
| + StorageInfo& info = usage_and_quota_map_[std::make_pair(origin, type)];
|
| + callback.Run(quota::kQuotaStatusOk, info.usage, info.quota);
|
| +}
|
| +
|
| +void MockQuotaManager::SetQuota(const GURL& origin, StorageType type,
|
| + int64 quota) {
|
| + usage_and_quota_map_[std::make_pair(origin, type)].quota = quota;
|
| +}
|
| +
|
| bool MockQuotaManager::AddOrigin(
|
| const GURL& origin,
|
| StorageType type,
|
| @@ -160,4 +178,57 @@ void MockQuotaManager::DeleteOriginData(
|
|
|
| MockQuotaManager::~MockQuotaManager() {}
|
|
|
| +void MockQuotaManager::UpdateUsage(
|
| + const GURL& origin, StorageType type, int64 delta) {
|
| + usage_and_quota_map_[std::make_pair(origin, type)].usage += delta;
|
| +}
|
| +
|
| +// MockQuotaManagerProxy -----------------------------------------------------
|
| +
|
| +MockQuotaManagerProxy::MockQuotaManagerProxy(
|
| + MockQuotaManager* quota_manager,
|
| + base::SingleThreadTaskRunner* task_runner)
|
| + : QuotaManagerProxy(quota_manager, task_runner),
|
| + storage_accessed_count_(0),
|
| + storage_modified_count_(0),
|
| + last_notified_type_(kStorageTypeUnknown),
|
| + last_notified_delta_(0),
|
| + registered_client_(NULL) {}
|
| +
|
| +void MockQuotaManagerProxy::RegisterClient(QuotaClient* client) {
|
| + DCHECK(!registered_client_);
|
| + registered_client_ = client;
|
| +}
|
| +
|
| +void MockQuotaManagerProxy::SimulateQuotaManagerDestroyed() {
|
| + if (registered_client_) {
|
| + // We cannot call this in the destructor as the client (indirectly)
|
| + // holds a refptr of the proxy.
|
| + registered_client_->OnQuotaManagerDestroyed();
|
| + registered_client_ = NULL;
|
| + }
|
| +}
|
| +
|
| +void MockQuotaManagerProxy::NotifyStorageAccessed(
|
| + QuotaClient::ID client_id, const GURL& origin, StorageType type) {
|
| + ++storage_accessed_count_;
|
| + last_notified_origin_ = origin;
|
| + last_notified_type_ = type;
|
| +}
|
| +
|
| +void MockQuotaManagerProxy::NotifyStorageModified(
|
| + QuotaClient::ID client_id, const GURL& origin,
|
| + StorageType type, int64 delta) {
|
| + ++storage_modified_count_;
|
| + last_notified_origin_ = origin;
|
| + last_notified_type_ = type;
|
| + last_notified_delta_ = delta;
|
| + if (mock_manager())
|
| + mock_manager()->UpdateUsage(origin, type, delta);
|
| +}
|
| +
|
| +MockQuotaManagerProxy::~MockQuotaManagerProxy() {
|
| + DCHECK(!registered_client_);
|
| +}
|
| +
|
| } // namespace quota
|
|
|