| Index: ash/system/ime_menu/ime_menu_tray_unittest.cc
|
| diff --git a/ash/system/ime_menu/ime_menu_tray_unittest.cc b/ash/system/ime_menu/ime_menu_tray_unittest.cc
|
| index ceb41df42207c68d10db7764671ca9968df7ad03..61663037a726e9f102aea772f60fd9dc3bfd09ae 100644
|
| --- a/ash/system/ime_menu/ime_menu_tray_unittest.cc
|
| +++ b/ash/system/ime_menu/ime_menu_tray_unittest.cc
|
| @@ -7,6 +7,7 @@
|
| #include "ash/accelerators/accelerator_controller.h"
|
| #include "ash/accessibility_delegate.h"
|
| #include "ash/shell.h"
|
| +#include "ash/system/ime/ime_util.h"
|
| #include "ash/system/ime_menu/ime_list_view.h"
|
| #include "ash/system/status_area_widget.h"
|
| #include "ash/system/tray/ime_info.h"
|
| @@ -53,7 +54,9 @@ class TestInputMethodManager : public MockInputMethodManager {
|
|
|
| class ImeMenuTrayTest : public test::AshTestBase {
|
| public:
|
| - ImeMenuTrayTest() = default;
|
| + ImeMenuTrayTest()
|
| + : scoped_current_ime_(¤t_ime_),
|
| + scoped_available_ime_list_(&available_ime_list_) {}
|
| ~ImeMenuTrayTest() override = default;
|
|
|
| // test::AshTestBase:
|
| @@ -119,7 +122,19 @@ class ImeMenuTrayTest : public test::AshTestBase {
|
| ui::IMEBridge::Get()->SetCurrentInputContext(input_context);
|
| }
|
|
|
| + void SetCurrentIme(const IMEInfo& info) { current_ime_ = info; }
|
| +
|
| + void SetAvailableImeList(const std::vector<IMEInfo>& list) {
|
| + available_ime_list_ = list;
|
| + }
|
| +
|
| private:
|
| + IMEInfo current_ime_;
|
| + ime_util::ScopedCurrentImeForTesting scoped_current_ime_;
|
| +
|
| + std::vector<IMEInfo> available_ime_list_;
|
| + ime_util::ScopedAvailableImeListForTesting scoped_available_ime_list_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(ImeMenuTrayTest);
|
| };
|
|
|
| @@ -148,7 +163,7 @@ TEST_F(ImeMenuTrayTest, TrayLabelTest) {
|
| info1.short_name = UTF8ToUTF16("US");
|
| info1.third_party = false;
|
| info1.selected = true;
|
| - GetSystemTrayDelegate()->SetCurrentIME(info1);
|
| + SetCurrentIme(info1);
|
| Shell::Get()->system_tray_notifier()->NotifyRefreshIME();
|
| EXPECT_EQ(UTF8ToUTF16("US"), GetTrayText());
|
|
|
| @@ -160,7 +175,7 @@ TEST_F(ImeMenuTrayTest, TrayLabelTest) {
|
| info2.short_name = UTF8ToUTF16("UK");
|
| info2.third_party = true;
|
| info2.selected = true;
|
| - GetSystemTrayDelegate()->SetCurrentIME(info2);
|
| + SetCurrentIme(info2);
|
| Shell::Get()->system_tray_notifier()->NotifyRefreshIME();
|
| EXPECT_EQ(UTF8ToUTF16("UK*"), GetTrayText());
|
| }
|
| @@ -234,18 +249,20 @@ TEST_F(ImeMenuTrayTest, RefreshImeWithListViewCreated) {
|
| info3.third_party = false;
|
| info3.selected = false;
|
|
|
| - std::vector<IMEInfo> ime_info_list{info1, info2, info3};
|
| + std::vector<IMEInfo> ime_info_list = {info1, info2, info3};
|
|
|
| - GetSystemTrayDelegate()->SetAvailableIMEList(ime_info_list);
|
| - GetSystemTrayDelegate()->SetCurrentIME(info1);
|
| + // Simulate switch to IME 1.
|
| + SetAvailableImeList(ime_info_list);
|
| + SetCurrentIme(info1);
|
| Shell::Get()->system_tray_notifier()->NotifyRefreshIME();
|
| EXPECT_EQ(UTF8ToUTF16("US"), GetTrayText());
|
| EXPECT_TRUE(IsTrayImeListValid(ime_info_list, info1));
|
|
|
| + // Simulate switch to IME 3.
|
| ime_info_list[0].selected = false;
|
| ime_info_list[2].selected = true;
|
| - GetSystemTrayDelegate()->SetAvailableIMEList(ime_info_list);
|
| - GetSystemTrayDelegate()->SetCurrentIME(info3);
|
| + SetAvailableImeList(ime_info_list);
|
| + SetCurrentIme(info3);
|
| Shell::Get()->system_tray_notifier()->NotifyRefreshIME();
|
| EXPECT_EQ(UTF8ToUTF16("拼"), GetTrayText());
|
| EXPECT_TRUE(IsTrayImeListValid(ime_info_list, info3));
|
|
|