From: AeonLucid Date: Mon, 19 Oct 2020 14:59:03 +0000 (+0200) Subject: Fix tests X-Git-Tag: v1.2.2~96^2~59 X-Git-Url: https://git.deb.at/?a=commitdiff_plain;h=3b873d8209afa2ffa0b09ffb467d8a5b9b964ad4;p=rhonda%2Fimpostor.git Fix tests --- diff --git a/src/Impostor.Tests/Hazel/BufferMessageReaderTests.cs b/src/Impostor.Tests/Hazel/BufferMessageReaderTests.cs deleted file mode 100644 index 47ae813..0000000 --- a/src/Impostor.Tests/Hazel/BufferMessageReaderTests.cs +++ /dev/null @@ -1,158 +0,0 @@ -using Impostor.Hazel; -using Xunit; - -namespace Impostor.Tests.Hazel -{ - public class BufferMessageReaderTests - { - [Fact] - public void ReadProperInt() - { - const int Test1 = int.MaxValue; - const int Test2 = int.MinValue; - - var msg = new MessageWriter(128); - msg.StartMessage(1); - msg.Write(Test1); - msg.Write(Test2); - msg.EndMessage(); - - Assert.Equal(11, msg.Length); - Assert.Equal(msg.Length, msg.Position); - - var reader = new MessageReader(msg.Buffer); - - Assert.Equal(Test1, reader.ReadInt32()); - Assert.Equal(Test2, reader.ReadInt32()); - } - - [Fact] - public void ReadProperBool() - { - const bool Test1 = true; - const bool Test2 = false; - - var msg = new MessageWriter(128); - msg.StartMessage(1); - msg.Write(Test1); - msg.Write(Test2); - msg.EndMessage(); - - Assert.Equal(5, msg.Length); - Assert.Equal(msg.Length, msg.Position); - - var reader = new MessageReader(msg.Buffer); - - Assert.Equal(Test1, reader.ReadBoolean()); - Assert.Equal(Test2, reader.ReadBoolean()); - - } - - [Fact] - public void ReadProperString() - { - const string Test1 = "Hello"; - string Test2 = new string(' ', 1024); - var msg = new MessageWriter(2048); - msg.StartMessage(1); - msg.Write(Test1); - msg.Write(Test2); - msg.Write(string.Empty); - msg.EndMessage(); - - Assert.Equal(msg.Length, msg.Position); - - var reader = new MessageReader(msg.Buffer); - - Assert.Equal(Test1, reader.ReadString()); - Assert.Equal(Test2, reader.ReadString()); - Assert.Equal(string.Empty, reader.ReadString()); - - } - - [Fact] - public void ReadProperFloat() - { - const float Test1 = 12.34f; - - var msg = new MessageWriter(2048); - msg.StartMessage(1); - msg.Write(Test1); - msg.EndMessage(); - - Assert.Equal(7, msg.Length); - Assert.Equal(msg.Length, msg.Position); - - var reader = new MessageReader(msg.Buffer); - - Assert.Equal(Test1, reader.ReadSingle()); - } - - [Fact] - public void CopySubMessage() - { - const byte Test1 = 12; - const byte Test2 = 146; - - var msg = new MessageWriter(2048); - msg.StartMessage(1); - - msg.StartMessage(2); - msg.Write(Test1); - msg.Write(Test2); - msg.EndMessage(); - - msg.EndMessage(); - - var handleMessage = new MessageReader(msg.Buffer); - Assert.Equal(1, handleMessage.Tag); - - var parentReader = handleMessage.Slice(handleMessage.Position); - - Assert.Equal(1, parentReader.Tag); - - var reader = parentReader.ReadMessage(); - - Assert.Equal(2, reader.Tag); - Assert.Equal(Test1, reader.ReadByte()); - Assert.Equal(Test2, reader.ReadByte()); - } - - [Fact] - public void ReadMessageLength() - { - var msg = new MessageWriter(2048); - msg.StartMessage(1); - msg.Write(65534); - msg.StartMessage(2); - msg.Write("HO"); - msg.EndMessage(); - msg.StartMessage(2); - msg.Write("NO"); - msg.EndMessage(); - msg.EndMessage(); - - Assert.Equal(msg.Length, msg.Position); - - var reader = new MessageReader(msg.Buffer); - Assert.Equal(1, reader.Tag); - Assert.Equal(65534, reader.ReadInt32()); // Content - - var sub = reader.ReadMessage(); - Assert.Equal(3, sub.Length); - Assert.Equal(2, sub.Tag); - Assert.Equal("HO", sub.ReadString()); - - sub = reader.ReadMessage(); - Assert.Equal(3, sub.Length); - Assert.Equal(2, sub.Tag); - Assert.Equal("NO", sub.ReadString()); - } - - [Fact] - public void GetLittleEndian() - { - Assert.True(MessageWriter.IsLittleEndian()); - } - } -} \ No newline at end of file diff --git a/src/Impostor.Tests/Hazel/MessageReaderTests.cs b/src/Impostor.Tests/Hazel/MessageReaderTests.cs new file mode 100644 index 0000000..a8b9796 --- /dev/null +++ b/src/Impostor.Tests/Hazel/MessageReaderTests.cs @@ -0,0 +1,167 @@ +using Impostor.Hazel; +using Xunit; + +namespace Impostor.Tests.Hazel +{ + public class BufferMessageReaderTests + { + [Fact] + public void ReadProperInt() + { + const int Test1 = int.MaxValue; + const int Test2 = int.MinValue; + + var msg = new MessageWriter(128); + msg.StartMessage(1); + msg.Write(Test1); + msg.Write(Test2); + msg.EndMessage(); + + Assert.Equal(11, msg.Length); + Assert.Equal(msg.Length, msg.Position); + + var reader = new MessageReader(msg.Buffer); + Assert.Equal(byte.MaxValue, reader.Tag); + var message = reader.ReadMessage(); + Assert.Equal(1, message.Tag); + Assert.Equal(Test1, message.ReadInt32()); + Assert.Equal(Test2, message.ReadInt32()); + } + + [Fact] + public void ReadProperBool() + { + const bool Test1 = true; + const bool Test2 = false; + + var msg = new MessageWriter(128); + msg.StartMessage(1); + msg.Write(Test1); + msg.Write(Test2); + msg.EndMessage(); + + Assert.Equal(5, msg.Length); + Assert.Equal(msg.Length, msg.Position); + + var reader = new MessageReader(msg.Buffer); + Assert.Equal(byte.MaxValue, reader.Tag); + var message = reader.ReadMessage(); + Assert.Equal(1, message.Tag); + Assert.Equal(Test1, message.ReadBoolean()); + Assert.Equal(Test2, message.ReadBoolean()); + } + + [Fact] + public void ReadProperString() + { + const string Test1 = "Hello"; + string Test2 = new string(' ', 1024); + var msg = new MessageWriter(2048); + msg.StartMessage(1); + msg.Write(Test1); + msg.Write(Test2); + msg.Write(string.Empty); + msg.EndMessage(); + + Assert.Equal(msg.Length, msg.Position); + + var reader = new MessageReader(msg.Buffer); + Assert.Equal(byte.MaxValue, reader.Tag); + var message = reader.ReadMessage(); + Assert.Equal(1, message.Tag); + Assert.Equal(Test1, message.ReadString()); + Assert.Equal(Test2, message.ReadString()); + Assert.Equal(string.Empty, message.ReadString()); + } + + [Fact] + public void ReadProperFloat() + { + const float Test1 = 12.34f; + + var msg = new MessageWriter(2048); + msg.StartMessage(1); + msg.Write(Test1); + msg.EndMessage(); + + Assert.Equal(7, msg.Length); + Assert.Equal(msg.Length, msg.Position); + + var reader = new MessageReader(msg.Buffer); + Assert.Equal(byte.MaxValue, reader.Tag); + var message = reader.ReadMessage(); + Assert.Equal(1, message.Tag); + Assert.Equal(Test1, message.ReadSingle()); + } + + [Fact] + public void CopySubMessage() + { + const byte Test1 = 12; + const byte Test2 = 146; + + var msg = new MessageWriter(2048); + msg.StartMessage(1); + + msg.StartMessage(2); + msg.Write(Test1); + msg.Write(Test2); + msg.EndMessage(); + + msg.EndMessage(); + + var handleReader = new MessageReader(msg.Buffer); + var handleMessage = handleReader.ReadMessage(); + Assert.Equal(1, handleMessage.Tag); + + var parentReader = handleMessage.Slice(handleMessage.Position); + + Assert.Equal(1, parentReader.Tag); + + var reader = parentReader.ReadMessage(); + + Assert.Equal(2, reader.Tag); + Assert.Equal(Test1, reader.ReadByte()); + Assert.Equal(Test2, reader.ReadByte()); + } + + [Fact] + public void ReadMessageLength() + { + var msg = new MessageWriter(2048); + msg.StartMessage(1); + msg.Write(65534); + msg.StartMessage(2); + msg.Write("HO"); + msg.EndMessage(); + msg.StartMessage(2); + msg.Write("NO"); + msg.EndMessage(); + msg.EndMessage(); + + Assert.Equal(msg.Length, msg.Position); + + var reader = new MessageReader(msg.Buffer); + Assert.Equal(byte.MaxValue, reader.Tag); + var message = reader.ReadMessage(); + Assert.Equal(1, message.Tag); + Assert.Equal(65534, message.ReadInt32()); // Content + + var sub = message.ReadMessage(); + Assert.Equal(3, sub.Length); + Assert.Equal(2, sub.Tag); + Assert.Equal("HO", sub.ReadString()); + + sub = message.ReadMessage(); + Assert.Equal(3, sub.Length); + Assert.Equal(2, sub.Tag); + Assert.Equal("NO", sub.ReadString()); + } + + [Fact] + public void GetLittleEndian() + { + Assert.True(MessageWriter.IsLittleEndian()); + } + } +} \ No newline at end of file