#include "ash/system/tray/system_tray.h"
#include "ash/system/tray_accessibility.h"
#include "ash/system/user/login_status.h"
+#include "ash/test/shell_test_api.h"
+#include "ash/test/test_session_state_delegate.h"
#include "base/callback.h"
#include "base/command_line.h"
#include "base/prefs/pref_service.h"
#include "chrome/browser/chromeos/login/helper.h"
#include "chrome/browser/chromeos/login/login_utils.h"
#include "chrome/browser/chromeos/login/startup_utils.h"
-#include "chrome/browser/chromeos/login/users/user_manager.h"
-#include "chrome/browser/chromeos/login/users/user_manager_impl.h"
#include "chrome/browser/extensions/api/braille_display_private/mock_braille_controller.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/profiles/profile_manager.h"
#include "components/policy/core/common/mock_configuration_policy_provider.h"
#include "components/policy/core/common/policy_map.h"
#include "components/policy/core/common/policy_types.h"
+#include "components/user_manager/user_manager.h"
#include "content/public/test/test_utils.h"
#include "policy/policy_constants.h"
#include "testing/gtest/include/gtest/gtest.h"
InProcessBrowserTest::RunTestOnMainThreadLoop();
}
- virtual void CleanUpOnMainThread() OVERRIDE {
+ virtual void TearDownOnMainThread() OVERRIDE {
AccessibilityManager::SetBrailleControllerForTest(NULL);
}
policy_map.Set(policy::key::kShowAccessibilityOptionsInSystemTrayMenu,
policy::POLICY_LEVEL_MANDATORY,
policy::POLICY_SCOPE_USER,
- base::Value::CreateBooleanValue(value),
+ new base::FundamentalValue(value),
NULL);
provider_.UpdateChromePolicy(policy_map);
base::RunLoop().RunUntilIdle();
return tray()->detailed_menu_->virtual_keyboard_view_;
}
+ bool IsHelpShownOnDetailMenu() const {
+ return tray()->detailed_menu_->help_view_;
+ }
+
+ bool IsSettingsShownOnDetailMenu() const {
+ return tray()->detailed_menu_->settings_view_;
+ }
+
bool IsNotificationShown() const {
return (tray()->detailed_popup_ &&
!tray()->detailed_popup_->GetWidget()->IsClosed());
IN_PROC_BROWSER_TEST_P(TrayAccessibilityTest, LoginStatus) {
EXPECT_EQ(ash::user::LOGGED_IN_NONE, GetLoginStatus());
- UserManager::Get()->UserLoggedIn(
+ user_manager::UserManager::Get()->UserLoggedIn(
"owner@invalid.domain", "owner@invalid.domain", true);
- UserManager::Get()->SessionStarted();
+ user_manager::UserManager::Get()->SessionStarted();
EXPECT_EQ(ash::user::LOGGED_IN_USER, GetLoginStatus());
}
-IN_PROC_BROWSER_TEST_P(TrayAccessibilityTest, ShowTrayIcon) {
+// http://crbug.com/396342
+IN_PROC_BROWSER_TEST_P(TrayAccessibilityTest, DISABLED_ShowTrayIcon) {
SetLoginStatus(ash::user::LOGGED_IN_NONE);
// Confirms that the icon is invisible before login.
EXPECT_FALSE(IsTrayIconVisible());
- UserManager::Get()->UserLoggedIn(
+ user_manager::UserManager::Get()->UserLoggedIn(
"owner@invalid.domain", "owner@invalid.domain", true);
- UserManager::Get()->SessionStarted();
+ user_manager::UserManager::Get()->SessionStarted();
// Confirms that the icon is invisible just after login.
EXPECT_FALSE(IsTrayIconVisible());
EXPECT_FALSE(IsTrayIconVisible());
}
-IN_PROC_BROWSER_TEST_P(TrayAccessibilityTest, ShowMenu) {
+// http://crbug.com/396342
+IN_PROC_BROWSER_TEST_P(TrayAccessibilityTest, DISABLED_ShowMenu) {
// Login
- UserManager::Get()->UserLoggedIn(
+ user_manager::UserManager::Get()->UserLoggedIn(
"owner@invalid.domain", "owner@invalid.domain", true);
- UserManager::Get()->SessionStarted();
+ user_manager::UserManager::Get()->SessionStarted();
SetShowAccessibilityOptionsInSystemTrayMenu(false);
EXPECT_FALSE(CanCreateMenuItem());
}
-IN_PROC_BROWSER_TEST_P(TrayAccessibilityTest, ShowMenuWithShowMenuOption) {
+// http://crbug.com/396318
+IN_PROC_BROWSER_TEST_P(TrayAccessibilityTest,
+ DISABLED_ShowMenuWithShowMenuOption) {
// Login
- UserManager::Get()->UserLoggedIn(
+ user_manager::UserManager::Get()->UserLoggedIn(
"owner@invalid.domain", "owner@invalid.domain", true);
- UserManager::Get()->SessionStarted();
+ user_manager::UserManager::Get()->SessionStarted();
SetShowAccessibilityOptionsInSystemTrayMenu(true);
EXPECT_TRUE(IsLargeCursorMenuShownOnDetailMenu());
EXPECT_FALSE(IsAutoclickMenuShownOnDetailMenu());
EXPECT_TRUE(IsVirtualKeyboardMenuShownOnDetailMenu());
+ EXPECT_FALSE(IsHelpShownOnDetailMenu());
+ EXPECT_FALSE(IsSettingsShownOnDetailMenu());
CloseDetailMenu();
SetLoginStatus(ash::user::LOGGED_IN_USER);
EXPECT_FALSE(IsLargeCursorMenuShownOnDetailMenu());
EXPECT_TRUE(IsAutoclickMenuShownOnDetailMenu());
EXPECT_TRUE(IsVirtualKeyboardMenuShownOnDetailMenu());
+ EXPECT_TRUE(IsHelpShownOnDetailMenu());
+ EXPECT_TRUE(IsSettingsShownOnDetailMenu());
CloseDetailMenu();
SetLoginStatus(ash::user::LOGGED_IN_LOCKED);
EXPECT_FALSE(IsLargeCursorMenuShownOnDetailMenu());
EXPECT_TRUE(IsAutoclickMenuShownOnDetailMenu());
EXPECT_TRUE(IsVirtualKeyboardMenuShownOnDetailMenu());
+ EXPECT_FALSE(IsHelpShownOnDetailMenu());
+ EXPECT_FALSE(IsSettingsShownOnDetailMenu());
+ CloseDetailMenu();
+
+ ash::test::TestSessionStateDelegate* session_state_delegate =
+ new ash::test::TestSessionStateDelegate;
+ ash::test::ShellTestApi test_api(ash::Shell::GetInstance());
+ test_api.SetSessionStateDelegate(session_state_delegate);
+ session_state_delegate->SetUserAddingScreenRunning(true);
+ SetLoginStatus(ash::user::LOGGED_IN_USER);
+ EXPECT_TRUE(CreateDetailedMenu());
+ EXPECT_TRUE(IsSpokenFeedbackMenuShownOnDetailMenu());
+ EXPECT_TRUE(IsHighContrastMenuShownOnDetailMenu());
+ EXPECT_TRUE(IsScreenMagnifierMenuShownOnDetailMenu());
+ EXPECT_FALSE(IsLargeCursorMenuShownOnDetailMenu());
+ EXPECT_TRUE(IsAutoclickMenuShownOnDetailMenu());
+ EXPECT_TRUE(IsVirtualKeyboardMenuShownOnDetailMenu());
+ EXPECT_FALSE(IsHelpShownOnDetailMenu());
+ EXPECT_FALSE(IsSettingsShownOnDetailMenu());
CloseDetailMenu();
}