Example #1
0
        /// <summary>
        /// Writes a byte into write buffer
        /// </summary>
        public void WriteByte(long index, byte value)
        {
            if (_writes.Contains(index))
            {
                _writes[index] = value;
            }
            else
            {
                _writes.Add(index, value);
            }

            OnChanged(EventArgs.Empty);
        }
Example #2
0
        public void Collections_Add()
        {
            ReadCollection.AssertEmpty();

            var item = CreateItem1();

            WriteCollection.Add(item);

            ReadCollection.AssertContainsOnly(item);

            WriteCollection.Add(item);

            if (AllowDuplicateEntries)
            {
                ReadCollection.AssertSequence(item, item);
            }
            else
            {
                ReadCollection.AssertContainsOnly(item);
            }

            WriteCollection.Remove(item);

            if (AllowDuplicateEntries)
            {
                ReadCollection.AssertContainsOnly(item);
            }
            else
            {
                ReadCollection.AssertEmpty();
            }
        }
Example #3
0
 public void Add(T item)
 {
     DoBaseWrite(() =>
     {
         WriteCollection.Add(item);
     });
 }
        protected virtual void BaseAdd(TKey key, TValue value)
        {
            var node = new DoubleLinkListIndexNode(_lastNode, _keyToIndex.Count);

            _keyToIndex.Add(key, node);
            _lastNode = node;
            WriteCollection.Add(new KeyValuePair <TKey, TValue>(key, value));
        }
Example #5
0
        public void Collections_Clear()
        {
            var item1 = CreateItem1();
            var item2 = CreateItem2();

            WriteCollection.Add(item1);
            WriteCollection.Add(item2);

            WriteCollection.Clear();

            ReadCollection.AssertEmpty();
        }
Example #6
0
        public void Collections_Order()
        {
            var item1 = CreateItem1();
            var item2 = CreateItem2();

            WriteCollection.Add(item1);
            WriteCollection.Add(item2);

            if (PreservesOrder)
            {
                ReadCollection.AssertSequence(item1, item2);
            }
            else
            {
                ReadCollection.AssertContainsOnly(item1, item2);
            }
        }
Example #7
0
        public void Collections_CopyTo()
        {
            WriteCollection.Add(CreateItem1());
            WriteCollection.Add(CreateItem2());
            WriteCollection.Add(CreateItem3());
            WriteCollection.Add(CreateItem2());

            T[] array = new T[ReadCollection.Count];
            ReadCollection.CopyTo(array, 0);

            if (PreservesOrder)
            {
                ReadCollection.AssertSequence(array);
            }
            else
            {
                ReadCollection.AssertContainsOnly(array);
            }
        }
Example #8
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="Items"></param>
 public void Add(IEnumerable <T> Items)
 {
     Items.ForEach(i => DoBaseWrite(() => WriteCollection.Add(i)));
     OnItemsAdded(Items);
     OnItemsChanged();
 }
Example #9
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="Item"></param>
 public void Add(T Item)
 {
     DoBaseWrite(() => WriteCollection.Add(Item));
     OnItemAdded(Item);
     OnItemsChanged();
 }