Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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);
        }