| 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
|
|
|