aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/gpucts/gpucts.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tools/gpucts/gpucts.cpp')
-rw-r--r--tools/gpucts/gpucts.cpp159
1 files changed, 0 insertions, 159 deletions
diff --git a/tools/gpucts/gpucts.cpp b/tools/gpucts/gpucts.cpp
deleted file mode 100644
index c50519cc5b..0000000000
--- a/tools/gpucts/gpucts.cpp
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * Copyright 2017 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "SkGraphics.h"
-#include "gm_runner.h"
-
-#ifdef __clang__
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wused-but-marked-unused"
-#endif
-
-#include "gtest/gtest.h"
-
-#ifdef __clang__
-#pragma clang diagnostic pop
-#endif
-
-#include "Test.h"
-
-////////////////////////////////////////////////////////////////////////////////
-
-struct GMTestCase {
- gm_runner::GMFactory fGMFactory;
- gm_runner::SkiaBackend fBackend;
-};
-
-struct GMTest : public testing::Test {
- GMTestCase fTest;
- GMTest(GMTestCase t) : fTest(t) {}
- void TestBody() override {
- if (!fTest.fGMFactory) {
- EXPECT_TRUE(gm_runner::BackendSupported(fTest.fBackend));
- return;
- }
- std::vector<uint32_t> pixels;
- GMK_ImageData imgData = gm_runner::Evaluate(fTest.fBackend, fTest.fGMFactory, &pixels);
- EXPECT_TRUE(imgData.pix);
- if (!imgData.pix) {
- return;
- }
- std::string gmName = gm_runner::GetGMName(fTest.fGMFactory);
- float result = GMK_Check(imgData, gmName.c_str());
- EXPECT_EQ(result, 0);
- }
-};
-
-struct GMTestFactory : public testing::internal::TestFactoryBase {
- GMTestCase fTest;
- GMTestFactory(GMTestCase t) : fTest(t) {}
- testing::Test* CreateTest() override { return new GMTest(fTest); }
-};
-
-////////////////////////////////////////////////////////////////////////////////
-
-#if !SK_SUPPORT_GPU
-struct GrContextOptions {};
-#endif
-
-struct UnitTest : public testing::Test {
- skiatest::TestProc fProc;
- UnitTest(skiatest::TestProc proc) : fProc(proc) {}
- void TestBody() override {
- struct : skiatest::Reporter {
- void reportFailed(const skiatest::Failure& failure) override {
- SkString desc = failure.toString();
- SK_ABORT("");
- GTEST_NONFATAL_FAILURE_(desc.c_str());
- }
- } r;
- fProc(&r, GrContextOptions());
- }
-};
-
-struct UnitTestFactory : testing::internal::TestFactoryBase {
- skiatest::TestProc fProc;
- UnitTestFactory(skiatest::TestProc proc) : fProc(proc) {}
- testing::Test* CreateTest() override { return new UnitTest(fProc); }
-};
-
-std::vector<const skiatest::Test*> GetUnitTests() {
- // Unit Tests
- std::vector<const skiatest::Test*> tests;
- for (const skiatest::TestRegistry* r = skiatest::TestRegistry::Head(); r; r = r->next()) {
- tests.push_back(&r->factory());
- }
- struct {
- bool operator()(const skiatest::Test* u, const skiatest::Test* v) const {
- return strcmp(u->name, v->name) < 0;
- }
- } less;
- std::sort(tests.begin(), tests.end(), less);
- return tests;
-}
-
-////////////////////////////////////////////////////////////////////////////////
-
-static void reg_test(const char* test, const char* testCase,
- testing::internal::TestFactoryBase* fact) {
- testing::internal::MakeAndRegisterTestInfo(
- test,
- testCase,
- nullptr,
- nullptr,
- testing::internal::CodeLocation(__FILE__, __LINE__),
- testing::internal::GetTestTypeId(),
- testing::Test::SetUpTestCase,
- testing::Test::TearDownTestCase,
- fact);
-}
-
-int main(int argc, char** argv) {
- testing::InitGoogleTest(&argc, argv);
- SkGraphics::Init();
-
- // Rendering Tests
- gm_runner::SkiaBackend backends[] = {
- #ifndef SK_BUILD_FOR_ANDROID
- gm_runner::SkiaBackend::kGL, // Used for testing on desktop machines.
- #endif
- gm_runner::SkiaBackend::kGLES,
- gm_runner::SkiaBackend::kVulkan,
- };
- std::vector<gm_runner::GMFactory> gms = gm_runner::GetGMFactories();
- for (auto backend : backends) {
- const char* backendName = GetBackendName(backend);
- std::string test = std::string("SkiaGM_") + backendName;
- reg_test(test.c_str(), "BackendSupported", new GMTestFactory(GMTestCase{nullptr, backend}));
-
- if (!gm_runner::BackendSupported(backend)) {
- continue;
- }
- for (auto gmFactory : gms) {
- std::string gmName = gm_runner::GetGMName(gmFactory);
- if (!GMK_IsGoodGM(gmName.c_str())) {
- continue;
- }
- #ifdef SK_DEBUG
- // The following test asserts on my phone.
- // TODO(halcanary): fix this.
- if(gmName == std::string("complexclip3_simple") &&
- backend == gm_runner::SkiaBackend::kGLES) {
- continue;
- }
- #endif
- reg_test(test.c_str(), gmName.c_str(),
- new GMTestFactory(GMTestCase{gmFactory, backend}));
- }
- }
-
- for (const skiatest::Test* test : GetUnitTests()) {
- reg_test("Skia_Unit_Tests", test->name, new UnitTestFactory(test->proc));
- }
- return RUN_ALL_TESTS();
-}
-