// Copyright 2015 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef SHELL_TESTING_TEST_RUNNER_H_ #define SHELL_TESTING_TEST_RUNNER_H_ #include #include #include "flutter/services/engine/sky_engine.mojom.h" #include "lib/ftl/macros.h" #include "lib/ftl/memory/weak_ptr.h" #include "mojo/public/cpp/bindings/binding_set.h" namespace shell { class PlatformView; class TestRunner { public: static TestRunner& Shared(); struct TestDescriptor { std::string path; std::string packages; }; void Run(const TestDescriptor& test); private: TestRunner(); ~TestRunner(); std::unique_ptr platform_view_; sky::SkyEnginePtr sky_engine_; ftl::WeakPtrFactory weak_ptr_factory_; FTL_DISALLOW_COPY_AND_ASSIGN(TestRunner); }; } // namespace shell #endif // SHELL_TESTING_TEST_RUNNER_H_