mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
The Metal context/surface code was only in the `flutter` namespace but should have been in `flutter::testing` for consistency with everything else in the `testing` directory. Also squashes the declarations in the rest of that directory to match the style guide while I've got the macro still handy. [C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
22 lines
584 B
C++
22 lines
584 B
C++
// 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::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 flutter::testing
|