diff options
Diffstat (limited to 'Impostor-dev/src/Impostor.Tests/Hazel/MessageWriterTests.cs')
-rw-r--r-- | Impostor-dev/src/Impostor.Tests/Hazel/MessageWriterTests.cs | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/Impostor-dev/src/Impostor.Tests/Hazel/MessageWriterTests.cs b/Impostor-dev/src/Impostor.Tests/Hazel/MessageWriterTests.cs new file mode 100644 index 0000000..83d67da --- /dev/null +++ b/Impostor-dev/src/Impostor.Tests/Hazel/MessageWriterTests.cs @@ -0,0 +1,38 @@ +using System; +using System.Linq; +using Impostor.Hazel; +using Xunit; + +namespace Impostor.Tests.Hazel +{ + public class MessageWriterTests + { + [Fact] + public void ReadOnlyMemoryWriteWorksTheSameAsArray() + { + var oldVer = new MessageWriter(1024); + var newVer = new MessageWriter(1024); + + var data = Enumerable.Repeat + ( + Enumerable.Range(0, byte.MaxValue) + .Select(x => (byte)x), + 2 + ).SelectMany(x => x).ToArray(); + + WriteSomeData(oldVer); + WriteSomeData(newVer); + + oldVer.Write(data); + newVer.Write(data.AsMemory()); + + Assert.True(oldVer.Buffer.AsSpan().SequenceEqual(newVer.Buffer.AsSpan())); + + static void WriteSomeData(MessageWriter oldVer) + { + oldVer.WritePacked(99); + oldVer.WritePacked(101); + } + } + } +}
\ No newline at end of file |