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

Unified Diff: athena/home/home_card_unittest.cc

Issue 408623003: Minimize HomeCard if the user opens something in the home card. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix Created 6 years, 5 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
« no previous file with comments | « athena/home/home_card_impl.cc ('k') | athena/home/public/home_card.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: athena/home/home_card_unittest.cc
diff --git a/athena/home/home_card_unittest.cc b/athena/home/home_card_unittest.cc
new file mode 100644
index 0000000000000000000000000000000000000000..465cba3c69218a8daee0021b9793d9b91bc15271
--- /dev/null
+++ b/athena/home/home_card_unittest.cc
@@ -0,0 +1,65 @@
+// Copyright 2014 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 "athena/home/public/home_card.h"
+
+#include "athena/activity/public/activity_factory.h"
+#include "athena/activity/public/activity_manager.h"
+#include "athena/test/athena_test_base.h"
+#include "athena/wm/public/window_manager.h"
+
+namespace athena {
+
+typedef test::AthenaTestBase HomeCardTest;
+
+TEST_F(HomeCardTest, BasicTransition) {
+ EXPECT_EQ(HomeCard::VISIBLE_MINIMIZED, HomeCard::Get()->GetState());
+
+ WindowManager::GetInstance()->ToggleOverview();
+ EXPECT_EQ(HomeCard::VISIBLE_BOTTOM, HomeCard::Get()->GetState());
+
+ WindowManager::GetInstance()->ToggleOverview();
+ EXPECT_EQ(HomeCard::VISIBLE_MINIMIZED, HomeCard::Get()->GetState());
+}
+
+TEST_F(HomeCardTest, VirtualKeyboardTransition) {
+ // Minimized -> Hidden for virtual keyboard.
+ EXPECT_EQ(HomeCard::VISIBLE_MINIMIZED, HomeCard::Get()->GetState());
+ const gfx::Rect vk_bounds(0, 0, 100, 100);
+ HomeCard::Get()->UpdateVirtualKeyboardBounds(vk_bounds);
+ EXPECT_EQ(HomeCard::HIDDEN, HomeCard::Get()->GetState());
+ HomeCard::Get()->UpdateVirtualKeyboardBounds(gfx::Rect());
+ EXPECT_EQ(HomeCard::VISIBLE_MINIMIZED, HomeCard::Get()->GetState());
+
+ // bottom -> centered for virtual keyboard.
+ WindowManager::GetInstance()->ToggleOverview();
+ EXPECT_EQ(HomeCard::VISIBLE_BOTTOM, HomeCard::Get()->GetState());
+ HomeCard::Get()->UpdateVirtualKeyboardBounds(vk_bounds);
+ EXPECT_EQ(HomeCard::VISIBLE_CENTERED, HomeCard::Get()->GetState());
+ HomeCard::Get()->UpdateVirtualKeyboardBounds(gfx::Rect());
+ EXPECT_EQ(HomeCard::VISIBLE_BOTTOM, HomeCard::Get()->GetState());
+
+ // Overview mode has to finish before ending test, otherwise it crashes.
+ // TODO(mukai): fix this.
+ WindowManager::GetInstance()->ToggleOverview();
+}
+
+// Verify if the home card is correctly minimized after app launch.
+TEST_F(HomeCardTest, AppSelection) {
+ EXPECT_EQ(HomeCard::VISIBLE_MINIMIZED, HomeCard::Get()->GetState());
+
+ WindowManager::GetInstance()->ToggleOverview();
+ EXPECT_EQ(HomeCard::VISIBLE_BOTTOM, HomeCard::Get()->GetState());
+
+ athena::ActivityManager::Get()->AddActivity(
+ athena::ActivityFactory::Get()->CreateWebActivity(
+ NULL, GURL("http://www.google.com/")));
+ EXPECT_EQ(HomeCard::VISIBLE_MINIMIZED, HomeCard::Get()->GetState());
+
+ // Overview mode has to finish before ending test, otherwise it crashes.
+ // TODO(mukai): fix this.
+ WindowManager::GetInstance()->ToggleOverview();
+}
+
+} // namespace athena
« no previous file with comments | « athena/home/home_card_impl.cc ('k') | athena/home/public/home_card.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698