Index: services/ui/ws/display_unittest.cc |
diff --git a/services/ui/ws/display_unittest.cc b/services/ui/ws/display_unittest.cc |
index 56f8f513a0b7dec9d028406c7ae4aac0bbcb9eb7..252db739934824f3f7604a5232992004893e30da 100644 |
--- a/services/ui/ws/display_unittest.cc |
+++ b/services/ui/ws/display_unittest.cc |
@@ -55,37 +55,33 @@ WindowManagerState* GetWindowManagerStateForUser(Display* display, |
class DisplayTest : public testing::Test { |
public: |
- DisplayTest() : cursor_id_(0), platform_display_factory_(&cursor_id_) {} |
+ DisplayTest() {} |
~DisplayTest() override {} |
+ WindowServer* window_server() { return ws_test_helper_.window_server(); } |
+ TestWindowServerDelegate* window_server_delegate() { |
+ return ws_test_helper_.window_server_delegate(); |
+ } |
+ |
protected: |
// testing::Test: |
void SetUp() override { |
- PlatformDisplay::set_factory_for_testing(&platform_display_factory_); |
- window_server_.reset(new WindowServer(&window_server_delegate_)); |
- window_server_delegate_.set_window_server(window_server_.get()); |
- window_server_->user_id_tracker()->AddUserId(kTestId1); |
- window_server_->user_id_tracker()->AddUserId(kTestId2); |
+ window_server()->user_id_tracker()->AddUserId(kTestId1); |
+ window_server()->user_id_tracker()->AddUserId(kTestId2); |
} |
- protected: |
- int32_t cursor_id_; |
- TestPlatformDisplayFactory platform_display_factory_; |
- TestWindowServerDelegate window_server_delegate_; |
- std::unique_ptr<WindowServer> window_server_; |
- base::MessageLoop message_loop_; |
- |
private: |
+ WindowServerTestHelper ws_test_helper_; |
DISALLOW_COPY_AND_ASSIGN(DisplayTest); |
}; |
TEST_F(DisplayTest, CallsCreateDefaultDisplays) { |
const int kNumHostsToCreate = 2; |
- window_server_delegate_.set_num_displays_to_create(kNumHostsToCreate); |
+ window_server_delegate()->set_num_displays_to_create(kNumHostsToCreate); |
- DisplayManager* display_manager = window_server_->display_manager(); |
+ DisplayManager* display_manager = window_server()->display_manager(); |
WindowManagerWindowTreeFactorySetTestApi( |
- window_server_->window_manager_window_tree_factory_set()) |
+ window_server()->window_manager_window_tree_factory_set()) |
.Add(kTestId1); |
// The first register should trigger creation of the default |
// Displays. There should be kNumHostsToCreate Displays. |
@@ -101,7 +97,7 @@ TEST_F(DisplayTest, CallsCreateDefaultDisplays) { |
// Add another registry, should trigger creation of another wm. |
WindowManagerWindowTreeFactorySetTestApi( |
- window_server_->window_manager_window_tree_factory_set()) |
+ window_server()->window_manager_window_tree_factory_set()) |
.Add(kTestId2); |
for (Display* display : display_manager->displays()) { |
ASSERT_EQ(2u, display->num_window_manger_states()); |
@@ -118,54 +114,54 @@ TEST_F(DisplayTest, CallsCreateDefaultDisplays) { |
} |
TEST_F(DisplayTest, Destruction) { |
- window_server_delegate_.set_num_displays_to_create(1); |
+ window_server_delegate()->set_num_displays_to_create(1); |
WindowManagerWindowTreeFactorySetTestApi( |
- window_server_->window_manager_window_tree_factory_set()) |
+ window_server()->window_manager_window_tree_factory_set()) |
.Add(kTestId1); |
// Add another registry, should trigger creation of another wm. |
- DisplayManager* display_manager = window_server_->display_manager(); |
+ DisplayManager* display_manager = window_server()->display_manager(); |
WindowManagerWindowTreeFactorySetTestApi( |
- window_server_->window_manager_window_tree_factory_set()) |
+ window_server()->window_manager_window_tree_factory_set()) |
.Add(kTestId2); |
ASSERT_EQ(1u, display_manager->displays().size()); |
Display* display = *display_manager->displays().begin(); |
ASSERT_EQ(2u, display->num_window_manger_states()); |
// There should be two trees, one for each windowmanager. |
- EXPECT_EQ(2u, window_server_->num_trees()); |
+ EXPECT_EQ(2u, window_server()->num_trees()); |
{ |
WindowManagerState* state = GetWindowManagerStateForUser(display, kTestId1); |
// Destroy the tree associated with |state|. Should result in deleting |
// |state|. |
- window_server_->DestroyTree(state->window_tree()); |
+ window_server()->DestroyTree(state->window_tree()); |
ASSERT_EQ(1u, display->num_window_manger_states()); |
EXPECT_FALSE(GetWindowManagerStateForUser(display, kTestId1)); |
EXPECT_EQ(1u, display_manager->displays().size()); |
- EXPECT_EQ(1u, window_server_->num_trees()); |
+ EXPECT_EQ(1u, window_server()->num_trees()); |
} |
- EXPECT_FALSE(window_server_delegate_.got_on_no_more_displays()); |
- window_server_->display_manager()->DestroyDisplay(display); |
+ EXPECT_FALSE(window_server_delegate()->got_on_no_more_displays()); |
+ window_server()->display_manager()->DestroyDisplay(display); |
// There is still one tree left. |
- EXPECT_EQ(1u, window_server_->num_trees()); |
- EXPECT_TRUE(window_server_delegate_.got_on_no_more_displays()); |
+ EXPECT_EQ(1u, window_server()->num_trees()); |
+ EXPECT_TRUE(window_server_delegate()->got_on_no_more_displays()); |
} |
TEST_F(DisplayTest, EventStateResetOnUserSwitch) { |
- window_server_delegate_.set_num_displays_to_create(1); |
+ window_server_delegate()->set_num_displays_to_create(1); |
WindowManagerWindowTreeFactorySetTestApi( |
- window_server_->window_manager_window_tree_factory_set()) |
+ window_server()->window_manager_window_tree_factory_set()) |
.Add(kTestId1); |
WindowManagerWindowTreeFactorySetTestApi( |
- window_server_->window_manager_window_tree_factory_set()) |
+ window_server()->window_manager_window_tree_factory_set()) |
.Add(kTestId2); |
- window_server_->user_id_tracker()->SetActiveUserId(kTestId1); |
+ window_server()->user_id_tracker()->SetActiveUserId(kTestId1); |
- DisplayManager* display_manager = window_server_->display_manager(); |
+ DisplayManager* display_manager = window_server()->display_manager(); |
ASSERT_EQ(1u, display_manager->displays().size()); |
Display* display = *display_manager->displays().begin(); |
WindowManagerState* active_wms = |
@@ -185,7 +181,7 @@ TEST_F(DisplayTest, EventStateResetOnUserSwitch) { |
// Switch the user. Should trigger resetting state in old event dispatcher |
// and update state in new event dispatcher. |
- window_server_->user_id_tracker()->SetActiveUserId(kTestId2); |
+ window_server()->user_id_tracker()->SetActiveUserId(kTestId2); |
EXPECT_NE( |
active_wms, |
display->GetActiveWindowManagerDisplayRoot()->window_manager_state()); |
@@ -202,15 +198,15 @@ TEST_F(DisplayTest, EventStateResetOnUserSwitch) { |
// Verifies capture fails when wm is inactive and succeeds when wm is active. |
TEST_F(DisplayTest, SetCaptureFromWindowManager) { |
- window_server_delegate_.set_num_displays_to_create(1); |
+ window_server_delegate()->set_num_displays_to_create(1); |
WindowManagerWindowTreeFactorySetTestApi( |
- window_server_->window_manager_window_tree_factory_set()) |
+ window_server()->window_manager_window_tree_factory_set()) |
.Add(kTestId1); |
WindowManagerWindowTreeFactorySetTestApi( |
- window_server_->window_manager_window_tree_factory_set()) |
+ window_server()->window_manager_window_tree_factory_set()) |
.Add(kTestId2); |
- window_server_->user_id_tracker()->SetActiveUserId(kTestId1); |
- DisplayManager* display_manager = window_server_->display_manager(); |
+ window_server()->user_id_tracker()->SetActiveUserId(kTestId1); |
+ DisplayManager* display_manager = window_server()->display_manager(); |
ASSERT_EQ(1u, display_manager->displays().size()); |
Display* display = *display_manager->displays().begin(); |
WindowManagerState* wms_for_id2 = |
@@ -229,24 +225,24 @@ TEST_F(DisplayTest, SetCaptureFromWindowManager) { |
EXPECT_FALSE(tree->SetCapture(child_window_id)); |
// Make the second user active and verify capture works. |
- window_server_->user_id_tracker()->SetActiveUserId(kTestId2); |
+ window_server()->user_id_tracker()->SetActiveUserId(kTestId2); |
EXPECT_TRUE(wms_for_id2->IsActive()); |
EXPECT_TRUE(tree->SetCapture(child_window_id)); |
} |
TEST_F(DisplayTest, FocusFailsForInactiveUser) { |
- window_server_delegate_.set_num_displays_to_create(1); |
+ window_server_delegate()->set_num_displays_to_create(1); |
WindowManagerWindowTreeFactorySetTestApi( |
- window_server_->window_manager_window_tree_factory_set()) |
+ window_server()->window_manager_window_tree_factory_set()) |
.Add(kTestId1); |
TestWindowTreeClient* window_tree_client1 = |
- window_server_delegate_.last_client(); |
+ window_server_delegate()->last_client(); |
ASSERT_TRUE(window_tree_client1); |
WindowManagerWindowTreeFactorySetTestApi( |
- window_server_->window_manager_window_tree_factory_set()) |
+ window_server()->window_manager_window_tree_factory_set()) |
.Add(kTestId2); |
- window_server_->user_id_tracker()->SetActiveUserId(kTestId1); |
- DisplayManager* display_manager = window_server_->display_manager(); |
+ window_server()->user_id_tracker()->SetActiveUserId(kTestId1); |
+ DisplayManager* display_manager = window_server()->display_manager(); |
ASSERT_EQ(1u, display_manager->displays().size()); |
Display* display = *display_manager->displays().begin(); |
WindowManagerState* wms_for_id2 = |
@@ -275,14 +271,14 @@ TEST_F(DisplayTest, FocusFailsForInactiveUser) { |
// Verifies a single tree is used for multiple displays. |
TEST_F(DisplayTest, MultipleDisplays) { |
- window_server_delegate_.set_num_displays_to_create(2); |
+ window_server_delegate()->set_num_displays_to_create(2); |
WindowManagerWindowTreeFactorySetTestApi( |
- window_server_->window_manager_window_tree_factory_set()) |
+ window_server()->window_manager_window_tree_factory_set()) |
.Add(kTestId1); |
- window_server_->user_id_tracker()->SetActiveUserId(kTestId1); |
- ASSERT_EQ(1u, window_server_delegate_.bindings()->size()); |
+ window_server()->user_id_tracker()->SetActiveUserId(kTestId1); |
+ ASSERT_EQ(1u, window_server_delegate()->bindings()->size()); |
TestWindowTreeBinding* window_tree_binding = |
- (*window_server_delegate_.bindings())[0]; |
+ (*window_server_delegate()->bindings())[0]; |
WindowTree* tree = window_tree_binding->tree(); |
ASSERT_EQ(2u, tree->roots().size()); |
std::set<const ServerWindow*> roots = tree->roots(); |