예제 #1
0
        public async Task ListUsersQuery_returns_a_list_of_users_when_available()
        {
            //Arrange
            var userId1 = Guid.NewGuid();
            var userId2 = Guid.NewGuid();
            var userId3 = Guid.NewGuid();
            IEnumerable <ListUsersResponse> response;

            using (var db = MockDbContext())
            {
                db.Users.RemoveRange(db.Users);
                db.Users.Add(new User {
                    Id = userId1, Name = "Tester1", Email = "*****@*****.**"
                });
                db.Users.Add(new User {
                    Id = userId2, Name = "Tester2", Email = "*****@*****.**"
                });
                db.Users.Add(new User {
                    Id = userId3, Name = "Tester3", Email = "*****@*****.**"
                });
                db.SaveChanges();
            }

            using (var db = MockDbContext())
            {
                var request = new ListUsersQuery();
                var handler = new ListUsersQueryHandler(db);

                //Act
                response = await handler.Handle(request, CancellationToken.None);
            }

            //Assert
            response.Count().Should().Be(3);
        }
예제 #2
0
        public async Task ListUsersQuery_returns_a_blanklist_when_table_is_empty()
        {
            //Arrange
            IEnumerable <ListUsersResponse> response;

            using (var db = MockDbContext())
            {
                db.Users.RemoveRange(db.Users);
                db.SaveChanges();

                var request = new ListUsersQuery();
                var handler = new ListUsersQueryHandler(db);

                //Act
                response = await handler.Handle(request, CancellationToken.None);
            }

            //Assert
            response.Count().Should().Be(0);
        }
        public async Task Return_List_Of_Users()
        {
            var expectedUsers = new List <User>
            {
                GivenUser(UserId.NewUserId().Value, "name1", "*****@*****.**", "password1"),
                GivenUser(UserId.NewUserId().Value, "name2", "*****@*****.**", "password2"),
                GivenUser(UserId.NewUserId().Value, "name3", "*****@*****.**", "password3"),
            };

            _repositoryMock
            .Setup(x => x.SelectAllAsync(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(expectedUsers);
            var sut = new ListUsersQueryHandler(_repositoryMock.Object);

            var actualResult = await sut.Handle(new ListUsersQuery(0, 10), CancellationToken.None);

            actualResult.Should()
            .BeOfType <ListUsersQueryResult>()
            .Which.Users
            .Should().NotBeEmpty()
            .And.Contain(expectedUsers)
            .And.HaveCount(3);
            _repositoryMock.Verify(x => x.SelectAllAsync(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <CancellationToken>()), Times.Once);
        }