| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/test/mock_bluetooth_cbcharacteristic_mac.h" | 5 #include "device/bluetooth/test/mock_bluetooth_cbcharacteristic_mac.h" |
| 6 | 6 |
| 7 #include "base/mac/foundation_util.h" | 7 #include "base/mac/foundation_util.h" |
| 8 #include "base/mac/scoped_nsobject.h" | 8 #include "base/mac/scoped_nsobject.h" |
| 9 #include "device/bluetooth/bluetooth_gatt_characteristic.h" | 9 #include "device/bluetooth/bluetooth_gatt_characteristic.h" |
| 10 | 10 |
| (...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 82 BluetoothGattCharacteristic::PROPERTY_WRITE_ENCRYPTED_AUTHENTICATED) { | 82 BluetoothGattCharacteristic::PROPERTY_WRITE_ENCRYPTED_AUTHENTICATED) { |
| 83 result = | 83 result = |
| 84 AddCBCharacteristicProperties(result, CBCharacteristicPropertyWrite); | 84 AddCBCharacteristicProperties(result, CBCharacteristicPropertyWrite); |
| 85 } | 85 } |
| 86 return result; | 86 return result; |
| 87 } | 87 } |
| 88 } // namespace | 88 } // namespace |
| 89 } // device | 89 } // device |
| 90 | 90 |
| 91 @interface MockCBCharacteristic () { | 91 @interface MockCBCharacteristic () { |
| 92 // Owner of this instance. |
| 93 CBService* _service; |
| 92 scoped_nsobject<CBUUID> _UUID; | 94 scoped_nsobject<CBUUID> _UUID; |
| 93 CBCharacteristicProperties _cb_properties; | 95 CBCharacteristicProperties _cb_properties; |
| 96 base::scoped_nsobject<NSData> _value; |
| 94 } | 97 } |
| 95 @end | 98 @end |
| 96 | 99 |
| 97 @implementation MockCBCharacteristic | 100 @implementation MockCBCharacteristic |
| 98 | 101 |
| 99 - (instancetype)initWithCBUUID:(CBUUID*)uuid properties:(int)properties { | 102 - (instancetype)initWithService:(CBService*)service |
| 103 CBUUID:(CBUUID*)uuid |
| 104 properties:(int)properties { |
| 100 self = [super init]; | 105 self = [super init]; |
| 101 if (self) { | 106 if (self) { |
| 107 _service = service; |
| 102 _UUID.reset([uuid retain]); | 108 _UUID.reset([uuid retain]); |
| 103 _cb_properties = | 109 _cb_properties = |
| 104 device::GattCharacteristicPropertyToCBCharacteristicProperty( | 110 device::GattCharacteristicPropertyToCBCharacteristicProperty( |
| 105 properties); | 111 properties); |
| 106 } | 112 } |
| 107 return self; | 113 return self; |
| 108 } | 114 } |
| 109 | 115 |
| 110 - (BOOL)isKindOfClass:(Class)aClass { | 116 - (BOOL)isKindOfClass:(Class)aClass { |
| 111 if (aClass == [CBCharacteristic class] || | 117 if (aClass == [CBCharacteristic class] || |
| 112 [aClass isSubclassOfClass:[CBCharacteristic class]]) { | 118 [aClass isSubclassOfClass:[CBCharacteristic class]]) { |
| 113 return YES; | 119 return YES; |
| 114 } | 120 } |
| 115 return [super isKindOfClass:aClass]; | 121 return [super isKindOfClass:aClass]; |
| 116 } | 122 } |
| 117 | 123 |
| 118 - (BOOL)isMemberOfClass:(Class)aClass { | 124 - (BOOL)isMemberOfClass:(Class)aClass { |
| 119 if (aClass == [CBCharacteristic class] || | 125 if (aClass == [CBCharacteristic class] || |
| 120 [aClass isSubclassOfClass:[CBCharacteristic class]]) { | 126 [aClass isSubclassOfClass:[CBCharacteristic class]]) { |
| 121 return YES; | 127 return YES; |
| 122 } | 128 } |
| 123 return [super isKindOfClass:aClass]; | 129 return [super isKindOfClass:aClass]; |
| 124 } | 130 } |
| 125 | 131 |
| 132 - (void)simulateReadWithValue:(NSData*)value error:(NSError*)error { |
| 133 _value.reset([value copy]); |
| 134 CBPeripheral* peripheral = _service.peripheral; |
| 135 [peripheral.delegate peripheral:peripheral |
| 136 didUpdateValueForCharacteristic:self.characteristic |
| 137 error:error]; |
| 138 } |
| 139 |
| 126 - (CBUUID*)UUID { | 140 - (CBUUID*)UUID { |
| 127 return _UUID.get(); | 141 return _UUID.get(); |
| 128 } | 142 } |
| 129 | 143 |
| 130 - (CBCharacteristic*)characteristic { | 144 - (CBCharacteristic*)characteristic { |
| 131 return ObjCCast<CBCharacteristic>(self); | 145 return ObjCCast<CBCharacteristic>(self); |
| 132 } | 146 } |
| 133 | 147 |
| 148 - (CBService*)service { |
| 149 return _service; |
| 150 } |
| 151 |
| 134 - (CBCharacteristicProperties)properties { | 152 - (CBCharacteristicProperties)properties { |
| 135 return _cb_properties; | 153 return _cb_properties; |
| 136 } | 154 } |
| 137 | 155 |
| 156 - (NSData*)value { |
| 157 return _value.get(); |
| 158 } |
| 159 |
| 138 @end | 160 @end |
| OLD | NEW |