private static void RideTheHood(ILogger logger, IWrapGPIO gpioWrapper) { var lFNumber = 1; var lBNumber = 1; var rFNumber = 1; var rBNumber = 1; IPin lF = new DOPin(lFNumber); IPin lB = new DOPin(lBNumber); IPin rF = new DOPin(rFNumber); IPin rB = new DOPin(rBNumber); var rider = new Rider(gpioWrapper, lF, rF, lB, rB, logger); rider.MoveAhead(); Thread.Sleep(2000); rider.MoveBack(); Thread.Sleep(2000); rider.TurnLeft(); Thread.Sleep(2000); rider.TurnRight(); Thread.Sleep(2000); rider.TurnLeftInPlace(); Thread.Sleep(2000); rider.TurnRightInPlace(); Thread.Sleep(2000); rider.Stop(); }
public void When_GetDistanceIsCalled_Then_DistanceIsReturned(IWrapGPIO gpioStub, SonicSensorDriver sut) { //a var echoPin = sut.EchoPin; double readedDistance = 0; double milisToSleep = 3; var measuringThread = new Thread(() => { //Thread.Sleep(1000); //gpioStub.DigitalRead(echoPin).Returns(GPIO.GPIOpinvalue.Low); //Thread.Sleep(1000); gpioStub.DigitalRead(echoPin).Returns(GPIO.GPIOpinvalue.High); Thread.Sleep((int)milisToSleep); gpioStub.DigitalRead(echoPin).Returns(GPIO.GPIOpinvalue.Low); }); //aa measuringThread.Start(); readedDistance = sut.GetDistance(); //aaa //var measuredTime = sut.elapsedTime.TotalMilliseconds; Assert.Equal(milisToSleep, measuredTime); }
public void When_Ctor_IsCalledWithProperParameters_Then_NoExceptionIsThrown(IWrapGPIO gpioWrapperStub, IWrapTiming timingWrapperStub) { //a //aa, aaa new SonicSensorDriver(gpioWrapperStub, timingWrapperStub); }
public Rider(IWrapGPIO gpio, IPin leftPin, IPin rightPin, IPin leftBackward, IPin rightBackward, ILogger logger) { _gpio = gpio; _leftPin = leftPin; _leftBackward = leftBackward; _rightPin = rightPin; _rightBackward = rightBackward; log = logger; }
public Rider(GPIOWrapper gpio, IPin leftPin, IPin rightPin, ILogger logger) { _gpio = gpio; _leftPin = leftPin; _leftBackward = null; _rightPin = rightPin; _rightBackward = null; log = logger; }
public Rider(GPIOWrapper gpio, IPin leftForward, IPin rightForward, IPin leftBackward, IPin rightBackward, ILogger logger) { _gpio = gpio; _leftForward = leftForward; _leftBackward = leftBackward; _rightForward = rightForward; _rightBackward = rightBackward; log = logger; }
public void When_Configure_Then_TriggerPin_IsSetToLow(IWrapGPIO gpioSpy, SonicSensorDriver sut) { //a var triggerPin = sut.TriggerPin; //aa sut.Configure(); //aaa gpioSpy.Received(1).DigitalWrite(triggerPin, GPIO.GPIOpinvalue.Low); }
public void When_Configure_Then_PinModesAreReSetted(IWrapGPIO gpioSpy, SonicSensorDriver sut) { //a //aa sut.Configure(); //aaa gpioSpy.Received(1).PinMode(sut.EchoPin); gpioSpy.Received(1).PinMode(sut.TriggerPin); }
private static void DoSonicMeasuring(IWrapGPIO gpioWrapper, IWrapTiming timingWrapper, int delay) { var sonicSensorDriver = new SonicSensorDriver(gpioWrapper, timingWrapper); sonicSensorDriver.Configure(); do { sonicSensorDriver.GetDistance(); Thread.Sleep(delay); }while (true); }
public void When_GetDistanceIsCalled_Then_DelaysAreCalled(IWrapGPIO gpioStub, IWrapTiming timingSpy, SonicSensorDriver sut) { //a var echoPin = sut.EchoPin; var measuringThread = new Thread(() => sut.GetDistance()); //aa measuringThread.Start(); gpioStub.DigitalRead(echoPin).Returns(GPIO.GPIOpinvalue.High); Thread.Sleep(1); gpioStub.DigitalRead(echoPin).Returns(GPIO.GPIOpinvalue.Low); //aaa timingSpy.Received(1).DelayMicroseconds(5); timingSpy.Received(1).DelayMicroseconds(10); }
public HighPrecisionTimer2(IWrapGPIO gpioWrapper) { _gpioWrapper = gpioWrapper ?? throw new ArgumentNullException(nameof(gpioWrapper)); }
public void When_Ctor_IsCalledWithWrongPinType_Then_ValidationExceptionIsThrown(IWrapGPIO gpioWrapperDummy, IWrapTiming timingWrapperDummy, IPin triggerPinDummy, DOPin echoPinStub) { //a Action action = () => new SonicSensorDriver(echoPinStub, triggerPinDummy, gpioWrapperDummy, timingWrapperDummy); //aa //aaa Assert.Throws <PinStateValidationException>(action); }