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

Side by Side Diff: content/shell/browser/layout_test/layout_test_bluetooth_adapter_provider.cc

Issue 2014473002: bluetooth: Web Bluetooth can filter by empty device names, doesn't leak MACs. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@bt-GetNameOrEmpty-
Patch Set: addressed nits Created 4 years, 4 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 "content/shell/browser/layout_test/layout_test_bluetooth_adapter_provid er.h" 5 #include "content/shell/browser/layout_test/layout_test_bluetooth_adapter_provid er.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/bind_helpers.h" 10 #include "base/bind_helpers.h"
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after
160 if (fake_adapter_name == "GlucoseHeartRateAdapter") 160 if (fake_adapter_name == "GlucoseHeartRateAdapter")
161 return GetGlucoseHeartRateAdapter(); 161 return GetGlucoseHeartRateAdapter();
162 if (fake_adapter_name == "UnicodeDeviceAdapter") 162 if (fake_adapter_name == "UnicodeDeviceAdapter")
163 return GetUnicodeDeviceAdapter(); 163 return GetUnicodeDeviceAdapter();
164 if (fake_adapter_name == "MissingServiceHeartRateAdapter") 164 if (fake_adapter_name == "MissingServiceHeartRateAdapter")
165 return GetMissingServiceHeartRateAdapter(); 165 return GetMissingServiceHeartRateAdapter();
166 if (fake_adapter_name == "MissingCharacteristicHeartRateAdapter") 166 if (fake_adapter_name == "MissingCharacteristicHeartRateAdapter")
167 return GetMissingCharacteristicHeartRateAdapter(); 167 return GetMissingCharacteristicHeartRateAdapter();
168 if (fake_adapter_name == "HeartRateAdapter") 168 if (fake_adapter_name == "HeartRateAdapter")
169 return GetHeartRateAdapter(); 169 return GetHeartRateAdapter();
170 if (fake_adapter_name == "EmptyNameHeartRateAdapter")
171 return GetEmptyNameHeartRateAdapter();
172 if (fake_adapter_name == "NoNameHeartRateAdapter")
173 return GetNoNameHeartRateAdapter();
170 if (fake_adapter_name == "TwoHeartRateServicesAdapter") 174 if (fake_adapter_name == "TwoHeartRateServicesAdapter")
171 return GetTwoHeartRateServicesAdapter(); 175 return GetTwoHeartRateServicesAdapter();
172 if (fake_adapter_name == "DisconnectingHeartRateAdapter") 176 if (fake_adapter_name == "DisconnectingHeartRateAdapter")
173 return GetDisconnectingHeartRateAdapter(); 177 return GetDisconnectingHeartRateAdapter();
174 if (fake_adapter_name == "DisconnectingDuringServiceRetrievalAdapter") 178 if (fake_adapter_name == "DisconnectingDuringServiceRetrievalAdapter")
175 return GetServicesDiscoveredAfterReconnectionAdapter(true /* disconnect */); 179 return GetServicesDiscoveredAfterReconnectionAdapter(true /* disconnect */);
176 if (fake_adapter_name == "ServicesDiscoveredAfterReconnectionAdapter") 180 if (fake_adapter_name == "ServicesDiscoveredAfterReconnectionAdapter")
177 return GetServicesDiscoveredAfterReconnectionAdapter( 181 return GetServicesDiscoveredAfterReconnectionAdapter(
178 false /* disconnect */); 182 false /* disconnect */);
179 if (fake_adapter_name == "BlacklistTestAdapter") 183 if (fake_adapter_name == "BlacklistTestAdapter")
(...skipping 269 matching lines...) Expand 10 before | Expand all | Expand 10 after
449 device->AddMockService(GetGenericAccessService(device.get())); 453 device->AddMockService(GetGenericAccessService(device.get()));
450 device->AddMockService(GetHeartRateService(adapter.get(), device.get())); 454 device->AddMockService(GetHeartRateService(adapter.get(), device.get()));
451 455
452 adapter->AddMockDevice(std::move(device)); 456 adapter->AddMockDevice(std::move(device));
453 457
454 return adapter; 458 return adapter;
455 } 459 }
456 460
457 // static 461 // static
458 scoped_refptr<NiceMockBluetoothAdapter> 462 scoped_refptr<NiceMockBluetoothAdapter>
463 LayoutTestBluetoothAdapterProvider::GetEmptyNameHeartRateAdapter() {
464 scoped_refptr<NiceMockBluetoothAdapter> adapter(GetEmptyAdapter());
465 std::unique_ptr<NiceMockBluetoothDevice> device(
466 GetHeartRateDevice(adapter.get(), /* device_name */ ""));
467
468 // TODO(ortuno): Implement the rest of the service's characteristics
469 // See: http://crbug.com/529975
470
471 device->AddMockService(GetGenericAccessService(device.get()));
472 device->AddMockService(GetHeartRateService(adapter.get(), device.get()));
473
474 adapter->AddMockDevice(std::move(device));
475
476 return adapter;
477 }
478
479 // static
480 scoped_refptr<NiceMockBluetoothAdapter>
481 LayoutTestBluetoothAdapterProvider::GetNoNameHeartRateAdapter() {
482 scoped_refptr<NiceMockBluetoothAdapter> adapter(GetEmptyAdapter());
483 std::unique_ptr<NiceMockBluetoothDevice> device(
484 GetHeartRateDevice(adapter.get(), /* device_name */ nullptr));
485
486 // TODO(ortuno): Implement the rest of the service's characteristics
487 // See: http://crbug.com/529975
488
489 device->AddMockService(GetGenericAccessService(device.get()));
490 device->AddMockService(GetHeartRateService(adapter.get(), device.get()));
491
492 adapter->AddMockDevice(std::move(device));
493
494 return adapter;
495 }
496
497 // static
498 scoped_refptr<NiceMockBluetoothAdapter>
459 LayoutTestBluetoothAdapterProvider::GetTwoHeartRateServicesAdapter() { 499 LayoutTestBluetoothAdapterProvider::GetTwoHeartRateServicesAdapter() {
460 scoped_refptr<NiceMockBluetoothAdapter> adapter(GetEmptyAdapter()); 500 scoped_refptr<NiceMockBluetoothAdapter> adapter(GetEmptyAdapter());
461 std::unique_ptr<NiceMockBluetoothDevice> device( 501 std::unique_ptr<NiceMockBluetoothDevice> device(
462 GetHeartRateDevice(adapter.get())); 502 GetHeartRateDevice(adapter.get()));
463 503
464 device->AddMockService(GetGenericAccessService(device.get())); 504 device->AddMockService(GetGenericAccessService(device.get()));
465 505
466 // First Heart Rate Service has one Heart Rate Measurement characteristic 506 // First Heart Rate Service has one Heart Rate Measurement characteristic
467 // and one Body Sensor Location characteristic. 507 // and one Body Sensor Location characteristic.
468 std::unique_ptr<NiceMockBluetoothGattService> first_heart_rate( 508 std::unique_ptr<NiceMockBluetoothGattService> first_heart_rate(
(...skipping 330 matching lines...) Expand 10 before | Expand all | Expand 10 after
799 839
800 ON_CALL(*device, CreateGattConnection(_, _)) 840 ON_CALL(*device, CreateGattConnection(_, _))
801 .WillByDefault(RunCallback<1 /* error_callback */>(error_code)); 841 .WillByDefault(RunCallback<1 /* error_callback */>(error_code));
802 842
803 return device; 843 return device;
804 } 844 }
805 845
806 // static 846 // static
807 std::unique_ptr<NiceMockBluetoothDevice> 847 std::unique_ptr<NiceMockBluetoothDevice>
808 LayoutTestBluetoothAdapterProvider::GetHeartRateDevice( 848 LayoutTestBluetoothAdapterProvider::GetHeartRateDevice(
809 MockBluetoothAdapter* adapter) { 849 MockBluetoothAdapter* adapter,
850 const char* device_name) {
810 BluetoothDevice::UUIDList uuids; 851 BluetoothDevice::UUIDList uuids;
811 uuids.push_back(BluetoothUUID(kGenericAccessServiceUUID)); 852 uuids.push_back(BluetoothUUID(kGenericAccessServiceUUID));
812 uuids.push_back(BluetoothUUID(kHeartRateServiceUUID)); 853 uuids.push_back(BluetoothUUID(kHeartRateServiceUUID));
813 854
814 return GetConnectableDevice(adapter, "Heart Rate Device", uuids); 855 return GetConnectableDevice(adapter, device_name, uuids);
815 } 856 }
816 857
817 // Services 858 // Services
818 859
819 // static 860 // static
820 std::unique_ptr<NiceMockBluetoothGattService> 861 std::unique_ptr<NiceMockBluetoothGattService>
821 LayoutTestBluetoothAdapterProvider::GetBaseGATTService( 862 LayoutTestBluetoothAdapterProvider::GetBaseGATTService(
822 const std::string& identifier, 863 const std::string& identifier,
823 MockBluetoothDevice* device, 864 MockBluetoothDevice* device,
824 const std::string& uuid) { 865 const std::string& uuid) {
(...skipping 334 matching lines...) Expand 10 before | Expand all | Expand 10 after
1159 return BluetoothUUID(); 1200 return BluetoothUUID();
1160 } 1201 }
1161 1202
1162 // static 1203 // static
1163 std::string LayoutTestBluetoothAdapterProvider::makeMACAddress(uint64_t addr) { 1204 std::string LayoutTestBluetoothAdapterProvider::makeMACAddress(uint64_t addr) {
1164 return BluetoothDevice::CanonicalizeAddress( 1205 return BluetoothDevice::CanonicalizeAddress(
1165 base::StringPrintf("%012" PRIx64, addr)); 1206 base::StringPrintf("%012" PRIx64, addr));
1166 } 1207 }
1167 1208
1168 } // namespace content 1209 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698