Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(731)

Unified Diff: chrome/browser/extensions/api/system_info_storage/test_storage_info_provider.h

Issue 16707002: [SystemInfo API] Rewrite storage info provider using storage monitor impl. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix comments of jyasskin Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/api/system_info_storage/test_storage_info_provider.h
diff --git a/chrome/browser/extensions/api/system_info_storage/test_storage_info_provider.h b/chrome/browser/extensions/api/system_info_storage/test_storage_info_provider.h
new file mode 100644
index 0000000000000000000000000000000000000000..3b895727cce1d9e4085b7fe8a4e2abe0b807317a
--- /dev/null
+++ b/chrome/browser/extensions/api/system_info_storage/test_storage_info_provider.h
@@ -0,0 +1,57 @@
+// Copyright 2013 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_API_SYSTEM_INFO_STORAGE_TEST_STORAGE_INFO_PROVIDER_H_
+#define CHROME_BROWSER_EXTENSIONS_API_SYSTEM_INFO_STORAGE_TEST_STORAGE_INFO_PROVIDER_H_
+
+#include <vector>
+
+#include "chrome/browser/extensions/api/system_info_storage/storage_info_provider.h"
+#include "chrome/browser/storage_monitor/storage_info.h"
+
+namespace extensions {
+
+struct TestUnitInfo {
Jeffrey Yasskin 2013/07/03 21:44:49 extensions::TestUnitInfo is still too general. Mak
Haojian Wu 2013/07/04 00:41:17 Done.
+ const char* device_id;
+ const char* transient_id;
+ const char* name;
+ const char* type;
+ // Total amount of the storage device space, in bytes.
+ double capacity;
+ // The available amount of the storage space, in bytes.
+ double available_capacity;
+ // The change step of available capacity for simulating the free space change.
+ // Each querying operation will increase the |available_capacity| with this
+ // value.
+ int change_step;
+};
+
+// StorageInfoProvider for unit_test and browser_tests.
+// Override related methods to avoid calling out to the actual system.
+class TestStorageInfoProvider : public extensions::StorageInfoProvider {
+ public:
+ TestStorageInfoProvider(const struct TestUnitInfo* testing_data, size_t n);
+
+ static chrome::StorageInfo BuildStorageInfo(const TestUnitInfo& unit);
+
+ virtual std::string GetTransientIdForDeviceId(
+ const std::string& device_id) const OVERRIDE;
+ virtual std::string GetDeviceIdForTransientId(
+ const std::string& transient_id) const OVERRIDE;
+
+ protected:
+ virtual ~TestStorageInfoProvider();
+
+ // StorageInfoProvider implementations.
+ virtual bool QueryInfo(extensions::StorageInfo* info) OVERRIDE;
+ virtual std::vector<chrome::StorageInfo> GetAllStorages() const OVERRIDE;
+ virtual int64 GetStorageFreeSpaceFromTransientId(
+ const std::string& transient_id) OVERRIDE;
+
+ std::vector<struct TestUnitInfo> testing_data_;
+};
+
+} // namespace extensions
+#endif // CHROME_BROWSER_EXTENSIONS_API_SYSTEM_INFO_STORAGE_TEST_STORAGE_INFO_PROVIDER_H_
+

Powered by Google App Engine
This is Rietveld 408576698