public async Task TestPollSerialPortClosed() { _sut = new PegasusAstroPowerSwitch(1) { Sdk = _mockSdk.Object }; _mockSdk.Setup(m => m.SendCommand <StatusResponse>(It.IsAny <StatusCommand>())) .Throws(new SerialPortClosedException()); var result = await _sut.Poll(); Assert.That(result, Is.False); }
public async Task TestPoll(string deviceResponse, double expected, double amps, bool overCurrent) { _sut = new PegasusAstroPowerSwitch(1) { Sdk = _mockSdk.Object }; var response = new StatusResponse { DeviceResponse = deviceResponse }; _mockSdk.Setup(m => m.SendCommand <StatusResponse>(It.IsAny <StatusCommand>())) .Returns(Task.FromResult(response)); var result = await _sut.Poll(); Assert.That(result, Is.True); Assert.That(_sut.Value, Is.EqualTo(expected)); Assert.That(_sut.CurrentAmps, Is.EqualTo(amps)); Assert.That(_sut.ExcessCurrent, Is.EqualTo(overCurrent)); }