Chromium Code Reviews| Index: chrome/browser/extensions/api/tabs/tabs_api_unittest.cc |
| diff --git a/chrome/browser/extensions/api/tabs/tabs_api_unittest.cc b/chrome/browser/extensions/api/tabs/tabs_api_unittest.cc |
| index 506cc9455b791173a02f167bbe1bbb4b32eccee0..5654ec9d5eb4e6a08a738af6e0f883cb6320f466 100644 |
| --- a/chrome/browser/extensions/api/tabs/tabs_api_unittest.cc |
| +++ b/chrome/browser/extensions/api/tabs/tabs_api_unittest.cc |
| @@ -5,6 +5,7 @@ |
| #include "base/strings/stringprintf.h" |
| #include "base/strings/utf_string_conversions.h" |
| #include "chrome/browser/extensions/api/tabs/tabs_api.h" |
| +#include "chrome/browser/extensions/api/tabs/tabs_constants.h" |
| #include "chrome/browser/extensions/extension_function_test_utils.h" |
| #include "chrome/browser/extensions/extension_service_test_base.h" |
| #include "chrome/browser/extensions/extension_tab_util.h" |
| @@ -270,4 +271,20 @@ TEST_F(TabsApiUnitTest, PDFExtensionNavigation) { |
| base::RunLoop().RunUntilIdle(); |
| } |
| +// Tests that non-validation failure in tabs.executeScript results in error, and |
| +// not bad_message. |
| +// Regression test for https://crbug.com/642794. |
| +TEST_F(TabsApiUnitTest, ExecuteScriptNoTabIsNonFatalError) { |
| + scoped_refptr<const Extension> extension = test_util::CreateEmptyExtension(); |
|
Devlin
2017/01/17 18:52:09
nit: it seems like this could pretty easily break
lazyboy
2017/01/18 02:29:10
Done.
|
| + scoped_refptr<TabsExecuteScriptFunction> function( |
| + new TabsExecuteScriptFunction()); |
| + function->set_extension(extension); |
| + const char* kArgs = "[\"\", {\"code\": \"\"}]"; |
| + std::string error = extension_function_test_utils::RunFunctionAndReturnError( |
| + function.get(), kArgs, |
| + browser(), // browser() doesn't have any tabs. |
| + extension_function_test_utils::NONE); |
| + EXPECT_EQ(tabs_constants::kNoTabInBrowserWindowError, error); |
| +} |
| + |
| } // namespace extensions |