| Flutter Impeller |

compute_playground_test.cc
Go to the documentation of this file.
1 // Copyright 2013 The Flutter 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 "flutter/fml/time/time_point.h"
6
7 #include "flutter/testing/test_args.h"
8 #include "impeller/playground/compute_playground_test.h"
9
10 namespace impeller {
11
12 ComputePlaygroundTest::ComputePlaygroundTest()
13 : Playground(PlaygroundSwitches{flutter::testing::GetArgsForProcess()}) {}
14
15 ComputePlaygroundTest::~ComputePlaygroundTest() = default;
16
17 void ComputePlaygroundTest::SetUp() {
18 if (!Playground::SupportsBackend(GetParam())) {
19 GTEST_SKIP() << "Playground doesn't support this backend type.";
20 return;
21 }
22
23 if (!Playground::ShouldOpenNewPlaygrounds()) {
24 GTEST_SKIP() << "Skipping due to user action.";
25 return;
26 }
27
28 SetupContext(GetParam(), switches_);
29 SetupWindow();
30
31 start_time_ = fml::TimePoint::Now().ToEpochDelta();
32 }
33
34 void ComputePlaygroundTest::TearDown() {
35 TeardownWindow();
36 }
37
38 // |Playground|
39 std::unique_ptr<fml::Mapping> ComputePlaygroundTest::OpenAssetAsMapping(
40 std::string asset_name) const {
41 return flutter::testing::OpenFixtureAsMapping(asset_name);
42 }
43
44 static std::string FormatWindowTitle(const std::string& test_name) {
45 std::stringstream stream;
46 stream << "Impeller Playground for '" << test_name << "' (Press ESC to quit)";
47 return stream.str();
48 }
49
50 // |Playground|
51 std::string ComputePlaygroundTest::GetWindowTitle() const {
52 return FormatWindowTitle(flutter::testing::GetCurrentTestName());
53 }
54
55 } // namespace impeller
impeller::Playground::ShouldOpenNewPlaygrounds
static bool ShouldOpenNewPlaygrounds()
Definition: playground.cc:160
impeller::ComputePlaygroundTest::SetUp
void SetUp() override
Definition: compute_playground_test.cc:17
impeller::ComputePlaygroundTest::GetWindowTitle
std::string GetWindowTitle() const override
Definition: compute_playground_test.cc:51
impeller::Playground
Definition: playground.h:47
impeller::FormatWindowTitle
static std::string FormatWindowTitle(const std::string &test_name)
Definition: compute_playground_test.cc:44
impeller::Playground::SetupWindow
void SetupWindow()
Definition: playground.cc:137
impeller::ComputePlaygroundTest::TearDown
void TearDown() override
Definition: compute_playground_test.cc:34
impeller::ComputePlaygroundTest::OpenAssetAsMapping
std::unique_ptr< fml::Mapping > OpenAssetAsMapping(std::string asset_name) const override
Definition: compute_playground_test.cc:39
impeller::ComputePlaygroundTest::~ComputePlaygroundTest
virtual ~ComputePlaygroundTest()
impeller::Playground::switches_
const PlaygroundSwitches switches_
Definition: playground.h:121
impeller::Playground::SetupContext
void SetupContext(PlaygroundBackend backend, const PlaygroundSwitches &switches)
Definition: playground.cc:124
impeller::PlaygroundSwitches
Definition: switches.h:15
impeller::ComputePlaygroundTest::ComputePlaygroundTest
ComputePlaygroundTest()
Definition: compute_playground_test.cc:12
compute_playground_test.h
impeller::Playground::SupportsBackend
static bool SupportsBackend(PlaygroundBackend backend)
Definition: playground.cc:100
impeller::Playground::TeardownWindow
void TeardownWindow()
Definition: playground.cc:150
impeller
Definition: allocation.cc:12