Exemplo n.º 1
0
        public override void Reset()
        {
            base.Reset();

            view.Clear();
            commandUpdates.Clear();
        }
Exemplo n.º 2
0
        private void CanEncode(int iNumberOfEntries)
        {
            // Add entries to pending
            RailPackedListOutgoing <Foo> list = new RailPackedListOutgoing <Foo>();

            for (int i = 0; i < iNumberOfEntries; ++i)
            {
                list.AddPending(poolMock.Object.Allocate());
            }

            Assert.Equal(iNumberOfEntries, elementsCreated);
            poolMock.Verify(p => p.Allocate(), Times.Exactly(iNumberOfEntries));
            poolMock.Verify(p => p.Deallocate(It.IsAny <Foo>()), Times.Never);

            // Encode
            RailBitBuffer buffer = new RailBitBuffer();

            list.Encode(
                buffer,
                RailConfig.PACKCAP_COMMANDS,
                RailConfig.MAXSIZE_COMMANDUPDATE,
                (foo, buf) => foo.WriteData(buf));
            Assert.False(buffer.Empty);
            poolMock.Verify(p => p.Allocate(), Times.Exactly(iNumberOfEntries));
            poolMock.Verify(p => p.Deallocate(It.IsAny <Foo>()), Times.Never);
            Assert.Equal(iNumberOfEntries, list.Sent.Count());

            // Clear the list. This should deallocate all sent objects.
            list.Clear();
            poolMock.Verify(p => p.Allocate(), Times.Exactly(iNumberOfEntries));
            poolMock.Verify(p => p.Deallocate(It.IsAny <Foo>()), Times.Exactly(iNumberOfEntries));
        }
Exemplo n.º 3
0
        public override void Reset()
        {
            base.Reset();

            deltas.Clear();
        }