Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / content / public / test / test_browser_context.h
1 // Copyright (c) 2012 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_BROWSER_CONTEXT_H_
6 #define CONTENT_PUBLIC_TEST_TEST_BROWSER_CONTEXT_H_
7
8 #include "base/compiler_specific.h"
9 #include "base/files/file_path.h"
10 #include "base/files/scoped_temp_dir.h"
11 #include "base/gtest_prod_util.h"
12 #include "base/memory/ref_counted.h"
13 #include "base/memory/scoped_ptr.h"
14 #include "content/public/browser/browser_context.h"
15
16 namespace content {
17 class MockResourceContext;
18
19 class TestBrowserContext : public BrowserContext {
20  public:
21   TestBrowserContext();
22   virtual ~TestBrowserContext();
23
24   // Takes ownership of the temporary directory so that it's not deleted when
25   // this object is destructed.
26   base::FilePath TakePath();
27
28   void SetSpecialStoragePolicy(quota::SpecialStoragePolicy* policy);
29
30   virtual base::FilePath GetPath() const OVERRIDE;
31   virtual bool IsOffTheRecord() const OVERRIDE;
32   virtual DownloadManagerDelegate* GetDownloadManagerDelegate() OVERRIDE;
33   virtual net::URLRequestContextGetter* GetRequestContext() OVERRIDE;
34   virtual net::URLRequestContextGetter* GetRequestContextForRenderProcess(
35       int renderer_child_id) OVERRIDE;
36   virtual net::URLRequestContextGetter* GetMediaRequestContext() OVERRIDE;
37   virtual net::URLRequestContextGetter* GetMediaRequestContextForRenderProcess(
38       int renderer_child_id) OVERRIDE;
39   virtual net::URLRequestContextGetter*
40       GetMediaRequestContextForStoragePartition(
41           const base::FilePath& partition_path,
42           bool in_memory) OVERRIDE;
43   virtual void RequestMidiSysExPermission(
44       int render_process_id,
45       int render_view_id,
46       int bridge_id,
47       const GURL& requesting_frame,
48       bool user_gesture,
49       const MidiSysExPermissionCallback& callback) OVERRIDE;
50   virtual void CancelMidiSysExPermissionRequest(
51         int render_process_id,
52         int render_view_id,
53         int bridge_id,
54         const GURL& requesting_frame) OVERRIDE;
55   virtual void RequestProtectedMediaIdentifierPermission(
56       int render_process_id,
57       int render_view_id,
58       int bridge_id,
59       int group_id,
60       const GURL& requesting_frame,
61       const ProtectedMediaIdentifierPermissionCallback& callback) OVERRIDE;
62   virtual void CancelProtectedMediaIdentifierPermissionRequests(
63       int group_id) OVERRIDE;
64   virtual ResourceContext* GetResourceContext() OVERRIDE;
65   virtual GeolocationPermissionContext*
66       GetGeolocationPermissionContext() OVERRIDE;
67   virtual content::BrowserPluginGuestManagerDelegate*
68       GetGuestManagerDelegate() OVERRIDE;
69   virtual quota::SpecialStoragePolicy* GetSpecialStoragePolicy() OVERRIDE;
70
71  private:
72   FRIEND_TEST_ALL_PREFIXES(DOMStorageTest, SessionOnly);
73   FRIEND_TEST_ALL_PREFIXES(DOMStorageTest, SaveSessionState);
74
75   scoped_refptr<net::URLRequestContextGetter> request_context_;
76   scoped_ptr<MockResourceContext> resource_context_;
77   base::ScopedTempDir browser_context_dir_;
78   scoped_refptr<quota::SpecialStoragePolicy> special_storage_policy_;
79
80   DISALLOW_COPY_AND_ASSIGN(TestBrowserContext);
81 };
82
83 }  // namespace content
84
85 #endif  // CONTENT_PUBLIC_TEST_TEST_BROWSER_CONTEXT_H_