public BluetoothMessageCommand(BluetoothLeCharacteristic characteristic, byte[] data, int length)
 {
     Characteristic = characteristic;
     Data           = data;
     Length         = length;
     IsWriteCommand = true;
     IsSent         = false;
 }
        public void WhenSettingByteValueCharacteristic_ShouldSetByteValueInDeviceModel()
        {
            // Arrange

            var guid           = Guid.NewGuid();
            var characteristic = new BluetoothLeCharacteristic <Xdk>(guid, "TestValue").WithSetter((Xdk, value) => Xdk.NoiseSensor.DbSpl.Value = value.TryGetByte());
            var testXdk        = new Xdk();
            var byteArray      = new byte[] { 8 };

            // Act
            characteristic.SetValue(testXdk, byteArray);

            // Assert
            Assert.That(testXdk.NoiseSensor.DbSpl.Value, Is.EqualTo(8));
        }
        public void WhenSettingUInt32ValueCharacteristic_ShouldSetUInt32ValueInDeviceModel()
        {
            // Arrange

            var          guid           = Guid.NewGuid();
            var          characteristic = new BluetoothLeCharacteristic <Xdk>(guid, "TestValue").WithSetter((Xdk, value) => Xdk.LightSensor.MilliLux.Value = value.TryGetUInt32());
            var          testXdk        = new Xdk();
            const UInt32 intValue       = UInt32.MaxValue;
            var          byteArray      = BitConverter.GetBytes(intValue);

            // Act
            characteristic.SetValue(testXdk, byteArray);

            // Assert
            Assert.That(testXdk.LightSensor.MilliLux.Value, Is.EqualTo(intValue));
        }
 public BluetoothMessageCommand(BluetoothLeCharacteristic characteristic)
 {
     Characteristic = characteristic;
     IsWriteCommand = false;
     IsSent         = false;
 }