コード例 #1
0
        public async Task Any_ShouldReturnTrue_WhenExistingUser_AndRightCheckedOnOpenRepository()
        {
            await RunCodeInsideIsolatedDatabaseAsync(async (context) =>
            {
                //Arrange
                var unitOfWork = new UnitOfWork(context);
                var storage    = new EFStorageService(context);
                var repo       = new UsersRepository(storage, _fixture.RightsService);
                var collection = new UsersCollection(repo, _fixture.PatcherProvider, _fixture.Instanciator);

                var user = User.GetManyRandomUsers(1).First();
                await repo.AddAsync(user, new Query <User> {
                    Verb = Domain.Helpers.HttpVerbs.Post
                });
                await unitOfWork.SaveChangesAsync();

                //Act
                var query = new Query <User>(u => u.Id == user.Id);
                query.Options.ChecksRights = true;
                var exist = await collection.AnyAsync(query);

                //Assert
                Assert.True(exist);
            });
        }
コード例 #2
0
        public async Task AnyAsync_should_work()
        {
            var id   = Guid.NewGuid();
            var user = new User {
                Id = id
            };
            var users = new UsersCollection(_fixture.UsersRepo, _fixture.PatcherProvider, _fixture.Instanciator);
            var query = new Query <User>();

            query.Options.ChecksRights = false;

            _fixture.InMemoryStorage.Add(user);
            await _fixture.InMemoryStorage.SaveChangesAsync();

            var any = await users.AnyAsync(query);

            Assert.True(any);
        }
コード例 #3
0
        public async Task Any_ShouldReturnFalse_WhenNoExistingUser()
        {
            await RunCodeInsideIsolatedDatabaseAsync(async (context) =>
            {
                //Arrange
                var unitOfWork = new UnitOfWork(context);
                var storage    = new EFStorageService(context);
                var repo       = new UsersRepository(storage, _fixture.RightsService);
                var collection = new UsersCollection(repo, _fixture.PatcherProvider, _fixture.Instanciator);

                var user = User.GetManyRandomUsers(1).First();
                await repo.AddAsync(user, new Query <User> {
                    Verb = Domain.Helpers.HttpVerbs.Post
                });
                await unitOfWork.SaveChangesAsync();


                //Act
                var exist = await collection.AnyAsync(new Query <User>(u => Guid.NewGuid() == user.Id));

                //Assert
                Assert.False(exist);
            });
        }