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

Side by Side Diff: extensions/browser/api/bluetooth_socket/bluetooth_socket_apitest.cc

Issue 2137013005: [Extensions] Code Cleanup - Remove redundant smart-ptr get()s (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 5 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
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 <memory> 5 #include <memory>
6 #include <string> 6 #include <string>
7 7
8 #include "base/memory/ref_counted.h" 8 #include "base/memory/ref_counted.h"
9 #include "base/run_loop.h" 9 #include "base/run_loop.h"
10 #include "device/bluetooth/bluetooth_adapter_factory.h" 10 #include "device/bluetooth/bluetooth_adapter_factory.h"
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
96 } 96 }
97 97
98 } // namespace 98 } // namespace
99 99
100 IN_PROC_BROWSER_TEST_F(BluetoothSocketApiTest, Connect) { 100 IN_PROC_BROWSER_TEST_F(BluetoothSocketApiTest, Connect) {
101 ResultCatcher catcher; 101 ResultCatcher catcher;
102 catcher.RestrictToBrowserContext(browser_context()); 102 catcher.RestrictToBrowserContext(browser_context());
103 103
104 // Return the right mock device object for the address used by the test, 104 // Return the right mock device object for the address used by the test,
105 // return NULL for the "Device not found" test. 105 // return NULL for the "Device not found" test.
106 EXPECT_CALL(*mock_adapter_.get(), GetDevice(mock_device1_->GetAddress())) 106 EXPECT_CALL(*mock_adapter_, GetDevice(mock_device1_->GetAddress()))
107 .WillRepeatedly(testing::Return(mock_device1_.get())); 107 .WillRepeatedly(testing::Return(mock_device1_.get()));
108 EXPECT_CALL(*mock_adapter_.get(), GetDevice(std::string("aa:aa:aa:aa:aa:aa"))) 108 EXPECT_CALL(*mock_adapter_, GetDevice(std::string("aa:aa:aa:aa:aa:aa")))
109 .WillOnce(testing::Return(static_cast<BluetoothDevice*>(NULL))); 109 .WillOnce(testing::Return(static_cast<BluetoothDevice*>(NULL)));
110 110
111 // Return a mock socket object as a successful result to the connect() call. 111 // Return a mock socket object as a successful result to the connect() call.
112 BluetoothUUID service_uuid("8e3ad063-db38-4289-aa8f-b30e4223cf40"); 112 BluetoothUUID service_uuid("8e3ad063-db38-4289-aa8f-b30e4223cf40");
113 scoped_refptr<testing::StrictMock<MockBluetoothSocket> > mock_socket 113 scoped_refptr<testing::StrictMock<MockBluetoothSocket> > mock_socket
114 = new testing::StrictMock<MockBluetoothSocket>(); 114 = new testing::StrictMock<MockBluetoothSocket>();
115 EXPECT_CALL(*mock_device1_, 115 EXPECT_CALL(*mock_device1_,
116 ConnectToService(service_uuid, testing::_, testing::_)) 116 ConnectToService(service_uuid, testing::_, testing::_))
117 .WillOnce(InvokeCallbackArgument<1>(mock_socket)); 117 .WillOnce(InvokeCallbackArgument<1>(mock_socket));
118 118
119 // Since the socket is unpaused, expect a call to Receive() from the socket 119 // Since the socket is unpaused, expect a call to Receive() from the socket
120 // dispatcher. Since there is no data, this will not call its callback. 120 // dispatcher. Since there is no data, this will not call its callback.
121 EXPECT_CALL(*mock_socket.get(), Receive(testing::_, testing::_, testing::_)); 121 EXPECT_CALL(*mock_socket, Receive(testing::_, testing::_, testing::_));
122 122
123 // The test also cleans up by calling Disconnect and Close. 123 // The test also cleans up by calling Disconnect and Close.
124 EXPECT_CALL(*mock_socket.get(), Disconnect(testing::_)) 124 EXPECT_CALL(*mock_socket, Disconnect(testing::_))
125 .WillOnce(InvokeCallbackArgument<0>()); 125 .WillOnce(InvokeCallbackArgument<0>());
126 EXPECT_CALL(*mock_socket.get(), Close()); 126 EXPECT_CALL(*mock_socket, Close());
127 127
128 // Run the test. 128 // Run the test.
129 ExtensionTestMessageListener listener("ready", true); 129 ExtensionTestMessageListener listener("ready", true);
130 scoped_refptr<const Extension> extension( 130 scoped_refptr<const Extension> extension(
131 LoadApp("api_test/bluetooth_socket/connect")); 131 LoadApp("api_test/bluetooth_socket/connect"));
132 ASSERT_TRUE(extension.get()); 132 ASSERT_TRUE(extension.get());
133 EXPECT_TRUE(listener.WaitUntilSatisfied()); 133 EXPECT_TRUE(listener.WaitUntilSatisfied());
134 134
135 listener.Reply("go"); 135 listener.Reply("go");
136 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message(); 136 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message();
(...skipping 10 matching lines...) Expand all
147 catcher.RestrictToBrowserContext(browser_context()); 147 catcher.RestrictToBrowserContext(browser_context());
148 148
149 // Return a mock socket object as a successful result to the create service 149 // Return a mock socket object as a successful result to the create service
150 // call. 150 // call.
151 BluetoothUUID service_uuid("2de497f9-ab28-49db-b6d2-066ea69f1737"); 151 BluetoothUUID service_uuid("2de497f9-ab28-49db-b6d2-066ea69f1737");
152 scoped_refptr<testing::StrictMock<MockBluetoothSocket> > mock_server_socket 152 scoped_refptr<testing::StrictMock<MockBluetoothSocket> > mock_server_socket
153 = new testing::StrictMock<MockBluetoothSocket>(); 153 = new testing::StrictMock<MockBluetoothSocket>();
154 BluetoothAdapter::ServiceOptions service_options; 154 BluetoothAdapter::ServiceOptions service_options;
155 service_options.name.reset(new std::string("MyServiceName")); 155 service_options.name.reset(new std::string("MyServiceName"));
156 EXPECT_CALL( 156 EXPECT_CALL(
157 *mock_adapter_.get(), 157 *mock_adapter_,
158 CreateRfcommService( 158 CreateRfcommService(
159 service_uuid, 159 service_uuid,
160 testing::Field(&BluetoothAdapter::ServiceOptions::name, 160 testing::Field(&BluetoothAdapter::ServiceOptions::name,
161 testing::Pointee(testing::Eq("MyServiceName"))), 161 testing::Pointee(testing::Eq("MyServiceName"))),
162 testing::_, 162 testing::_, testing::_))
163 testing::_)).WillOnce(InvokeCallbackArgument<2>(mock_server_socket)); 163 .WillOnce(InvokeCallbackArgument<2>(mock_server_socket));
164 164
165 // Since the socket is unpaused, expect a call to Accept() from the socket 165 // Since the socket is unpaused, expect a call to Accept() from the socket
166 // dispatcher. We'll immediately send back another mock socket to represent 166 // dispatcher. We'll immediately send back another mock socket to represent
167 // the client API. Further calls will return no data and behave as if 167 // the client API. Further calls will return no data and behave as if
168 // pending. 168 // pending.
169 scoped_refptr<testing::StrictMock<MockBluetoothSocket> > mock_client_socket 169 scoped_refptr<testing::StrictMock<MockBluetoothSocket> > mock_client_socket
170 = new testing::StrictMock<MockBluetoothSocket>(); 170 = new testing::StrictMock<MockBluetoothSocket>();
171 EXPECT_CALL(*mock_server_socket.get(), Accept(testing::_, testing::_)) 171 EXPECT_CALL(*mock_server_socket, Accept(testing::_, testing::_))
172 .Times(2) 172 .Times(2)
173 .WillOnce( 173 .WillOnce(
174 InvokeCallbackArgument<0>(mock_device1_.get(), mock_client_socket)) 174 InvokeCallbackArgument<0>(mock_device1_.get(), mock_client_socket))
175 .WillOnce(testing::Return()); 175 .WillOnce(testing::Return());
176 176
177 // Run the test, it sends a ready signal once it's ready for us to dispatch 177 // Run the test, it sends a ready signal once it's ready for us to dispatch
178 // a client connection to it. 178 // a client connection to it.
179 ExtensionTestMessageListener socket_listening("ready", true); 179 ExtensionTestMessageListener socket_listening("ready", true);
180 scoped_refptr<const Extension> extension( 180 scoped_refptr<const Extension> extension(
181 LoadApp("api_test/bluetooth_socket/listen")); 181 LoadApp("api_test/bluetooth_socket/listen"));
182 ASSERT_TRUE(extension.get()); 182 ASSERT_TRUE(extension.get());
183 EXPECT_TRUE(socket_listening.WaitUntilSatisfied()); 183 EXPECT_TRUE(socket_listening.WaitUntilSatisfied());
184 184
185 // Connection events are dispatched using a couple of PostTask to the UI 185 // Connection events are dispatched using a couple of PostTask to the UI
186 // thread. Waiting until idle ensures the event is dispatched to the 186 // thread. Waiting until idle ensures the event is dispatched to the
187 // receiver(s). 187 // receiver(s).
188 base::RunLoop().RunUntilIdle(); 188 base::RunLoop().RunUntilIdle();
189 ExtensionTestMessageListener listener("ready", true); 189 ExtensionTestMessageListener listener("ready", true);
190 socket_listening.Reply("go"); 190 socket_listening.Reply("go");
191 191
192 // Second stage of tests checks for error conditions, and will clean up 192 // Second stage of tests checks for error conditions, and will clean up
193 // the existing server and client sockets. 193 // the existing server and client sockets.
194 EXPECT_CALL(*mock_server_socket.get(), Disconnect(testing::_)) 194 EXPECT_CALL(*mock_server_socket, Disconnect(testing::_))
195 .WillOnce(InvokeCallbackArgument<0>()); 195 .WillOnce(InvokeCallbackArgument<0>());
196 EXPECT_CALL(*mock_server_socket.get(), Close()); 196 EXPECT_CALL(*mock_server_socket, Close());
197 197
198 EXPECT_CALL(*mock_client_socket.get(), Disconnect(testing::_)) 198 EXPECT_CALL(*mock_client_socket, Disconnect(testing::_))
199 .WillOnce(InvokeCallbackArgument<0>()); 199 .WillOnce(InvokeCallbackArgument<0>());
200 EXPECT_CALL(*mock_client_socket.get(), Close()); 200 EXPECT_CALL(*mock_client_socket, Close());
201 201
202 EXPECT_TRUE(listener.WaitUntilSatisfied()); 202 EXPECT_TRUE(listener.WaitUntilSatisfied());
203 listener.Reply("go"); 203 listener.Reply("go");
204 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message(); 204 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message();
205 } 205 }
206 206
207 IN_PROC_BROWSER_TEST_F(BluetoothSocketApiTest, PermissionDenied) { 207 IN_PROC_BROWSER_TEST_F(BluetoothSocketApiTest, PermissionDenied) {
208 ResultCatcher catcher; 208 ResultCatcher catcher;
209 catcher.RestrictToBrowserContext(browser_context()); 209 catcher.RestrictToBrowserContext(browser_context());
210 210
211 // Run the test. 211 // Run the test.
212 scoped_refptr<const Extension> extension( 212 scoped_refptr<const Extension> extension(
213 LoadApp("api_test/bluetooth_socket/permission_denied")); 213 LoadApp("api_test/bluetooth_socket/permission_denied"));
214 ASSERT_TRUE(extension.get()); 214 ASSERT_TRUE(extension.get());
215 215
216 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message(); 216 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message();
217 } 217 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698