Ejemplo n.º 1
0
        private async Task TestReindex(TestOrderedList items)
        {
            var secondItem = FindItemByValue(items, "2");

            int[] indexes = new int[1000];

            indexes[0]   = 1;
            indexes[996] = 2;
            indexes[997] = 3;
            indexes[998] = 4;
            indexes[999] = 5;

            //If we insert a lot of items between the first and the second we are going to initiate reindexing
            for (int i = 6; i <= 1000; i++)
            {
                var item = new Item
                {
                    Id     = Guid.NewGuid().ToString(),
                    Value  = i.ToString(),
                    NextId = secondItem.Id
                };

                indexes[i - 5] = i;

                await items.InsertAsync(item);
            }

            await AssertOrderAsync(items, indexes);
        }
Ejemplo n.º 2
0
        private async Task InsertItemBefore(TestOrderedList items, string newItemValue, string nextItemValue)
        {
            var item = new Item
            {
                Id    = Guid.NewGuid().ToString(),
                Value = newItemValue
            };

            if (nextItemValue == Database.LastId)
            {
                item.NextId = Database.LastId;
            }
            else
            {
                item.NextId = FindItemByValue(items, nextItemValue).Id;
            }

            await items.InsertAsync(item);
        }