public DeskHeightAndSpeed([NotNull] ILogger logger,
                                  [NotNull] IScheduler scheduler,
                                  [NotNull] IReferenceOutput referenceOutput,
                                  [NotNull] IRawValueToHeightAndSpeedConverter converter,
                                  [NotNull] ISubject <uint> subjectHeight,
                                  [NotNull] ISubject <int> subjectSpeed,
                                  [NotNull] ISubject <HeightSpeedDetails> subjectHeightAndSpeed)
        {
            Guard.ArgumentNotNull(logger,
                                  nameof(logger));
            Guard.ArgumentNotNull(scheduler,
                                  nameof(scheduler));
            Guard.ArgumentNotNull(referenceOutput,
                                  nameof(referenceOutput));
            Guard.ArgumentNotNull(converter,
                                  nameof(converter));
            Guard.ArgumentNotNull(subjectHeight,
                                  nameof(subjectHeight));
            Guard.ArgumentNotNull(subjectSpeed,
                                  nameof(subjectSpeed));
            Guard.ArgumentNotNull(subjectHeightAndSpeed,
                                  nameof(subjectHeightAndSpeed));

            _logger                = logger;
            _scheduler             = scheduler;
            _referenceOutput       = referenceOutput;
            _converter             = converter;
            _subjectHeight         = subjectHeight;
            _subjectSpeed          = subjectSpeed;
            _subjectHeightAndSpeed = subjectHeightAndSpeed;
        }
示例#2
0
 private void SetTryConvert(
     IRawValueToHeightAndSpeedConverter converter,
     bool result,
     uint height,
     int speed)
 {
     converter.TryConvert(Arg.Any <IEnumerable <byte> > ( ),
                          out var _,
                          out var _)
     .Returns(x =>
     {
         x [1] = height;
         x [2] = speed;
         return(result);
     });
 }