OLD | NEW |
| (Empty) |
1 // Copyright (c) 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_BROWSER_BROWSER_PLUGIN_TEST_BROWSER_PLUGIN_GUEST_MANAGER_H_ | |
6 #define CONTENT_BROWSER_BROWSER_PLUGIN_TEST_BROWSER_PLUGIN_GUEST_MANAGER_H_ | |
7 | |
8 #include "base/compiler_specific.h" | |
9 #include "base/gtest_prod_util.h" | |
10 #include "content/browser/browser_plugin/browser_plugin_guest_manager.h" | |
11 #include "content/public/test/test_utils.h" | |
12 | |
13 FORWARD_DECLARE_TEST(BrowserPluginHostTest, ReloadEmbedder); | |
14 | |
15 namespace content { | |
16 | |
17 class WebContentsImpl; | |
18 | |
19 // Test class for BrowserPluginGuestManager. | |
20 // | |
21 // Provides utilities to wait for certain state/messages in | |
22 // BrowserPluginGuestManager to be used in tests. | |
23 class TestBrowserPluginGuestManager : public BrowserPluginGuestManager { | |
24 public: | |
25 explicit TestBrowserPluginGuestManager(BrowserContext* context); | |
26 virtual ~TestBrowserPluginGuestManager(); | |
27 | |
28 // Overriden to intercept in test. | |
29 virtual BrowserPluginGuest* CreateGuest( | |
30 SiteInstance* embedder_site_instance, | |
31 int instance_id, | |
32 const std::string& storage_partition_id, | |
33 bool persist_storage, | |
34 scoped_ptr<base::DictionaryValue> extra_params) OVERRIDE; | |
35 | |
36 // Waits until at least one guest is added to the guest manager. | |
37 WebContents* WaitForGuestAdded(); | |
38 | |
39 private: | |
40 // BrowserPluginHostTest.ReloadEmbedder needs access to the GuestInstanceMap. | |
41 FRIEND_TEST_ALL_PREFIXES(BrowserPluginHostTest, ReloadEmbedder); | |
42 | |
43 WebContents* last_guest_added_; | |
44 scoped_refptr<MessageLoopRunner> message_loop_runner_; | |
45 DISALLOW_COPY_AND_ASSIGN(TestBrowserPluginGuestManager); | |
46 }; | |
47 | |
48 } // namespace content | |
49 | |
50 #endif // CONTENT_BROWSER_BROWSER_PLUGIN_TEST_BROWSER_PLUGIN_GUEST_MANAGER_H_ | |
OLD | NEW |