Exemple #1
0
        public async Task TestNestedRepositorySequential()
        {
            var repositoryInner = new IdentityRepository(new NullLogger <IdentityRepository>(), Redis);
            var repository      = new SimpleItemRepository(new NullLogger <SimpleItemRepository>(), Redis, repositoryInner);

            for (int i = 0; i < 10; i++)
            {
                await Resilience.AsyncRetryPolicy
                .ExecuteAsync(() => repository.Save(new SimpleItem {
                    Id = i
                }, repository.Entity.AllIndex));
            }
        }
 private static void FillDatabase()
 {
     using (var repository = new SimpleItemRepository())
     {
         for (int i = 0; i < 1000; i++)
         {
             var entity = new SimpleItem()
             {
                 ContainerName = "TestContainer",
                 FieldName = "TestField",
                 FieldValue = "Test"
             };
             repository.Insert(entity, true);
         }
     }
 }
Exemple #3
0
 private static void FillDatabase()
 {
     using (var repository = new SimpleItemRepository())
     {
         for (int i = 0; i < 1000; i++)
         {
             var entity = new SimpleItem()
             {
                 ContainerName = "TestContainer",
                 FieldName     = "TestField",
                 FieldValue    = "Test"
             };
             repository.Insert(entity, true);
         }
     }
 }
Exemple #4
0
        public async Task TestNestedRepository()
        {
            var repositoryInner = new IdentityRepository(new NullLogger <IdentityRepository>(), Redis);
            var repository      = new SimpleItemRepository(new NullLogger <SimpleItemRepository>(), Redis, repositoryInner);

            var transaction = Redis.StartTransaction();
            var tasks       = new List <Task>();

            for (int i = 0; i < 2; i++)
            {
                tasks.Add(repository.Save(new SimpleItem {
                    Id = i
                }, transaction));
            }

            await transaction.Commit();

            await Task.WhenAll(tasks);

            var all = await repository.LoadAll(repository.Entity.AllIndex).ToArray();

            Assert.AreEqual(2, all.Length);

            tasks.Clear();
            transaction = Redis.StartTransaction();
            for (int i = 0; i < 2; i++)
            {
                tasks.Add(repository.Delete(i.ToString()));
            }

            await transaction.Commit();

            await Task.WhenAll(tasks);

            all = await repository.LoadAll(repository.Entity.AllIndex).ToArray();

            Assert.AreEqual(0, all.Length);
        }