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

Side by Side Diff: device/bluetooth/bluetooth_device_unittest.cc

Issue 2377513004: bluetooth:android: Return the advertised name if advertising (Closed)
Patch Set: Format' Created 4 years, 1 month 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 "device/bluetooth/bluetooth_device.h" 5 #include "device/bluetooth/bluetooth_device.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include "base/macros.h" 9 #include "base/macros.h"
10 #include "base/run_loop.h" 10 #include "base/run_loop.h"
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after
102 ASSERT_TRUE(device); 102 ASSERT_TRUE(device);
103 // Bluetooth class information for BLE device is not available on Windows. 103 // Bluetooth class information for BLE device is not available on Windows.
104 #ifndef OS_WIN 104 #ifndef OS_WIN
105 EXPECT_EQ(0x1F00u, device->GetBluetoothClass()); 105 EXPECT_EQ(0x1F00u, device->GetBluetoothClass());
106 #endif 106 #endif
107 EXPECT_EQ(kTestDeviceAddress1, device->GetAddress()); 107 EXPECT_EQ(kTestDeviceAddress1, device->GetAddress());
108 EXPECT_EQ(BluetoothDevice::VENDOR_ID_UNKNOWN, device->GetVendorIDSource()); 108 EXPECT_EQ(BluetoothDevice::VENDOR_ID_UNKNOWN, device->GetVendorIDSource());
109 EXPECT_EQ(0, device->GetVendorID()); 109 EXPECT_EQ(0, device->GetVendorID());
110 EXPECT_EQ(0, device->GetProductID()); 110 EXPECT_EQ(0, device->GetProductID());
111 EXPECT_EQ(0, device->GetDeviceID()); 111 EXPECT_EQ(0, device->GetDeviceID());
112 EXPECT_EQ(base::UTF8ToUTF16(kTestDeviceName), device->GetNameForDisplay()); 112 // There is no advertised name in Windows.
113 // TODO(crbug.com/629456): Enable on macOS.
114 #if defined(OS_ANDROID)
115 EXPECT_EQ(base::UTF8ToUTF16(kTestDeviceAdvertisedName),
116 device->GetNameForDisplay());
117 #else
118 EXPECT_EQ(base::UTF8ToUTF16(kTestDeviceGapName), device->GetNameForDisplay());
119 #endif // defined(OS_ANDROID)
113 EXPECT_FALSE(device->IsPaired()); 120 EXPECT_FALSE(device->IsPaired());
114 UUIDSet uuids = device->GetUUIDs(); 121 UUIDSet uuids = device->GetUUIDs();
115 EXPECT_TRUE(base::ContainsKey(uuids, BluetoothUUID(kTestUUIDGenericAccess))); 122 EXPECT_TRUE(base::ContainsKey(uuids, BluetoothUUID(kTestUUIDGenericAccess)));
116 EXPECT_TRUE( 123 EXPECT_TRUE(
117 base::ContainsKey(uuids, BluetoothUUID(kTestUUIDGenericAttribute))); 124 base::ContainsKey(uuids, BluetoothUUID(kTestUUIDGenericAttribute)));
118 } 125 }
119 #endif // defined(OS_ANDROID) || defined(OS_MACOSX) || defined(OS_WIN) 126 #endif // defined(OS_ANDROID) || defined(OS_MACOSX) || defined(OS_WIN)
120 127
121 #if defined(OS_ANDROID) || defined(OS_MACOSX) || defined(OS_WIN) 128 #if defined(OS_ANDROID) || defined(OS_MACOSX) || defined(OS_WIN)
122 // Device with no advertised Service UUIDs. 129 // Device with no advertised Service UUIDs.
(...skipping 565 matching lines...) Expand 10 before | Expand all | Expand 10 after
688 // does require this step. 695 // does require this step.
689 #if !defined(OS_CHROMEOS) 696 #if !defined(OS_CHROMEOS)
690 StartLowEnergyDiscoverySession(); 697 StartLowEnergyDiscoverySession();
691 #endif 698 #endif
692 699
693 BluetoothDevice* device = SimulateLowEnergyDevice(5); 700 BluetoothDevice* device = SimulateLowEnergyDevice(5);
694 EXPECT_FALSE(device->GetName()); 701 EXPECT_FALSE(device->GetName());
695 } 702 }
696 #endif // defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_MACOSX) 703 #endif // defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_MACOSX)
697 704
705 #if defined(OS_ANDROID)
706 TEST_F(BluetoothTest, GetName_NonConnectedNonAdvertising) {
707 if (!PlatformSupportsLowEnergy()) {
708 LOG(WARNING) << "Low Energy Bluetooth unavailable, skipping unit test.";
709 return;
710 }
711 InitWithFakeAdapter();
712 StartLowEnergyDiscoverySession();
713 BluetoothDevice* device = SimulateLowEnergyDevice(1);
714
715 discovery_sessions_[0]->Stop(GetCallback(Call::EXPECTED),
716 GetErrorCallback(Call::NOT_EXPECTED));
717 ASSERT_FALSE(adapter_->IsDiscovering());
718 ASSERT_FALSE(discovery_sessions_[0]->IsActive());
719
720 EXPECT_EQ(kTestDeviceGapName, device->GetName().value());
721 }
722 #endif // defined(OS_ANDROID)
723
724 #if defined(OS_ANDROID)
725 TEST_F(BluetoothTest, GetName_ConnectedNonAdvertising) {
726 if (!PlatformSupportsLowEnergy()) {
727 LOG(WARNING) << "Low Energy Bluetooth unavailable, skipping unit test.";
728 return;
729 }
730 InitWithFakeAdapter();
731 StartLowEnergyDiscoverySession();
732 BluetoothDevice* device = SimulateLowEnergyDevice(1);
733
734 discovery_sessions_[0]->Stop(GetCallback(Call::EXPECTED),
735 GetErrorCallback(Call::NOT_EXPECTED));
736 ASSERT_FALSE(adapter_->IsDiscovering());
737 ASSERT_FALSE(discovery_sessions_[0]->IsActive());
738
739 device->CreateGattConnection(GetGattConnectionCallback(Call::EXPECTED),
740 GetConnectErrorCallback(Call::NOT_EXPECTED));
741 SimulateGattConnection(device);
742 ASSERT_TRUE(device->IsGattConnected());
743
744 EXPECT_EQ(kTestDeviceGapName, device->GetName().value());
745 }
746 #endif // defined(OS_ANDROID)
747
748 #if defined(OS_ANDROID)
749 TEST_F(BluetoothTest, GetName_NonConnectedAdvertising) {
750 if (!PlatformSupportsLowEnergy()) {
751 LOG(WARNING) << "Low Energy Bluetooth unavailable, skipping unit test.";
752 return;
753 }
754 InitWithFakeAdapter();
755 StartLowEnergyDiscoverySession();
756 BluetoothDevice* device = SimulateLowEnergyDevice(1);
757
758 EXPECT_EQ(kTestDeviceAdvertisedName, device->GetName().value());
759 }
760 #endif // defined(OS_ANDROID)
761
762 #if defined(OS_ANDROID)
763 TEST_F(BluetoothTest, GetName_ConnectedAdvertising) {
764 if (!PlatformSupportsLowEnergy()) {
765 LOG(WARNING) << "Low Energy Bluetooth unavailable, skipping unit test.";
766 return;
767 }
768 InitWithFakeAdapter();
769 StartLowEnergyDiscoverySession();
770 BluetoothDevice* device = SimulateLowEnergyDevice(1);
771
772 device->CreateGattConnection(GetGattConnectionCallback(Call::EXPECTED),
773 GetConnectErrorCallback(Call::NOT_EXPECTED));
774 SimulateGattConnection(device);
775 ASSERT_TRUE(device->IsGattConnected());
776
777 EXPECT_EQ(kTestDeviceGapName, device->GetName().value());
778 }
779 #endif // defined(OS_ANDROID)
780
698 // TODO(506415): Test GetNameForDisplay with a device with no name. 781 // TODO(506415): Test GetNameForDisplay with a device with no name.
699 // BluetoothDevice::GetAddressWithLocalizedDeviceTypeName() will run, which 782 // BluetoothDevice::GetAddressWithLocalizedDeviceTypeName() will run, which
700 // requires string resources to be loaded. For that, something like 783 // requires string resources to be loaded. For that, something like
701 // InitSharedInstance must be run. See unittest files that call that. It will 784 // InitSharedInstance must be run. See unittest files that call that. It will
702 // also require build configuration to generate string resources into a .pak 785 // also require build configuration to generate string resources into a .pak
703 // file. 786 // file.
704 787
705 #if defined(OS_ANDROID) || defined(OS_MACOSX) 788 #if defined(OS_ANDROID) || defined(OS_MACOSX)
706 // Basic CreateGattConnection test. 789 // Basic CreateGattConnection test.
707 TEST_F(BluetoothTest, CreateGattConnection) { 790 TEST_F(BluetoothTest, CreateGattConnection) {
(...skipping 622 matching lines...) Expand 10 before | Expand all | Expand 10 after
1330 1413
1331 BluetoothDevice* device2 = SimulateLowEnergyDevice(6); 1414 BluetoothDevice* device2 = SimulateLowEnergyDevice(6);
1332 EXPECT_EQ(BLUETOOTH_TRANSPORT_DUAL, device2->GetType()); 1415 EXPECT_EQ(BLUETOOTH_TRANSPORT_DUAL, device2->GetType());
1333 1416
1334 BluetoothDevice* device3 = SimulateClassicDevice(); 1417 BluetoothDevice* device3 = SimulateClassicDevice();
1335 EXPECT_EQ(BLUETOOTH_TRANSPORT_CLASSIC, device3->GetType()); 1418 EXPECT_EQ(BLUETOOTH_TRANSPORT_CLASSIC, device3->GetType());
1336 } 1419 }
1337 #endif // defined(OS_CHROMEOS) || defined(OS_LINUX) 1420 #endif // defined(OS_CHROMEOS) || defined(OS_LINUX)
1338 1421
1339 } // namespace device 1422 } // namespace device
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698