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

Unified Diff: chrome/browser/notifications/multi_user_notification_blocker_chromeos_unittest.cc

Issue 127423002: Supports window teleports for notifications. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix wallpaper private api test Created 6 years, 11 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/notifications/multi_user_notification_blocker_chromeos_unittest.cc
diff --git a/chrome/browser/notifications/multi_user_notification_blocker_chromeos_unittest.cc b/chrome/browser/notifications/multi_user_notification_blocker_chromeos_unittest.cc
deleted file mode 100644
index 964c50e4d9c39dd15978df56a04e763d877d1969..0000000000000000000000000000000000000000
--- a/chrome/browser/notifications/multi_user_notification_blocker_chromeos_unittest.cc
+++ /dev/null
@@ -1,257 +0,0 @@
-// Copyright 2013 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 "ash/shell.h"
-#include "ash/system/system_notifier.h"
-#include "ash/test/ash_test_base.h"
-#include "ash/test/test_shell_delegate.h"
-#include "chrome/browser/chromeos/login/fake_user_manager.h"
-#include "chrome/browser/notifications/multi_user_notification_blocker_chromeos.h"
-#include "chrome/browser/ui/ash/multi_user/multi_user_window_manager.h"
-#include "chrome/test/base/testing_browser_process.h"
-#include "chrome/test/base/testing_profile_manager.h"
-#include "ui/message_center/message_center.h"
-#include "ui/message_center/notification.h"
-
-namespace {
-
-// This value should be same as the one in fake_user_manager.cc
-static const char kUserIdHashSuffix[] = "-hash";
-
-}
-
-class MultiUserNotificationBlockerChromeOSTest
- : public ash::test::AshTestBase,
- public message_center::NotificationBlocker::Observer {
- public:
- MultiUserNotificationBlockerChromeOSTest()
- : state_changed_count_(0),
- is_logged_in_(false),
- testing_profile_manager_(TestingBrowserProcess::GetGlobal()) {}
- virtual ~MultiUserNotificationBlockerChromeOSTest() {}
-
- // ash::test::AshTestBase overrides:
- virtual void SetUp() OVERRIDE {
- ash::test::AshTestBase::SetUp();
- ASSERT_TRUE(testing_profile_manager_.SetUp());
-
- // Initialize the UserManager singleton to a fresh FakeUserManager instance.
- user_manager_enabler_.reset(
- new chromeos::ScopedUserManagerEnabler(new chromeos::FakeUserManager));
- blocker_.reset(new MultiUserNotificationBlockerChromeOS(
- message_center::MessageCenter::Get()));
- blocker_->AddObserver(this);
- }
-
- virtual void TearDown() OVERRIDE {
- blocker_->RemoveObserver(this);
- blocker_.reset();
- if (chrome::MultiUserWindowManager::GetInstance())
- chrome::MultiUserWindowManager::DeleteInstance();
- ash::test::AshTestBase::TearDown();
- }
-
- // message_center::NotificationBlocker::Observer ovverrides:
- virtual void OnBlockingStateChanged(
- message_center::NotificationBlocker* blocker) OVERRIDE {
- state_changed_count_++;
- }
-
- protected:
- void SetupMultiUserMode(bool enabled) {
- ash::test::TestShellDelegate* shell_delegate =
- static_cast<ash::test::TestShellDelegate*>(
- ash::Shell::GetInstance()->delegate());
- shell_delegate->set_multi_profiles_enabled(enabled);
- chrome::MultiUserWindowManager::CreateInstance();
- }
-
- void CreateProfile(const std::string& name) {
- testing_profile_manager_.CreateTestingProfile(name);
- GetFakeUserManager()->AddUser(name);
- GetFakeUserManager()->UserLoggedIn(name, name + kUserIdHashSuffix, false);
- if (!is_logged_in_) {
- SwitchActiveUser(name);
- is_logged_in_ = true;
- }
- }
-
- void SwitchActiveUser(const std::string& name) {
- GetFakeUserManager()->SwitchActiveUser(name);
- blocker_->ActiveUserChanged(GetFakeUserManager()->GetActiveUser());
- }
-
- int GetStateChangedCountAndReset() {
- int result = state_changed_count_;
- state_changed_count_ = 0;
- return result;
- }
-
- bool ShouldShowNotificationAsPopup(
- const message_center::NotifierId& notifier_id,
- const std::string profile_id) {
- message_center::NotifierId id_with_profile = notifier_id;
- id_with_profile.profile_id = profile_id;
- return blocker_->ShouldShowNotificationAsPopup(id_with_profile);
- }
-
- bool ShouldShowNotification(
- const message_center::NotifierId& notifier_id,
- const std::string profile_id) {
- message_center::NotifierId id_with_profile = notifier_id;
- id_with_profile.profile_id = profile_id;
- return blocker_->ShouldShowNotification(id_with_profile);
- }
-
- private:
- chromeos::FakeUserManager* GetFakeUserManager() {
- return static_cast<chromeos::FakeUserManager*>(
- chromeos::UserManager::Get());
- }
-
- int state_changed_count_;
- bool is_logged_in_;
- TestingProfileManager testing_profile_manager_;
- scoped_ptr<chromeos::ScopedUserManagerEnabler> user_manager_enabler_;
- scoped_ptr<MultiUserNotificationBlockerChromeOS> blocker_;
-
- DISALLOW_COPY_AND_ASSIGN(MultiUserNotificationBlockerChromeOSTest);
-};
-
-TEST_F(MultiUserNotificationBlockerChromeOSTest, Basic) {
- SetupMultiUserMode(true);
- ASSERT_EQ(chrome::MultiUserWindowManager::MULTI_PROFILE_MODE_SEPARATED,
- chrome::MultiUserWindowManager::GetMultiProfileMode());
-
- message_center::NotifierId notifier_id(
- message_center::NotifierId::APPLICATION, "test-app");
- // Only allowed the system notifier.
- message_center::NotifierId ash_system_notifier(
- message_center::NotifierId::SYSTEM_COMPONENT,
- ash::system_notifier::kNotifierDisplay);
- // Other system notifiers should be treated as same as a normal notifier.
- message_center::NotifierId random_system_notifier(
- message_center::NotifierId::SYSTEM_COMPONENT, "random_system_component");
-
- // Nothing is created, active_user_id_ should be empty.
- EXPECT_TRUE(ShouldShowNotificationAsPopup(notifier_id, ""));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(ash_system_notifier, ""));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(random_system_notifier, ""));
- EXPECT_TRUE(ShouldShowNotification(notifier_id, ""));
- EXPECT_TRUE(ShouldShowNotification(ash_system_notifier, ""));
- EXPECT_TRUE(ShouldShowNotification(random_system_notifier, ""));
-
- CreateProfile("test@example.com");
- EXPECT_EQ(1, GetStateChangedCountAndReset());
- EXPECT_FALSE(ShouldShowNotificationAsPopup(notifier_id, ""));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(ash_system_notifier, ""));
- EXPECT_FALSE(ShouldShowNotificationAsPopup(random_system_notifier, ""));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(notifier_id, "test@example.com"));
- EXPECT_FALSE(ShouldShowNotification(notifier_id, ""));
- EXPECT_TRUE(ShouldShowNotification(ash_system_notifier, ""));
- EXPECT_FALSE(ShouldShowNotification(random_system_notifier, ""));
- EXPECT_TRUE(ShouldShowNotification(notifier_id, "test@example.com"));
- EXPECT_TRUE(ShouldShowNotification(random_system_notifier,
- "test@example.com"));
-
- CreateProfile("test2@example.com");
- EXPECT_EQ(0, GetStateChangedCountAndReset());
- EXPECT_FALSE(ShouldShowNotificationAsPopup(notifier_id, ""));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(ash_system_notifier, ""));
- EXPECT_FALSE(ShouldShowNotificationAsPopup(random_system_notifier, ""));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(notifier_id, "test@example.com"));
- EXPECT_FALSE(ShouldShowNotificationAsPopup(notifier_id, "test2@example.com"));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(random_system_notifier,
- "test@example.com"));
- EXPECT_FALSE(ShouldShowNotificationAsPopup(random_system_notifier,
- "test2@example.com"));
- EXPECT_FALSE(ShouldShowNotification(notifier_id, ""));
- EXPECT_TRUE(ShouldShowNotification(ash_system_notifier, ""));
- EXPECT_FALSE(ShouldShowNotification(random_system_notifier, ""));
- EXPECT_TRUE(ShouldShowNotification(notifier_id, "test@example.com"));
- EXPECT_FALSE(ShouldShowNotification(notifier_id, "test2@example.com"));
- EXPECT_TRUE(ShouldShowNotification(random_system_notifier,
- "test@example.com"));
- EXPECT_FALSE(ShouldShowNotification(random_system_notifier,
- "test2@example.com"));
-
- SwitchActiveUser("test2@example.com");
- EXPECT_FALSE(ShouldShowNotificationAsPopup(notifier_id, ""));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(ash_system_notifier, ""));
- EXPECT_FALSE(ShouldShowNotificationAsPopup(random_system_notifier, ""));
- EXPECT_FALSE(ShouldShowNotificationAsPopup(notifier_id, "test@example.com"));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(notifier_id, "test2@example.com"));
- EXPECT_FALSE(ShouldShowNotificationAsPopup(random_system_notifier,
- "test@example.com"));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(random_system_notifier,
- "test2@example.com"));
- EXPECT_FALSE(ShouldShowNotification(notifier_id, ""));
- EXPECT_TRUE(ShouldShowNotification(ash_system_notifier, ""));
- EXPECT_FALSE(ShouldShowNotification(random_system_notifier, ""));
- EXPECT_FALSE(ShouldShowNotification(notifier_id, "test@example.com"));
- EXPECT_TRUE(ShouldShowNotification(notifier_id, "test2@example.com"));
- EXPECT_FALSE(ShouldShowNotification(random_system_notifier,
- "test@example.com"));
- EXPECT_TRUE(ShouldShowNotification(random_system_notifier,
- "test2@example.com"));
-
- SwitchActiveUser("test@example.com");
- EXPECT_FALSE(ShouldShowNotificationAsPopup(notifier_id, ""));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(ash_system_notifier, ""));
- EXPECT_FALSE(ShouldShowNotificationAsPopup(random_system_notifier, ""));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(notifier_id, "test@example.com"));
- EXPECT_FALSE(ShouldShowNotificationAsPopup(notifier_id, "test2@example.com"));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(random_system_notifier,
- "test@example.com"));
- EXPECT_FALSE(ShouldShowNotificationAsPopup(random_system_notifier,
- "test2@example.com"));
- EXPECT_FALSE(ShouldShowNotification(notifier_id, ""));
- EXPECT_TRUE(ShouldShowNotification(ash_system_notifier, ""));
- EXPECT_FALSE(ShouldShowNotification(random_system_notifier, ""));
- EXPECT_TRUE(ShouldShowNotification(notifier_id, "test@example.com"));
- EXPECT_FALSE(ShouldShowNotification(notifier_id, "test2@example.com"));
- EXPECT_TRUE(ShouldShowNotification(random_system_notifier,
- "test@example.com"));
- EXPECT_FALSE(ShouldShowNotification(random_system_notifier,
- "test2@example.com"));
-}
-
-TEST_F(MultiUserNotificationBlockerChromeOSTest, SingleUser) {
- SetupMultiUserMode(false);
- ASSERT_EQ(chrome::MultiUserWindowManager::MULTI_PROFILE_MODE_OFF,
- chrome::MultiUserWindowManager::GetMultiProfileMode());
-
- message_center::NotifierId notifier_id(
- message_center::NotifierId::APPLICATION, "test-app");
- // Only allowed the system notifier.
- message_center::NotifierId ash_system_notifier(
- message_center::NotifierId::SYSTEM_COMPONENT,
- ash::system_notifier::kNotifierDisplay);
- // Other system notifiers should be treated as same as a normal notifier.
- message_center::NotifierId random_system_notifier(
- message_center::NotifierId::SYSTEM_COMPONENT, "random_system_component");
-
- // Nothing is created, active_user_id_ should be empty.
- EXPECT_TRUE(ShouldShowNotificationAsPopup(notifier_id, ""));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(ash_system_notifier, ""));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(random_system_notifier, ""));
- EXPECT_TRUE(ShouldShowNotification(notifier_id, ""));
- EXPECT_TRUE(ShouldShowNotification(ash_system_notifier, ""));
- EXPECT_TRUE(ShouldShowNotification(random_system_notifier, ""));
-
- CreateProfile("test@example.com");
- EXPECT_EQ(1, GetStateChangedCountAndReset());
- EXPECT_TRUE(ShouldShowNotificationAsPopup(notifier_id, ""));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(ash_system_notifier, ""));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(random_system_notifier, ""));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(notifier_id, "test@example.com"));
- EXPECT_TRUE(ShouldShowNotificationAsPopup(random_system_notifier,
- "test@example.com"));
- EXPECT_TRUE(ShouldShowNotification(notifier_id, ""));
- EXPECT_TRUE(ShouldShowNotification(ash_system_notifier, ""));
- EXPECT_TRUE(ShouldShowNotification(random_system_notifier, ""));
- EXPECT_TRUE(ShouldShowNotification(notifier_id, "test@example.com"));
- EXPECT_TRUE(ShouldShowNotification(random_system_notifier,
- "test@example.com"));
-}

Powered by Google App Engine
This is Rietveld 408576698