Fix roundtripping of binary data, add unit test

This commit is contained in:
Frederik Carlier
2018-06-20 12:59:57 +02:00
parent e8112c76b1
commit 8fdd1388fe
6 changed files with 296 additions and 42 deletions

View File

@@ -0,0 +1,25 @@
using Claunia.PropertyList;
using System.IO;
using Xunit;
namespace plistcil.test
{
public class BinaryPropertyListWriterTests
{
[Fact]
public void RoundtripTest()
{
byte[] data = File.ReadAllBytes("test-files/plist.bin");
NSObject root = PropertyListParser.Parse(data);
using (MemoryStream actualOutput = new MemoryStream())
using (Stream expectedOutput = File.OpenRead("test-files/plist.bin"))
using (ValidatingStream validatingStream = new ValidatingStream(actualOutput, expectedOutput))
{
BinaryPropertyListWriter writer = new BinaryPropertyListWriter(validatingStream);
writer.ReuseObjectIds = false;
writer.Write(root);
}
}
}
}