public void ManualDeserializationWorks_NullableEnabledContext() { NullableEnabledContext original = CloneNoBufferTests.GetNullableEnabledContext(); LazinatorMemory serializedBytes = GetLazinatorMemoryCopy(original); NullableEnabledContext copy = new NullableEnabledContext(serializedBytes); LazinatorMemory serializedBytesCopy = GetLazinatorMemoryCopy(original); serializedBytes.Matches(serializedBytesCopy.InitialReadOnlyMemory.Span).Should().BeTrue(); }
public void SplittableEntitiesWork_SmallestTree() { BinaryTree = new LazinatorBinaryTree <WDouble>(); BinaryTree.Add(0); BinaryTree.Add(1); LazinatorMemory singleBufferResult = BinaryTree.SerializeLazinator(new LazinatorSerializationOptions(IncludeChildrenMode.IncludeAllChildren, false, false, false)); LazinatorMemory multipleBufferResult = BinaryTree.SerializeLazinator(new LazinatorSerializationOptions(IncludeChildrenMode.IncludeAllChildren, false, false, false, 1)); multipleBufferResult.MultipleMemoryChunks.Count().Should().BeGreaterThan(0); LazinatorMemory multipleConsolidated = new LazinatorMemory(multipleBufferResult.GetConsolidatedMemory()); string mString = multipleConsolidated.ToString(); string sString = singleBufferResult.ToString(); mString.Should().Be(sString); multipleConsolidated.Matches(singleBufferResult.InitialReadOnlyMemory.Span).Should().BeTrue(); }
public void SplittableEntitiesWork_SingleSplit() { var node = new LazinatorBinaryTreeNode <WByte>() { Data = 1 }; // node.LeftNode = new LazinatorBinaryTreeNode<WByte>() { Data = 0 }; node.RightNode = new LazinatorBinaryTreeNode <WByte>() { Data = 2 }; LazinatorMemory singleBufferResult = node.SerializeLazinator(new LazinatorSerializationOptions(IncludeChildrenMode.IncludeAllChildren, false, false, false)); LazinatorMemory multipleBufferResult = node.SerializeLazinator(new LazinatorSerializationOptions(IncludeChildrenMode.IncludeAllChildren, false, false, false, 1)); multipleBufferResult.MultipleMemoryChunks.Count().Should().BeGreaterThan(0); LazinatorMemory multipleConsolidated = new LazinatorMemory(multipleBufferResult.GetConsolidatedMemory()); string mString = multipleConsolidated.ToString(); string sString = singleBufferResult.ToString(); mString.Should().Be(sString); multipleConsolidated.Matches(singleBufferResult.InitialReadOnlyMemory.Span).Should().BeTrue(); }
public void SplittableEntitiesWork() { Example e = GetTypicalExample(); LazinatorMemory singleBufferResult = e.SerializeLazinator(new LazinatorSerializationOptions(IncludeChildrenMode.IncludeAllChildren, false, false, false)); LazinatorMemory multipleBufferResult = e.SerializeLazinator(new LazinatorSerializationOptions(IncludeChildrenMode.IncludeAllChildren, false, false, false, 10)); multipleBufferResult.MultipleMemoryChunks.Count().Should().BeGreaterThan(0); LazinatorMemory consolidated = new LazinatorMemory(multipleBufferResult.GetConsolidatedMemory()); consolidated.Matches(singleBufferResult.InitialReadOnlyMemory.Span).Should().BeTrue(); Example e2 = new Example(consolidated); ExampleEqual(e, e2).Should().BeTrue(); Example e3 = new Example(multipleBufferResult); ExampleEqual(e, e3).Should().BeTrue(); Example e4 = new Example(multipleBufferResult); Example e5 = e4.CloneLazinatorTyped(); ExampleEqual(e, e5).Should().BeTrue(); }