Make sure webrtc::VideoSourceInterface is released on the main render thread.
[chromium-blink-merge.git] / content / public / test / test_browser_context.h
blobea2f5f2716692cfc06ad4256dd4e1ecba83b54e9
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.
5 #ifndef CONTENT_PUBLIC_TEST_TEST_BROWSER_CONTEXT_H_
6 #define CONTENT_PUBLIC_TEST_TEST_BROWSER_CONTEXT_H_
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"
16 namespace content {
17 class MockResourceContext;
19 class TestBrowserContext : public BrowserContext {
20 public:
21 TestBrowserContext();
22 virtual ~TestBrowserContext();
24 // Takes ownership of the temporary directory so that it's not deleted when
25 // this object is destructed.
26 base::FilePath TakePath();
28 void SetSpecialStoragePolicy(quota::SpecialStoragePolicy* policy);
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;
71 private:
72 FRIEND_TEST_ALL_PREFIXES(DOMStorageTest, SessionOnly);
73 FRIEND_TEST_ALL_PREFIXES(DOMStorageTest, SaveSessionState);
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_;
80 DISALLOW_COPY_AND_ASSIGN(TestBrowserContext);
83 } // namespace content
85 #endif // CONTENT_PUBLIC_TEST_TEST_BROWSER_CONTEXT_H_