BinarySerializationTests.cs 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. using System;
  2. using System.Collections.Generic;
  3. using System.IO;
  4. using System.Text;
  5. using System.Windows.Media;
  6. using PixiEditor.Models.DataHolders;
  7. using PixiEditor.Models.IO;
  8. using PixiEditor.Models.Layers;
  9. using Xunit;
  10. namespace PixiEditorTests.ModelsTests.IO
  11. {
  12. public class BinarySerializationTests
  13. {
  14. private const string Path = "bstests.file";
  15. [Fact]
  16. public void TestThatWriteToBinaryFileCreatesFile()
  17. {
  18. SerializableDocument doc = new SerializableDocument(new Document(10,10));
  19. BinarySerialization.WriteToBinaryFile(Path, doc);
  20. Assert.True(File.Exists(Path));
  21. File.Delete(Path);
  22. }
  23. [Fact]
  24. public void TestThatReadFromBinaryFileReadsCorrectly()
  25. {
  26. Document document = new Document(10, 10);
  27. document.Layers.Add(new Layer("yeet"));
  28. document.Swatches.Add(Colors.Green);
  29. SerializableDocument doc = new SerializableDocument(document);
  30. BinarySerialization.WriteToBinaryFile(Path, doc);
  31. var file = BinarySerialization.ReadFromBinaryFile<SerializableDocument>(Path);
  32. Assert.Equal(doc.Layers, file.Layers);
  33. Assert.Equal(doc.Height, file.Height);
  34. Assert.Equal(doc.Width, file.Width);
  35. Assert.Equal(doc.Swatches, file.Swatches);
  36. }
  37. }
  38. }