Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / content / public / test / test_file_system_context.h
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef CONTENT_PUBLIC_TEST_TEST_FILE_SYSTEM_CONTEXT_H_
6 #define CONTENT_PUBLIC_TEST_TEST_FILE_SYSTEM_CONTEXT_H_
7
8 #include "base/files/file_path.h"
9 #include "base/memory/scoped_vector.h"
10 #include "storage/browser/fileapi/file_system_context.h"
11
12 namespace storage {
13 class QuotaManagerProxy;
14 class SpecialStoragePolicy;
15 }
16
17 namespace storage {
18 class FileSystemBackend;
19 }
20
21 namespace content {
22
23 storage::FileSystemContext* CreateFileSystemContextForTesting(
24     storage::QuotaManagerProxy* quota_manager_proxy,
25     const base::FilePath& base_path);
26
27 // The caller is responsible for including TestFileSystemBackend in
28 // |additional_providers| if needed.
29 storage::FileSystemContext*
30     CreateFileSystemContextWithAdditionalProvidersForTesting(
31         storage::QuotaManagerProxy* quota_manager_proxy,
32         ScopedVector<storage::FileSystemBackend> additional_providers,
33         const base::FilePath& base_path);
34
35 storage::FileSystemContext* CreateFileSystemContextWithAutoMountersForTesting(
36     storage::QuotaManagerProxy* quota_manager_proxy,
37     ScopedVector<storage::FileSystemBackend> additional_providers,
38     const std::vector<storage::URLRequestAutoMountHandler>& auto_mounters,
39     const base::FilePath& base_path);
40
41 storage::FileSystemContext* CreateIncognitoFileSystemContextForTesting(
42     storage::QuotaManagerProxy* quota_manager_proxy,
43     const base::FilePath& base_path);
44
45 }  // namespace content
46
47 #endif  // CONTENT_PUBLIC_TEST_TEST_FILE_SYSTEM_CONTEXT_H_