public void Fade_with_high_value_should_fadeIn() { var times = 0; const int toIntensity = 255; _arduino.Setup(a => a.AnalogWrite(Pin, It.IsAny <int>())).Callback(() => { times++; }).Verifiable(); _led.Fade(toIntensity); for (int i = 0; i < toIntensity - 1; i++) { _timer.Tick(); } _led.Intensity.Should().Equal(toIntensity); times.Should().Equal(255); }
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)); }