Esempio n. 1
0
        public void TestConstructor()
        {
            _sut = new PegasusAstroPowerSwitch(1)
            {
                Sdk = _mockSdk.Object
            };

            Assert.That(_sut.Id, Is.EqualTo(1));
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        public async Task TestSetValue(double value, string expectedCommand)
        {
            _sut = new PegasusAstroPowerSwitch(1)
            {
                Sdk = _mockSdk.Object
            };
            var command = string.Empty;

            _mockSdk.Setup(m => m.SendCommand <SetPowerResponse>(It.IsAny <SetPowerCommand>()))
            .Callback <ICommand>(arg => { command = arg.CommandString; });
            _sut.TargetValue = value;
            await _sut.SetValue();

            Assert.That(command, Is.EqualTo(expectedCommand));
        }
Esempio n. 4
0
        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));
        }