browser_action_apitest.cc revision 5d1f7b1de12d16ceb2c938c56701a3e8bfa558f7
15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/ui/browser.h" 62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/ui/tabs/tab_strip_model.h" 75d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "extensions/browser/extension_system.h" 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Tests that tooltips of a browser action icon can be specified using UTF8. 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// See http://crbug.com/25349. 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, TitleLocalizationBrowserAction) { 122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) ExtensionService* service = extensions::ExtensionSystem::Get( 132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) browser()->profile())->extension_service(); 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const size_t size_before = service->extensions()->size(); 152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) base::FilePath extension_path(test_data_dir_.AppendASCII("browsertest") 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) .AppendASCII("title_localized")); 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const Extension* extension = LoadExtension(extension_path); 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ASSERT_TRUE(extension); 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ASSERT_EQ(size_before + 1, service->extensions()->size()); 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 225d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) EXPECT_STREQ(base::WideToUTF8( 235d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) L"Hreggvi\u00F0ur: l10n browser action").c_str(), 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) extension->description().c_str()); 255d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) EXPECT_STREQ(base::WideToUTF8(L"Hreggvi\u00F0ur is my name").c_str(), 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) extension->name().c_str()); 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int tab_id = ExtensionTabUtil::GetTabId( 282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) browser()->tab_strip_model()->GetActiveWebContents()); 295d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) EXPECT_STREQ(base::WideToUTF8(L"Hreggvi\u00F0ur").c_str(), 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) extension->browser_action()->GetTitle(tab_id).c_str()); 315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 32