public void RemoveBufferWorks_DotNetList() { DotNetList_Lazinator lazinator = new DotNetList_Lazinator() { MyListSerialized = new List <ExampleChild>() { GetExampleChild(1), GetExampleChild(2), null } }; lazinator.SerializeLazinator(); lazinator.LazinatorMemoryStorage.IsEmpty.Should().BeFalse(); var x = lazinator.MyListSerialized[0].MyExampleGrandchild.MyInt; lazinator.MyListSerialized[0].MyExampleGrandchild.MyInt++; lazinator.MyListSerialized_Dirty = true; lazinator.MyListSerialized[0].MyExampleGrandchild.LazinatorMemoryStorage.IsEmpty.Should().BeFalse(); lazinator.RemoveBufferInHierarchy(); lazinator.LazinatorMemoryStorage.IsEmpty.Should().BeTrue(); lazinator.MyListSerialized[0].MyExampleGrandchild.LazinatorMemoryStorage.IsEmpty.Should().BeTrue(); lazinator.MyListSerialized[0].MyExampleGrandchild.MyInt.Should().Be(x + 1); lazinator.SerializeLazinator(); lazinator.MyListSerialized[0].MyExampleGrandchild.LazinatorMemoryStorage.IsEmpty.Should().BeFalse(); lazinator.MyListSerialized[0].MyExampleGrandchild.MyInt.Should().Be(x + 1); lazinator.SerializeLazinator(); LazinatorMemory lazinatorMemoryStorage = lazinator.MyListSerialized[0].MyExampleGrandchild.LazinatorMemoryStorage; lazinatorMemoryStorage.Should().NotBeNull(); lazinator.MyListSerialized[0].MyExampleGrandchild.MyInt.Should().Be(x + 1); lazinator.MyListSerialized[0].MyExampleGrandchild.MyInt++; lazinator.MyListSerialized_Dirty = true; lazinator.SerializeLazinator(); lazinator.MyListSerialized[0].MyExampleGrandchild.LazinatorMemoryStorage.IsEmpty.Should().BeFalse(); (lazinator.MyListSerialized[0].MyExampleGrandchild.LazinatorMemoryStorage.Equals(lazinatorMemoryStorage)).Should() .BeFalse(); lazinator.MyListSerialized[0].MyExampleGrandchild.MyInt.Should().Be(x + 2); }
public void RemoveBufferWorks_DotNetHashSet() { DotNetHashSet_Lazinator lazinator = new DotNetHashSet_Lazinator() { MyHashSetSerialized = new HashSet <ExampleChild>() { GetExampleChild(1), GetExampleChild(2), } }; lazinator.SerializeLazinator(); lazinator.LazinatorMemoryStorage.IsEmpty.Should().BeFalse(); var x = lazinator.MyHashSetSerialized.First().MyExampleGrandchild.MyInt; lazinator.MyHashSetSerialized.First().MyExampleGrandchild.MyInt++; lazinator.MyHashSetSerialized.First().MyExampleGrandchild.LazinatorMemoryStorage.IsEmpty.Should().BeFalse(); lazinator.RemoveBufferInHierarchy(); lazinator.LazinatorMemoryStorage.IsEmpty.Should().BeTrue(); lazinator.MyHashSetSerialized.First().MyExampleGrandchild.LazinatorMemoryStorage.IsEmpty.Should().BeTrue(); lazinator.MyHashSetSerialized.First().MyExampleGrandchild.MyInt.Should().Be(x + 1); lazinator.SerializeLazinator(); lazinator.MyHashSetSerialized.First().MyExampleGrandchild.LazinatorMemoryStorage.IsEmpty.Should().BeFalse(); lazinator.MyHashSetSerialized.First().MyExampleGrandchild.MyInt.Should().Be(x + 1); lazinator.SerializeLazinator(); LazinatorMemory lazinatorMemoryStorage = lazinator.MyHashSetSerialized.First().MyExampleGrandchild.LazinatorMemoryStorage; lazinatorMemoryStorage.Should().NotBeNull(); lazinator.MyHashSetSerialized.First().MyExampleGrandchild.MyInt.Should().Be(x + 1); lazinator.MyHashSetSerialized.First().MyExampleGrandchild.MyInt++; lazinator.SerializeLazinator(); lazinator.MyHashSetSerialized.First().MyExampleGrandchild.LazinatorMemoryStorage.IsEmpty.Should().BeFalse(); (lazinator.MyHashSetSerialized.First().MyExampleGrandchild.LazinatorMemoryStorage == lazinatorMemoryStorage).Should() .BeFalse(); lazinator.MyHashSetSerialized.First().MyExampleGrandchild.MyInt.Should().Be(x + 2); }