| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <stddef.h> | 5 #include <stddef.h> |
| 6 | 6 |
| 7 #include "base/values.h" | 7 #include "base/values.h" |
| 8 #include "build/build_config.h" | 8 #include "build/build_config.h" |
| 9 #include "chrome/browser/extensions/api/tabs/tabs_api.h" | 9 #include "chrome/browser/extensions/api/tabs/tabs_api.h" |
| 10 #include "chrome/browser/extensions/api/tabs/tabs_constants.h" | 10 #include "chrome/browser/extensions/api/tabs/tabs_constants.h" |
| (...skipping 27 matching lines...) Expand all Loading... |
| 38 // Note that "last focused" means the "top" most window. | 38 // Note that "last focused" means the "top" most window. |
| 39 Browser* new_browser = CreateBrowser(browser()->profile()); | 39 Browser* new_browser = CreateBrowser(browser()->profile()); |
| 40 int focused_window_id = | 40 int focused_window_id = |
| 41 extensions::ExtensionTabUtil::GetWindowId(new_browser); | 41 extensions::ExtensionTabUtil::GetWindowId(new_browser); |
| 42 | 42 |
| 43 scoped_refptr<extensions::WindowsGetLastFocusedFunction> function = | 43 scoped_refptr<extensions::WindowsGetLastFocusedFunction> function = |
| 44 new extensions::WindowsGetLastFocusedFunction(); | 44 new extensions::WindowsGetLastFocusedFunction(); |
| 45 scoped_refptr<extensions::Extension> extension( | 45 scoped_refptr<extensions::Extension> extension( |
| 46 extensions::test_util::CreateEmptyExtension()); | 46 extensions::test_util::CreateEmptyExtension()); |
| 47 function->set_extension(extension.get()); | 47 function->set_extension(extension.get()); |
| 48 scoped_ptr<base::DictionaryValue> result(utils::ToDictionary( | 48 std::unique_ptr<base::DictionaryValue> result( |
| 49 utils::RunFunctionAndReturnSingleResult(function.get(), | 49 utils::ToDictionary(utils::RunFunctionAndReturnSingleResult( |
| 50 "[]", | 50 function.get(), "[]", new_browser))); |
| 51 new_browser))); | |
| 52 | 51 |
| 53 // The id should always match the last focused window and does not depend | 52 // The id should always match the last focused window and does not depend |
| 54 // on what was passed to RunFunctionAndReturnSingleResult. | 53 // on what was passed to RunFunctionAndReturnSingleResult. |
| 55 EXPECT_EQ(focused_window_id, api_test_utils::GetInteger(result.get(), "id")); | 54 EXPECT_EQ(focused_window_id, api_test_utils::GetInteger(result.get(), "id")); |
| 56 base::ListValue* tabs = NULL; | 55 base::ListValue* tabs = NULL; |
| 57 EXPECT_FALSE(result.get()->GetList(keys::kTabsKey, &tabs)); | 56 EXPECT_FALSE(result.get()->GetList(keys::kTabsKey, &tabs)); |
| 58 | 57 |
| 59 function = new extensions::WindowsGetLastFocusedFunction(); | 58 function = new extensions::WindowsGetLastFocusedFunction(); |
| 60 function->set_extension(extension.get()); | 59 function->set_extension(extension.get()); |
| 61 result.reset(utils::ToDictionary( | 60 result.reset(utils::ToDictionary( |
| (...skipping 27 matching lines...) Expand all Loading... |
| 89 | 88 |
| 90 GURL url; | 89 GURL url; |
| 91 AddTabAtIndexToBrowser(focused_window, 0, url, ui::PAGE_TRANSITION_LINK, | 90 AddTabAtIndexToBrowser(focused_window, 0, url, ui::PAGE_TRANSITION_LINK, |
| 92 true); | 91 true); |
| 93 int focused_window_id = | 92 int focused_window_id = |
| 94 extensions::ExtensionTabUtil::GetWindowId(focused_window); | 93 extensions::ExtensionTabUtil::GetWindowId(focused_window); |
| 95 | 94 |
| 96 // Get tabs in the 'last focused' window called from non-focused browser. | 95 // Get tabs in the 'last focused' window called from non-focused browser. |
| 97 scoped_refptr<extensions::TabsQueryFunction> function = | 96 scoped_refptr<extensions::TabsQueryFunction> function = |
| 98 new extensions::TabsQueryFunction(); | 97 new extensions::TabsQueryFunction(); |
| 99 scoped_ptr<base::ListValue> result(utils::ToList( | 98 std::unique_ptr<base::ListValue> result( |
| 100 utils::RunFunctionAndReturnSingleResult(function.get(), | 99 utils::ToList(utils::RunFunctionAndReturnSingleResult( |
| 101 "[{\"lastFocusedWindow\":true}]", | 100 function.get(), "[{\"lastFocusedWindow\":true}]", browser()))); |
| 102 browser()))); | |
| 103 | 101 |
| 104 base::ListValue* result_tabs = result.get(); | 102 base::ListValue* result_tabs = result.get(); |
| 105 // We should have one initial tab and one added tab. | 103 // We should have one initial tab and one added tab. |
| 106 EXPECT_EQ(2u, result_tabs->GetSize()); | 104 EXPECT_EQ(2u, result_tabs->GetSize()); |
| 107 for (size_t i = 0; i < result_tabs->GetSize(); ++i) { | 105 for (size_t i = 0; i < result_tabs->GetSize(); ++i) { |
| 108 base::DictionaryValue* result_tab = NULL; | 106 base::DictionaryValue* result_tab = NULL; |
| 109 EXPECT_TRUE(result_tabs->GetDictionary(i, &result_tab)); | 107 EXPECT_TRUE(result_tabs->GetDictionary(i, &result_tab)); |
| 110 EXPECT_EQ(focused_window_id, | 108 EXPECT_EQ(focused_window_id, |
| 111 api_test_utils::GetInteger(result_tab, keys::kWindowIdKey)); | 109 api_test_utils::GetInteger(result_tab, keys::kWindowIdKey)); |
| 112 } | 110 } |
| (...skipping 17 matching lines...) Expand all Loading... |
| 130 } | 128 } |
| 131 | 129 |
| 132 #if defined(OS_WIN) // http://crbug.com/154081 && http://crbug.com/171080 | 130 #if defined(OS_WIN) // http://crbug.com/154081 && http://crbug.com/171080 |
| 133 #define MAYBE_TabCurrentWindow DISABLED_TabCurrentWindow | 131 #define MAYBE_TabCurrentWindow DISABLED_TabCurrentWindow |
| 134 #else | 132 #else |
| 135 #define MAYBE_TabCurrentWindow TabCurrentWindow | 133 #define MAYBE_TabCurrentWindow TabCurrentWindow |
| 136 #endif | 134 #endif |
| 137 IN_PROC_BROWSER_TEST_F(ExtensionApiTest, MAYBE_TabCurrentWindow) { | 135 IN_PROC_BROWSER_TEST_F(ExtensionApiTest, MAYBE_TabCurrentWindow) { |
| 138 ASSERT_TRUE(RunExtensionTest("tabs/current_window")) << message_; | 136 ASSERT_TRUE(RunExtensionTest("tabs/current_window")) << message_; |
| 139 } | 137 } |
| OLD | NEW |