예제 #1
0
 private static void Led()
 {
     using (var board = new Arduino.Models.Arduino {
         Debug = true
     })
     {
         var led = new Led(board, 13);
         led.StrobeOn(20);
         Thread.Sleep(3.Seconds());
         led.Off();
     }
 }
예제 #2
0
        public void StrobeOn_should_start_timer()
        {
            A.CallTo(() => _arduino.DigitalWrite(Pin, DigitalPin.High)).DoesNothing();
            A.CallTo(() => _arduino.DigitalWrite(Pin, DigitalPin.Low)).DoesNothing();
            _led.On();

            _led.StrobeOn();
            _led.State.ShouldEqual(LedState.Off);
            _timer.Tick();
            _led.State.ShouldEqual(LedState.On);
            A.CallTo(() => _arduino.DigitalWrite(Pin, DigitalPin.High)).MustHaveHappened(Repeated.Exactly.Twice);
            A.CallTo(() => _arduino.DigitalWrite(Pin, DigitalPin.Low)).MustHaveHappened(Repeated.Exactly.Twice);
        }
예제 #3
0
        public void StrobeOn_should_start_timer()
        {
            _arduino.Setup(a => a.DigitalWrite(Pin, DigitalPin.High)).Verifiable();
            _arduino.Setup(a => a.DigitalWrite(Pin, DigitalPin.Low)).Verifiable();
            _led.On();

            _led.StrobeOn();
            _led.State.Should().Equal(LedState.Off);
            _timer.Tick();
            _led.State.Should().Equal(LedState.On);
            _arduino.Verify(a => a.DigitalWrite(Pin, DigitalPin.High), Times.Exactly(2));
            _arduino.Verify(a => a.DigitalWrite(Pin, DigitalPin.Low), Times.Exactly(2));
        }