Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(72)

Side by Side Diff: extensions/browser/mojo/stash_backend_unittest.cc

Issue 1684783002: Rename ServiceProvider to InterfaceProvider. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: . Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « content/test/data/web_ui_mojo_shell_test.js ('k') | mash/shell/shell_application_delegate.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "extensions/browser/mojo/stash_backend.h" 5 #include "extensions/browser/mojo/stash_backend.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 8
9 #include <utility> 9 #include <utility>
10 10
11 #include "base/bind.h" 11 #include "base/bind.h"
12 #include "base/macros.h" 12 #include "base/macros.h"
13 #include "base/message_loop/message_loop.h" 13 #include "base/message_loop/message_loop.h"
14 #include "base/run_loop.h" 14 #include "base/run_loop.h"
15 #include "mojo/shell/public/interfaces/service_provider.mojom.h" 15 #include "mojo/shell/public/interfaces/interface_provider.mojom.h"
16 #include "testing/gtest/include/gtest/gtest.h" 16 #include "testing/gtest/include/gtest/gtest.h"
17 17
18 namespace extensions { 18 namespace extensions {
19 namespace { 19 namespace {
20 20
21 // Create a data pipe, write some data to the producer handle and return the 21 // Create a data pipe, write some data to the producer handle and return the
22 // consumer handle. 22 // consumer handle.
23 mojo::ScopedHandle CreateReadableHandle() { 23 mojo::ScopedHandle CreateReadableHandle() {
24 mojo::ScopedDataPipeConsumerHandle consumer_handle; 24 mojo::ScopedDataPipeConsumerHandle consumer_handle;
25 mojo::ScopedDataPipeProducerHandle producer_handle; 25 mojo::ScopedDataPipeProducerHandle producer_handle;
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after
184 ASSERT_TRUE(!stashed_objects.is_null()); 184 ASSERT_TRUE(!stashed_objects.is_null());
185 EXPECT_EQ(0u, stashed_objects.size()); 185 EXPECT_EQ(0u, stashed_objects.size());
186 } 186 }
187 187
188 TEST_F(StashServiceTest, NotifyOnReadableHandle) { 188 TEST_F(StashServiceTest, NotifyOnReadableHandle) {
189 mojo::Array<StashedObjectPtr> stash_entries; 189 mojo::Array<StashedObjectPtr> stash_entries;
190 StashedObjectPtr stashed_object(StashedObject::New()); 190 StashedObjectPtr stashed_object(StashedObject::New());
191 stashed_object->id = "test type"; 191 stashed_object->id = "test type";
192 stashed_object->data.push_back(0); 192 stashed_object->data.push_back(0);
193 stashed_object->monitor_handles = true; 193 stashed_object->monitor_handles = true;
194 mojo::ServiceProviderPtr service_provider; 194 mojo::InterfaceProviderPtr service_provider;
195 195
196 // Stash the ServiceProvider request. When we make a call on 196 // Stash the ServiceProvider request. When we make a call on
197 // |service_provider|, the stashed handle will become readable. 197 // |service_provider|, the stashed handle will become readable.
198 stashed_object->stashed_handles.push_back(mojo::ScopedHandle::From( 198 stashed_object->stashed_handles.push_back(mojo::ScopedHandle::From(
199 mojo::GetProxy(&service_provider).PassMessagePipe())); 199 mojo::GetProxy(&service_provider).PassMessagePipe()));
200 200
201 stash_entries.push_back(std::move(stashed_object)); 201 stash_entries.push_back(std::move(stashed_object));
202 stash_service_->AddToStash(std::move(stash_entries)); 202 stash_service_->AddToStash(std::move(stash_entries));
203 203
204 mojo::MessagePipe pipe; 204 mojo::MessagePipe pipe;
205 service_provider->ConnectToService("", std::move(pipe.handle0)); 205 service_provider->GetInterface("", std::move(pipe.handle0));
206 206
207 WaitForEvent(EVENT_HANDLE_READY); 207 WaitForEvent(EVENT_HANDLE_READY);
208 EXPECT_EQ(1, handles_ready_); 208 EXPECT_EQ(1, handles_ready_);
209 } 209 }
210 210
211 TEST_F(StashServiceTest, NotifyOnReadableDataPipeHandle) { 211 TEST_F(StashServiceTest, NotifyOnReadableDataPipeHandle) {
212 mojo::Array<StashedObjectPtr> stash_entries; 212 mojo::Array<StashedObjectPtr> stash_entries;
213 StashedObjectPtr stashed_object(StashedObject::New()); 213 StashedObjectPtr stashed_object(StashedObject::New());
214 stashed_object->id = "test type"; 214 stashed_object->id = "test type";
215 stashed_object->monitor_handles = true; 215 stashed_object->monitor_handles = true;
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
292 ASSERT_EQ(0u, stashed_objects.size()); 292 ASSERT_EQ(0u, stashed_objects.size());
293 // Check that the stashed handle has been closed. 293 // Check that the stashed handle has been closed.
294 MojoResult result = 294 MojoResult result =
295 mojo::Wait(message_pipe.handle1.get(), 295 mojo::Wait(message_pipe.handle1.get(),
296 MOJO_HANDLE_SIGNAL_READABLE | MOJO_HANDLE_SIGNAL_READABLE, 296 MOJO_HANDLE_SIGNAL_READABLE | MOJO_HANDLE_SIGNAL_READABLE,
297 MOJO_DEADLINE_INDEFINITE, nullptr); 297 MOJO_DEADLINE_INDEFINITE, nullptr);
298 EXPECT_EQ(MOJO_RESULT_FAILED_PRECONDITION, result); 298 EXPECT_EQ(MOJO_RESULT_FAILED_PRECONDITION, result);
299 } 299 }
300 300
301 } // namespace extensions 301 } // namespace extensions
OLDNEW
« no previous file with comments | « content/test/data/web_ui_mojo_shell_test.js ('k') | mash/shell/shell_application_delegate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698