| // Copyright 2013 The Flutter Authors. All rights reserved. | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| #include "flutter/testing/post_task_sync.h" | |
| #include "flutter/fml/synchronization/waitable_event.h" | |
| namespace flutter { | |
| namespace testing { | |
| void PostTaskSync(const fml::RefPtr<fml::TaskRunner>& task_runner, | |
| const std::function<void()>& function) { | |
| fml::AutoResetWaitableEvent latch; | |
| task_runner->PostTask([&] { | |
| function(); | |
| latch.Signal(); | |
| }); | |
| latch.Wait(); | |
| } | |
| } // namespace testing | |
| } // namespace flutter |