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

Side by Side Diff: athena/test/athena_test_base.cc

Issue 617043002: Moving athena/test to athena/test/base (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 2 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 unified diff | Download patch
« no previous file with comments | « athena/test/athena_test_base.h ('k') | athena/test/athena_test_helper.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "athena/test/athena_test_base.h"
6
7 #include "athena/env/public/athena_env.h"
8 #include "athena/screen/public/screen_manager.h"
9 #include "athena/test/athena_test_helper.h"
10 #include "ui/aura/client/window_tree_client.h"
11 #include "ui/aura/test/event_generator_delegate_aura.h"
12 #include "ui/aura/window.h"
13 #include "ui/compositor/test/context_factories_for_test.h"
14
15 #if defined(USE_X11)
16 #include "ui/aura/window_tree_host_x11.h"
17 #endif
18
19 namespace athena {
20 namespace test {
21
22 AthenaTestBase::AthenaTestBase()
23 : setup_called_(false), teardown_called_(false) {
24 }
25
26 AthenaTestBase::~AthenaTestBase() {
27 CHECK(setup_called_)
28 << "You have overridden SetUp but never called super class's SetUp";
29 CHECK(teardown_called_)
30 << "You have overridden TearDown but never called super class's TearDown";
31 }
32
33 void AthenaTestBase::SetUp() {
34 setup_called_ = true;
35 testing::Test::SetUp();
36
37 // The ContextFactory must exist before any Compositors are created.
38 bool enable_pixel_output = false;
39 ui::ContextFactory* context_factory =
40 ui::InitializeContextFactoryForTests(enable_pixel_output);
41
42 helper_.reset(new AthenaTestHelper(&message_loop_));
43 #if defined(USE_X11)
44 aura::test::SetUseOverrideRedirectWindowByDefault(true);
45 #endif
46 aura::test::InitializeAuraEventGeneratorDelegate();
47 helper_->SetUp(context_factory);
48 }
49
50 void AthenaTestBase::TearDown() {
51 AthenaEnv::Get()->OnTerminating();
52
53 teardown_called_ = true;
54
55 // Flush the message loop because we have pending release tasks
56 // and these tasks if un-executed would upset Valgrind.
57 RunAllPendingInMessageLoop();
58
59 helper_->TearDown();
60 ui::TerminateContextFactoryForTests();
61 testing::Test::TearDown();
62 }
63
64 void AthenaTestBase::RunAllPendingInMessageLoop() {
65 helper_->RunAllPendingInMessageLoop();
66 }
67
68 scoped_ptr<aura::Window> AthenaTestBase::CreateTestWindow(
69 aura::WindowDelegate* delegate,
70 const gfx::Rect& bounds) {
71 scoped_ptr<aura::Window> window(new aura::Window(delegate));
72 window->SetType(ui::wm::WINDOW_TYPE_NORMAL);
73 window->Init(aura::WINDOW_LAYER_SOLID_COLOR);
74 aura::client::ParentWindowWithContext(
75 window.get(), ScreenManager::Get()->GetContext(), bounds);
76 return window.Pass();
77 }
78
79 } // namespace test
80 } // namespace athena
OLDNEW
« no previous file with comments | « athena/test/athena_test_base.h ('k') | athena/test/athena_test_helper.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698