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

Unified Diff: content/browser/bluetooth/bluetooth_allowed_devices_map_unittest.cc

Issue 2459523002: bluetooth: Return specific error if getPrimaryServices() is called without requesting access to any… (Closed)
Patch Set: s/foo/TestName/ 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/bluetooth/bluetooth_allowed_devices_map_unittest.cc
diff --git a/content/browser/bluetooth/bluetooth_allowed_devices_map_unittest.cc b/content/browser/bluetooth/bluetooth_allowed_devices_map_unittest.cc
index 1c4b18ebbcd34908dd1c850d7904e1a690122791..907d40d66327ea389a40493fcfb4c1eef2b77e33 100644
--- a/content/browser/bluetooth/bluetooth_allowed_devices_map_unittest.cc
+++ b/content/browser/bluetooth/bluetooth_allowed_devices_map_unittest.cc
@@ -19,6 +19,8 @@ const url::Origin kTestOrigin2(GURL("https://www.example2.com"));
const std::string kDeviceAddress1 = "00:00:00";
const std::string kDeviceAddress2 = "11:11:11";
+const std::string kDeviceName = "TestName";
+
const char kGlucoseUUIDString[] = "00001808-0000-1000-8000-00805f9b34fb";
const char kHeartRateUUIDString[] = "0000180d-0000-1000-8000-00805f9b34fb";
const char kBatteryServiceUUIDString[] = "0000180f-0000-1000-8000-00805f9b34fb";
@@ -179,6 +181,29 @@ TEST_F(BluetoothAllowedDevicesMapTest, RemoveDeviceFromMap) {
allowed_devices_map.GetDeviceAddress(kTestOrigin1, device_id));
}
+TEST_F(BluetoothAllowedDevicesMapTest, NoPermissionForAnyService) {
+ BluetoothAllowedDevicesMap allowed_devices_map;
+
+ // Setup device.
+ blink::mojom::WebBluetoothRequestDeviceOptionsPtr options =
+ blink::mojom::WebBluetoothRequestDeviceOptions::New();
+ blink::mojom::WebBluetoothScanFilterPtr scanFilter =
+ blink::mojom::WebBluetoothScanFilter::New();
+
+ scanFilter->name = kDeviceName;
+ options->filters.push_back(scanFilter.Clone());
+
+ // Add to map.
+ const WebBluetoothDeviceId device_id =
+ allowed_devices_map.AddDevice(kTestOrigin1, kDeviceAddress1, options);
+
+ // Try to access at least one service.
+ EXPECT_FALSE(allowed_devices_map.IsOriginAllowedToAccessAtLeastOneService(
+ kTestOrigin1, device_id));
+ EXPECT_FALSE(allowed_devices_map.IsOriginAllowedToAccessService(
+ kTestOrigin1, device_id, kGlucoseUUID));
+}
+
TEST_F(BluetoothAllowedDevicesMapTest, AllowedServices_OneOriginOneDevice) {
BluetoothAllowedDevicesMap allowed_devices_map;
@@ -204,6 +229,8 @@ TEST_F(BluetoothAllowedDevicesMapTest, AllowedServices_OneOriginOneDevice) {
allowed_devices_map.AddDevice(kTestOrigin1, kDeviceAddress1, options);
// Access allowed services.
+ EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessAtLeastOneService(
+ kTestOrigin1, device_id1));
EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessService(
kTestOrigin1, device_id1, kGlucoseUUID));
EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessService(
@@ -218,6 +245,8 @@ TEST_F(BluetoothAllowedDevicesMapTest, AllowedServices_OneOriginOneDevice) {
// Try to access allowed services after removing device.
allowed_devices_map.RemoveDevice(kTestOrigin1, kDeviceAddress1);
+ EXPECT_FALSE(allowed_devices_map.IsOriginAllowedToAccessAtLeastOneService(
+ kTestOrigin1, device_id1));
EXPECT_FALSE(allowed_devices_map.IsOriginAllowedToAccessService(
kTestOrigin1, device_id1, kGlucoseUUID));
EXPECT_FALSE(allowed_devices_map.IsOriginAllowedToAccessService(
@@ -236,6 +265,8 @@ TEST_F(BluetoothAllowedDevicesMapTest, AllowedServices_OneOriginOneDevice) {
allowed_devices_map.AddDevice(kTestOrigin1, kDeviceAddress1, options2);
// Access allowed services.
+ EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessAtLeastOneService(
+ kTestOrigin1, device_id2));
EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessService(
kTestOrigin1, device_id2, kGlucoseUUID));
EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessService(
@@ -286,11 +317,15 @@ TEST_F(BluetoothAllowedDevicesMapTest, AllowedServices_OneOriginTwoDevices) {
allowed_devices_map.AddDevice(kTestOrigin1, kDeviceAddress2, options2);
// Access allowed services.
+ EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessAtLeastOneService(
+ kTestOrigin1, device_id1));
EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessService(
kTestOrigin1, device_id1, kGlucoseUUID));
EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessService(
kTestOrigin1, device_id1, kHeartRateUUID));
+ EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessAtLeastOneService(
+ kTestOrigin1, device_id2));
EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessService(
kTestOrigin1, device_id2, kBatteryServiceUUID));
EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessService(
@@ -343,11 +378,15 @@ TEST_F(BluetoothAllowedDevicesMapTest, AllowedServices_TwoOriginsOneDevice) {
allowed_devices_map.AddDevice(kTestOrigin2, kDeviceAddress1, options2);
// Access allowed services.
+ EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessAtLeastOneService(
+ kTestOrigin1, device_id1));
EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessService(
kTestOrigin1, device_id1, kGlucoseUUID));
EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessService(
kTestOrigin1, device_id1, kHeartRateUUID));
+ EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessAtLeastOneService(
+ kTestOrigin2, device_id2));
EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessService(
kTestOrigin2, device_id2, kBatteryServiceUUID));
EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessService(
@@ -359,6 +398,8 @@ TEST_F(BluetoothAllowedDevicesMapTest, AllowedServices_TwoOriginsOneDevice) {
EXPECT_FALSE(allowed_devices_map.IsOriginAllowedToAccessService(
kTestOrigin1, device_id1, kBloodPressureUUID));
+ EXPECT_FALSE(allowed_devices_map.IsOriginAllowedToAccessAtLeastOneService(
+ kTestOrigin1, device_id2));
EXPECT_FALSE(allowed_devices_map.IsOriginAllowedToAccessService(
kTestOrigin1, device_id2, kGlucoseUUID));
EXPECT_FALSE(allowed_devices_map.IsOriginAllowedToAccessService(
@@ -373,6 +414,8 @@ TEST_F(BluetoothAllowedDevicesMapTest, AllowedServices_TwoOriginsOneDevice) {
EXPECT_FALSE(allowed_devices_map.IsOriginAllowedToAccessService(
kTestOrigin2, device_id2, kHeartRateUUID));
+ EXPECT_FALSE(allowed_devices_map.IsOriginAllowedToAccessAtLeastOneService(
+ kTestOrigin2, device_id1));
EXPECT_FALSE(allowed_devices_map.IsOriginAllowedToAccessService(
kTestOrigin2, device_id1, kGlucoseUUID));
EXPECT_FALSE(allowed_devices_map.IsOriginAllowedToAccessService(
@@ -418,6 +461,8 @@ TEST_F(BluetoothAllowedDevicesMapTest, MergeServices) {
EXPECT_EQ(device_id1, device_id2);
+ EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessAtLeastOneService(
+ kTestOrigin1, device_id1));
EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessService(
kTestOrigin1, device_id1, kGlucoseUUID));
EXPECT_TRUE(allowed_devices_map.IsOriginAllowedToAccessService(
« no previous file with comments | « content/browser/bluetooth/bluetooth_allowed_devices_map.cc ('k') | content/browser/bluetooth/web_bluetooth_service_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698