예제 #1
0
        public void ConstructorTest()
        {
            var sut = new ReadDisplayCommand(0, 0);

            sut.CommandCode.Should().Be(0x5d);
            sut.AcknowledgeCode.Should().Be(0x5d);
            sut.SubCommandCode.Should().Be(0x0d);
            sut.RequiredBaudRate.Should().Be(250000);
            sut.Timeout.Should().Be(1000);
        }
예제 #2
0
        public void Successful_Scenario_Test(ushort address, byte chunkSize)
        {
            var addressBytes = GetBytes(address);

            var chunk = new byte[chunkSize];
            var rand = new Random();
            for (var i = 0; i < chunk.Length; i++) {
                chunk[i] = (byte)rand.Next(byte.MaxValue);
            }

            SetupWrite(ftdiMock, new byte[] { 0x5d }, new byte[] { 0x0d }, new byte[] { addressBytes[0], addressBytes[1], chunkSize });
            SetupRead(ftdiMock, new byte[] { 0x5d }, chunk);

            var sut = new ReadDisplayCommand(address, chunkSize);
            var result = sut.Execute(ftdiMock.Object);

            result.Success.Should().BeTrue();
            result.Data.Should().BeEquivalentTo(chunk);
        }