Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2844)

Unified Diff: chrome/browser/chromeos/input_method/input_method_manager_impl_unittest.cc

Issue 2953033002: Hide handwriting and voice buttons when keyboard is in restricted state (Closed)
Patch Set: Add InputMethodManager::FeaturesRestrictedState Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/input_method/input_method_manager_impl_unittest.cc
diff --git a/chrome/browser/chromeos/input_method/input_method_manager_impl_unittest.cc b/chrome/browser/chromeos/input_method/input_method_manager_impl_unittest.cc
index 3e657f07336b6bdd8e1f1bf5a2e6bd1bc87aa319..d4c4efb8ecc0589538f615952d9d8b7f107917b1 100644
--- a/chrome/browser/chromeos/input_method/input_method_manager_impl_unittest.cc
+++ b/chrome/browser/chromeos/input_method/input_method_manager_impl_unittest.cc
@@ -153,6 +153,7 @@ class TestCandidateWindowObserver
private:
DISALLOW_COPY_AND_ASSIGN(TestCandidateWindowObserver);
};
+
} // namespace
class InputMethodManagerImplTest : public BrowserWithTestWindowTest {
@@ -1645,5 +1646,101 @@ TEST_F(InputMethodManagerImplTest, IntegrationWithAsh) {
EXPECT_EQ(ImeIdFromEngineId(ids[1]), ime_controller.current_ime_id_);
}
+TEST_F(InputMethodManagerImplTest, SetOneFeatureRestrictedState) {
+ ASSERT_EQ(InputMethodManager::FeaturesRestrictedState::RESTRICTED_NONE,
James Cook 2017/06/26 17:21:19 nit: EXPECT_EQ here and below (unless the test wil
Azure Wei 2017/06/27 14:27:15 Done.
+ manager_->GetFeaturesRestrictedState());
+
+ // Sets emoji restricted and not restricted
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_EMOJI, true);
+ ASSERT_EQ(InputMethodManager::FeaturesRestrictedState::RESTRICTED_EMOJI,
+ manager_->GetFeaturesRestrictedState());
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_EMOJI, false);
+ ASSERT_EQ(InputMethodManager::FeaturesRestrictedState::RESTRICTED_NONE,
+ manager_->GetFeaturesRestrictedState());
+
+ // Sets voice restricted and not restricted
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_VOICE, true);
+ ASSERT_EQ(InputMethodManager::FeaturesRestrictedState::RESTRICTED_VOICE,
+ manager_->GetFeaturesRestrictedState());
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_VOICE, false);
+ ASSERT_EQ(InputMethodManager::FeaturesRestrictedState::RESTRICTED_NONE,
+ manager_->GetFeaturesRestrictedState());
+
+ // Sets handwriting restricted and not restricted
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_HANDWRITING,
+ true);
+ ASSERT_EQ(InputMethodManager::FeaturesRestrictedState::RESTRICTED_HANDWRITING,
+ manager_->GetFeaturesRestrictedState());
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_HANDWRITING,
+ false);
+ ASSERT_EQ(InputMethodManager::FeaturesRestrictedState::RESTRICTED_NONE,
+ manager_->GetFeaturesRestrictedState());
+}
+
+TEST_F(InputMethodManagerImplTest, SetMoreThanOneFeaturesRestrictedState) {
+ ASSERT_EQ(InputMethodManager::FeaturesRestrictedState::RESTRICTED_NONE,
+ manager_->GetFeaturesRestrictedState());
+
+ // Sets emoji and voice restricted
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_EMOJI, true);
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_VOICE, true);
+ uint32_t emojiAndVoice =
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_EMOJI |
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_VOICE;
+ ASSERT_EQ(emojiAndVoice, manager_->GetFeaturesRestrictedState());
+
+ // Sets emoji not restricted
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_EMOJI, false);
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_VOICE, true);
+ ASSERT_EQ(InputMethodManager::FeaturesRestrictedState::RESTRICTED_VOICE,
+ manager_->GetFeaturesRestrictedState());
+
+ // Sets voice not restricted
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_VOICE, false);
+ ASSERT_EQ(InputMethodManager::FeaturesRestrictedState::RESTRICTED_NONE,
+ manager_->GetFeaturesRestrictedState());
+}
+
+TEST_F(InputMethodManagerImplTest, SetAllFeaturesRestrictedState) {
+ ASSERT_EQ(InputMethodManager::FeaturesRestrictedState::RESTRICTED_NONE,
+ manager_->GetFeaturesRestrictedState());
+
+ // Sets all restricted
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_EMOJI, true);
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_VOICE, true);
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_HANDWRITING,
+ true);
+ uint32_t allRestricted =
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_EMOJI |
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_VOICE |
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_HANDWRITING;
+ ASSERT_EQ(allRestricted, manager_->GetFeaturesRestrictedState());
+
+ // Sets all not restricted
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_EMOJI, false);
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_VOICE, false);
+ manager_->SetFeaturesRestrictedState(
+ InputMethodManager::FeaturesRestrictedState::RESTRICTED_HANDWRITING,
+ false);
+ ASSERT_EQ(InputMethodManager::FeaturesRestrictedState::RESTRICTED_NONE,
+ manager_->GetFeaturesRestrictedState());
+}
+
} // namespace input_method
} // namespace chromeos

Powered by Google App Engine
This is Rietveld 408576698