public void ToByteArrayTest() { // arrange var testee = new CardRelayState(8, 1); testee.CardState[0] = true; testee.CardState[1] = false; testee.CardState[2] = false; testee.CardState[3] = false; testee.CardState[4] = true; testee.CardState[5] = true; testee.CardState[6] = false; testee.CardState[7] = false; // act var result = testee.ToByteArray()[0]; // assert Assert.AreEqual(Convert.ToByte(49), result); }
/// <summary> /// Transmit a "SetPort" Command /// </summary> /// <param name="newState">The new state.</param> /// <returns>card response frame</returns> public Conrad8RelayCardResponseFrame SetPortCommand(CardRelayState newState) { // submit command return SendCommandToCard(this.port, (int)RequestCommand.SetPort, (byte)newState.CardAddress, newState.ToByteArray()[0]); }
/// <summary> /// Transmit a "Toggle" command /// </summary> /// <param name="toggleState">Card state to be toggled.</param> /// <returns>relay card state</returns> public RelayCardStateResponse ToggleCommand(CardRelayState toggleState) { var result = new RelayCardStateResponse { CardResponseFrame = SendCommandToCard( this.port, (int)RequestCommand.Toggle, (byte)toggleState.CardAddress, toggleState.ToByteArray()[0]) }; result.RelayState = new CardRelayState(ConstNumberOfCardPorts, result.CardResponseFrame.AddressByte); result.RelayState.FromByte(result.CardResponseFrame.DataByte); return result; }
public void GetPortCommandTest() { // arrange var measureRelayState = new CardRelayState(Conrad8RelayCard.ConstNumberOfCardPorts, ConstTesteeCardAddress, 1, 0, 0, 0, 0, 0, 1, 0); this.testee.SetPortCommand(new CardRelayState(Conrad8RelayCard.ConstNumberOfCardPorts, ConstTesteeCardAddress, 0, 0, 0, 0, 0, 0, 0, 1)); this.testee.SetPortCommand(measureRelayState); // act var result = this.testee.GetPortCommand(ConstTesteeCardAddress); // assert Assert.AreEqual(65, result.CardResponseFrame.DataByte); Assert.AreEqual(measureRelayState.ToByteArray(), result.RelayState.ToByteArray()); }