Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | List of all members
flutter::testing::TestTimeoutListener Class Reference

#include <test_timeout_listener.h>

Inheritance diagram for flutter::testing::TestTimeoutListener:

Public Member Functions

 TestTimeoutListener (fml::TimeDelta timeout)
 
 ~TestTimeoutListener ()
 

Private Member Functions

void OnTestStart (const ::testing::TestInfo &test_info) override
 
void OnTestEnd (const ::testing::TestInfo &test_info) override
 

Detailed Description

Definition at line 20 of file test_timeout_listener.h.

Constructor & Destructor Documentation

◆ TestTimeoutListener()

flutter::testing::TestTimeoutListener::TestTimeoutListener ( fml::TimeDelta  timeout)
explicit

Definition at line 71 of file test_timeout_listener.cc.

72 : timeout_(timeout),
73 listener_thread_("test_timeout_listener"),
74 listener_thread_runner_(listener_thread_.GetTaskRunner()),
75 pending_tests_(PendingTests::Create(listener_thread_runner_, timeout_)) {
76 FML_LOG(INFO) << "Test timeout of " << timeout_.ToSeconds()
77 << " seconds per test case will be enforced.";
78}
static std::shared_ptr< PendingTests > Create(fml::RefPtr< fml::TaskRunner > host_task_runner, fml::TimeDelta timeout)
fml::RefPtr< fml::TaskRunner > GetTaskRunner() const
Definition thread.cc:164
constexpr int64_t ToSeconds() const
Definition time_delta.h:64
#define FML_LOG(severity)
Definition logging.h:82

◆ ~TestTimeoutListener()

flutter::testing::TestTimeoutListener::~TestTimeoutListener ( )

Definition at line 80 of file test_timeout_listener.cc.

80 {
81 listener_thread_runner_->PostTask(
82 [tests = std::move(pending_tests_)]() mutable { tests.reset(); });
83 FML_CHECK(pending_tests_ == nullptr);
84}
static BlurTest tests[]
Definition BlurTest.cpp:84
virtual void PostTask(const fml::closure &task) override
#define FML_CHECK(condition)
Definition logging.h:85

Member Function Documentation

◆ OnTestEnd()

void flutter::testing::TestTimeoutListener::OnTestEnd ( const ::testing::TestInfo &  test_info)
overrideprivate

Definition at line 113 of file test_timeout_listener.cc.

113 {
114 listener_thread_runner_->PostTask(
115 [weak_tests = WeakPtr(pending_tests_),
117 if (auto tests = weak_tests.lock()) {
118 tests->OnTestEnd(name);
119 }
120 });
121}
static void test_info(skiatest::Reporter *r, Codec *codec, const SkImageInfo &info, SkCodec::Result expectedResult, const SkMD5::Digest *goodDigest)
auto WeakPtr(std::shared_ptr< T > pointer)
static std::string GetTestNameFromTestInfo(const ::testing::TestInfo &test_info)
DEF_SWITCHES_START aot vmservice shared library name
Definition switches.h:32

◆ OnTestStart()

void flutter::testing::TestTimeoutListener::OnTestStart ( const ::testing::TestInfo &  test_info)
overrideprivate

Definition at line 102 of file test_timeout_listener.cc.

102 {
103 listener_thread_runner_->PostTask([weak_tests = WeakPtr(pending_tests_),
105 now = fml::TimePoint::Now()]() {
106 if (auto tests = weak_tests.lock()) {
107 tests->OnTestBegin(name, now);
108 }
109 });
110}
static TimePoint Now()
Definition time_point.cc:49

The documentation for this class was generated from the following files: