| Index: mojo/public/cpp/bindings/associated_binding.h
|
| diff --git a/mojo/public/cpp/bindings/associated_binding.h b/mojo/public/cpp/bindings/associated_binding.h
|
| index 66d7f8e61ec8b62ff56dcb9ac9a9fe0bee92821b..fcdb3faa4976eba0f12df42aeaff99006d781163 100644
|
| --- a/mojo/public/cpp/bindings/associated_binding.h
|
| +++ b/mojo/public/cpp/bindings/associated_binding.h
|
| @@ -19,6 +19,7 @@
|
| #include "mojo/public/cpp/bindings/associated_group_controller.h"
|
| #include "mojo/public/cpp/bindings/associated_interface_request.h"
|
| #include "mojo/public/cpp/bindings/interface_endpoint_client.h"
|
| +#include "mojo/public/cpp/bindings/lib/control_message_proxy.h"
|
| #include "mojo/public/cpp/bindings/scoped_interface_endpoint_handle.h"
|
|
|
| namespace mojo {
|
| @@ -103,7 +104,7 @@ class AssociatedBinding {
|
| endpoint_client_.reset(new InterfaceEndpointClient(
|
| std::move(handle), &stub_,
|
| base::WrapUnique(new typename Interface::RequestValidator_()),
|
| - Interface::HasSyncMethods_, std::move(runner)));
|
| + Interface::HasSyncMethods_, std::move(runner), Interface::Version_));
|
| endpoint_client_->set_connection_error_handler(
|
| base::Bind(&AssociatedBinding::RunConnectionErrorHandler,
|
| base::Unretained(this)));
|
| @@ -165,6 +166,17 @@ class AssociatedBinding {
|
| return endpoint_client_ ? endpoint_client_->associated_group() : nullptr;
|
| }
|
|
|
| + // Sends a message on the underlying message pipe and runs the current
|
| + // message loop until its response is received. This can be used in tests to
|
| + // verify that no message was sent on a message pipe in response to some
|
| + // stimulus.
|
| + void FlushForTesting() {
|
| + if (!endpoint_client_ || endpoint_client_->encountered_error())
|
| + return;
|
| +
|
| + endpoint_client_->control_message_proxy()->FlushForTesting();
|
| + }
|
| +
|
| private:
|
| void RunConnectionErrorHandler() {
|
| if (!connection_error_handler_.is_null())
|
|
|