| Index: chrome/browser/chromeos/dom_ui/language_options_handler_unittest.cc
|
| ===================================================================
|
| --- chrome/browser/chromeos/dom_ui/language_options_handler_unittest.cc (revision 71729)
|
| +++ chrome/browser/chromeos/dom_ui/language_options_handler_unittest.cc (working copy)
|
| @@ -1,173 +0,0 @@
|
| -// Copyright (c) 2010 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "chrome/browser/chromeos/dom_ui/language_options_handler.h"
|
| -
|
| -#include <string>
|
| -
|
| -#include "base/scoped_ptr.h"
|
| -#include "base/values.h"
|
| -#include "chrome/browser/chromeos/cros/cros_library.h"
|
| -#include "chrome/browser/chromeos/cros/input_method_library.h"
|
| -#include "testing/gtest/include/gtest/gtest.h"
|
| -
|
| -namespace chromeos {
|
| -
|
| -static InputMethodDescriptors CreateInputMethodDescriptors() {
|
| - InputMethodDescriptors descriptors;
|
| - descriptors.push_back(
|
| - InputMethodDescriptor("xkb:us::eng", "USA", "us", "eng"));
|
| - descriptors.push_back(
|
| - InputMethodDescriptor("xkb:fr::fra", "France", "fr", "fra"));
|
| - descriptors.push_back(
|
| - InputMethodDescriptor("xkb:be::fra", "Belgium", "be", "fr"));
|
| - descriptors.push_back(
|
| - InputMethodDescriptor("mozc", "Mozc (US keyboard layout)", "us", "ja"));
|
| - return descriptors;
|
| -}
|
| -
|
| -TEST(LanguageOptionsHandlerTest, GetInputMethodList) {
|
| - // Use the stub libcros. The object will take care of the cleanup.
|
| - ScopedStubCrosEnabler stub_cros_enabler;
|
| -
|
| - // Reset the library implementation so it will be initialized
|
| - // again. Otherwise, non-stub implementation can be reused, if it's
|
| - // already initialized elsewhere, which results in a crash.
|
| - CrosLibrary::Get()->GetTestApi()->SetInputMethodLibrary(NULL, false);
|
| -
|
| - InputMethodDescriptors descriptors = CreateInputMethodDescriptors();
|
| - scoped_ptr<ListValue> list(
|
| - LanguageOptionsHandler::GetInputMethodList(descriptors));
|
| - ASSERT_EQ(4U, list->GetSize());
|
| -
|
| - DictionaryValue* entry = NULL;
|
| - DictionaryValue *language_code_set = NULL;
|
| - std::string input_method_id;
|
| - std::string display_name;
|
| - std::string language_code;
|
| -
|
| - // As shown below, the list should be input method ids should appear in
|
| - // the same order of the descriptors.
|
| - ASSERT_TRUE(list->GetDictionary(0, &entry));
|
| - ASSERT_TRUE(entry->GetString("id", &input_method_id));
|
| - ASSERT_TRUE(entry->GetString("displayName", &display_name));
|
| - ASSERT_TRUE(entry->GetDictionary("languageCodeSet", &language_code_set));
|
| - EXPECT_EQ("xkb:us::eng", input_method_id);
|
| - // Commented out as it depends on translation in generated_resources.grd
|
| - // (i.e. makes the test fragile).
|
| - // EXPECT_EQ("English (USA) keyboard layout", display_name);
|
| - ASSERT_TRUE(language_code_set->HasKey("en-US"));
|
| - ASSERT_TRUE(language_code_set->HasKey("id")); // From kExtraLanguages.
|
| - ASSERT_TRUE(language_code_set->HasKey("fil")); // From kExtraLanguages.
|
| -
|
| - ASSERT_TRUE(list->GetDictionary(1, &entry));
|
| - ASSERT_TRUE(entry->GetString("id", &input_method_id));
|
| - ASSERT_TRUE(entry->GetString("displayName", &display_name));
|
| - ASSERT_TRUE(entry->GetDictionary("languageCodeSet", &language_code_set));
|
| - EXPECT_EQ("xkb:fr::fra", input_method_id);
|
| - // Commented out. See above.
|
| - // EXPECT_EQ("French keyboard layout", display_name);
|
| - ASSERT_TRUE(language_code_set->HasKey("fr"));
|
| -
|
| - ASSERT_TRUE(list->GetDictionary(2, &entry));
|
| - ASSERT_TRUE(entry->GetString("id", &input_method_id));
|
| - ASSERT_TRUE(entry->GetString("displayName", &display_name));
|
| - ASSERT_TRUE(entry->GetDictionary("languageCodeSet", &language_code_set));
|
| - EXPECT_EQ("xkb:be::fra", input_method_id);
|
| - // Commented out. See above.
|
| - // EXPECT_EQ("Belgian keyboard layout", display_name);
|
| - ASSERT_TRUE(language_code_set->HasKey("fr"));
|
| -
|
| - ASSERT_TRUE(list->GetDictionary(3, &entry));
|
| - ASSERT_TRUE(entry->GetString("id", &input_method_id));
|
| - ASSERT_TRUE(entry->GetString("displayName", &display_name));
|
| - ASSERT_TRUE(entry->GetDictionary("languageCodeSet", &language_code_set));
|
| - EXPECT_EQ("mozc", input_method_id);
|
| - // Commented out. See above.
|
| - // EXPECT_EQ("Japanese input method (for US keyboard)", display_name);
|
| - ASSERT_TRUE(language_code_set->HasKey("ja"));
|
| -}
|
| -
|
| -TEST(LanguageOptionsHandlerTest, GetLanguageList) {
|
| - InputMethodDescriptors descriptors = CreateInputMethodDescriptors();
|
| - scoped_ptr<ListValue> list(
|
| - LanguageOptionsHandler::GetLanguageList(descriptors));
|
| - ASSERT_EQ(6U, list->GetSize());
|
| -
|
| - DictionaryValue* entry = NULL;
|
| - std::string language_code;
|
| - std::string display_name;
|
| - std::string native_display_name;
|
| -
|
| - // As shown below, the list should be sorted by the display names,
|
| - // and these names should not have duplicates.
|
| - ASSERT_TRUE(list->GetDictionary(0, &entry));
|
| - ASSERT_TRUE(entry->GetString("code", &language_code));
|
| - ASSERT_TRUE(entry->GetString("displayName", &display_name));
|
| - ASSERT_TRUE(entry->GetString("nativeDisplayName", &native_display_name));
|
| - EXPECT_EQ("en-US", language_code);
|
| - EXPECT_EQ("English (United States)", display_name);
|
| - EXPECT_EQ("English (United States)", native_display_name);
|
| -
|
| - // This comes from kExtraLanguages.
|
| - ASSERT_TRUE(list->GetDictionary(1, &entry));
|
| - ASSERT_TRUE(entry->GetString("code", &language_code));
|
| - ASSERT_TRUE(entry->GetString("displayName", &display_name));
|
| - ASSERT_TRUE(entry->GetString("nativeDisplayName", &native_display_name));
|
| - EXPECT_EQ("fil", language_code);
|
| - EXPECT_EQ("Filipino", display_name);
|
| - EXPECT_EQ("Filipino", native_display_name);
|
| -
|
| - ASSERT_TRUE(list->GetDictionary(2, &entry));
|
| - ASSERT_TRUE(entry->GetString("code", &language_code));
|
| - ASSERT_TRUE(entry->GetString("displayName", &display_name));
|
| - ASSERT_TRUE(entry->GetString("nativeDisplayName", &native_display_name));
|
| - EXPECT_EQ("fr", language_code);
|
| - EXPECT_EQ("French", display_name);
|
| - EXPECT_EQ("fran\u00E7ais", native_display_name);
|
| -
|
| - // This comes from kExtraLanguages.
|
| - ASSERT_TRUE(list->GetDictionary(3, &entry));
|
| - ASSERT_TRUE(entry->GetString("code", &language_code));
|
| - ASSERT_TRUE(entry->GetString("displayName", &display_name));
|
| - ASSERT_TRUE(entry->GetString("nativeDisplayName", &native_display_name));
|
| - EXPECT_EQ("id", language_code);
|
| - EXPECT_EQ("Indonesian", display_name);
|
| - EXPECT_EQ("Bahasa Indonesia", native_display_name);
|
| -
|
| - ASSERT_TRUE(list->GetDictionary(4, &entry));
|
| - ASSERT_TRUE(entry->GetString("code", &language_code));
|
| - ASSERT_TRUE(entry->GetString("displayName", &display_name));
|
| - ASSERT_TRUE(entry->GetString("nativeDisplayName", &native_display_name));
|
| - EXPECT_EQ("ja", language_code);
|
| - EXPECT_EQ("Japanese", display_name);
|
| - EXPECT_EQ("\u65E5\u672C\u8A9E", native_display_name);
|
| -
|
| - // This comes from kExtraLanguages.
|
| - ASSERT_TRUE(list->GetDictionary(5, &entry));
|
| - ASSERT_TRUE(entry->GetString("code", &language_code));
|
| - ASSERT_TRUE(entry->GetString("displayName", &display_name));
|
| - ASSERT_TRUE(entry->GetString("nativeDisplayName", &native_display_name));
|
| - EXPECT_EQ("es-419", language_code);
|
| - EXPECT_EQ("Spanish (Latin America and the Caribbean)", display_name);
|
| - EXPECT_EQ("espa\u00F1ol (Latinoam\u00E9rica y el Caribe)",
|
| - native_display_name);
|
| -}
|
| -
|
| -TEST(LanguageOptionsHandlerTest, GetUiLanguageCodeSet) {
|
| - scoped_ptr<DictionaryValue> dictionary(
|
| - LanguageOptionsHandler::GetUiLanguageCodeSet());
|
| - EXPECT_TRUE(dictionary->HasKey("en-US"));
|
| - // Note that we don't test a false case, as such an expectation will
|
| - // fail when we add support for the language.
|
| - // EXPECT_FALSE(dictionary->HasKey("no"));
|
| -}
|
| -
|
| -TEST(LanguageOptionsHandlerTest, GetSpellCheckLanguageCodeSet) {
|
| - scoped_ptr<DictionaryValue> dictionary(
|
| - LanguageOptionsHandler::GetSpellCheckLanguageCodeSet());
|
| - EXPECT_TRUE(dictionary->HasKey("en-US"));
|
| -}
|
| -
|
| -} // namespace chromeos
|
|
|