// Copyright 2014 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 CONTENT_BROWSER_APPCACHE_MOCK_APPCACHE_SERVICE_H_ #define CONTENT_BROWSER_APPCACHE_MOCK_APPCACHE_SERVICE_H_ #include "base/compiler_specific.h" #include "content/browser/appcache/appcache_service_impl.h" #include "content/browser/appcache/mock_appcache_storage.h" #include "storage/browser/quota/quota_manager.h" namespace content { // For use by unit tests. class MockAppCacheService : public AppCacheServiceImpl { public: MockAppCacheService() : AppCacheServiceImpl(NULL), mock_delete_appcaches_for_origin_result_(net::OK), delete_called_count_(0) { storage_.reset(new MockAppCacheStorage(this)); } // Just returns a canned completion code without actually // removing groups and caches in our mock storage instance. virtual void DeleteAppCachesForOrigin( const GURL& origin, const net::CompletionCallback& callback) OVERRIDE; void set_quota_manager_proxy(storage::QuotaManagerProxy* proxy) { quota_manager_proxy_ = proxy; } void set_mock_delete_appcaches_for_origin_result(int rv) { mock_delete_appcaches_for_origin_result_ = rv; } int delete_called_count() const { return delete_called_count_; } private: int mock_delete_appcaches_for_origin_result_; int delete_called_count_; }; } // namespace content #endif // CONTENT_BROWSER_APPCACHE_MOCK_APPCACHE_SERVICE_H_