コード例 #1
0
        public void Create_ForInvokedWithCharacteristics_AddsDpg(
            DeskCharacteristicsCreator sut,
            IDeskCharacteristics characteristics,
            IDevice device,
            [Freeze] IDpg characteristic)
        {
            characteristics.WithCharacteristics(Arg.Any <DeskCharacteristicKey> ( ),
                                                Arg.Any <ICharacteristicBase> ( ))
            .Returns(characteristics);

            sut.Create(characteristics,
                       device);

            characteristics.Received( )
            .WithCharacteristics(DeskCharacteristicKey.Dpg,
                                 characteristic);
        }
コード例 #2
0
        /// <inheritdoc />
        public void Create(
            IDeskCharacteristics characteristics,
            IDevice device)
        {
            Guard.ArgumentNotNull(device,
                                  nameof(device));
            Guard.ArgumentNotNull(characteristics,
                                  nameof(characteristics));

            _logger.Debug($"[{device.Id}] Creating desk characteristics {characteristics}");

            characteristics.WithCharacteristics(DeskCharacteristicKey.GenericAccess,
                                                _baseFactory.Create <IGenericAccess> (device))
            .WithCharacteristics(DeskCharacteristicKey.GenericAttribute,
                                 _baseFactory.Create <IGenericAttribute> (device))
            .WithCharacteristics(DeskCharacteristicKey.ReferenceInput,
                                 _baseFactory.Create <IReferenceInput> (device))
            .WithCharacteristics(DeskCharacteristicKey.ReferenceOutput,
                                 _baseFactory.Create <IReferenceOutput> (device))
            .WithCharacteristics(DeskCharacteristicKey.Dpg,
                                 _baseFactory.Create <IDpg> (device))
            .WithCharacteristics(DeskCharacteristicKey.Control,
                                 _baseFactory.Create <IControl> (device));
        }