Index: ash/mus/window_manager_unittest.cc |
diff --git a/ash/mus/window_manager_unittest.cc b/ash/mus/window_manager_unittest.cc |
index 4c2c0cd0e88246778ebfd775b94812bdbd1a1108..45fc419fc4d31dfcf5e6e3d3d8c68ddab9e8c94d 100644 |
--- a/ash/mus/window_manager_unittest.cc |
+++ b/ash/mus/window_manager_unittest.cc |
@@ -66,7 +66,29 @@ class WindowManagerTest : public service_manager::test::ServiceTest { |
WindowManagerTest() : service_manager::test::ServiceTest("mash_unittests") {} |
~WindowManagerTest() override {} |
+ // service_manager::test::ServiceTest: |
+ void SetUp() override { |
+ service_manager::test::ServiceTest::SetUp(); |
+ |
+ // This test connects to the real mus. This results in |
+ // aura::WindowTreeClient resetting the context_factory on Env. As all |
+ // tests share the same Env (see mash_test_suite) we need to restore the |
+ // context_factory when done. |
+ aura::Env* env = aura::Env::GetInstance(); |
+ initial_context_factory_ = env->context_factory(); |
+ initial_context_factory_private_ = env->context_factory_private(); |
+ } |
+ |
+ void TearDown() override { |
+ aura::Env* env = aura::Env::GetInstance(); |
+ env->set_context_factory(initial_context_factory_); |
+ env->set_context_factory_private(initial_context_factory_private_); |
+ } |
+ |
private: |
+ ui::ContextFactory* initial_context_factory_ = nullptr; |
+ ui::ContextFactoryPrivate* initial_context_factory_private_ = nullptr; |
+ |
DISALLOW_COPY_AND_ASSIGN(WindowManagerTest); |
}; |