Пример #1
0
        public void GetAll_Should_Return_As_Expected()
        {
            //Arrange
            _repository.Setup(c => c.GetList(null)).Returns(Task.FromResult(_customerList));
            _mapper.Setup(x => x.Map <List <Entity.Concrete.Customer> >(null)).Returns(_customerList);
            _customerListDataResponse.Setup(t => t.Success).Returns(true);
            _customerListDataResponse.Setup(s => s.Data).Returns(_customerListResponse.Object);

            //Act
            var actual = _sut.Handle(getAllCustomersQuery, cancellationToken).GetAwaiter().GetResult();

            //Assert
            actual.GetType().Should().Be(typeof(SuccessDataResult <List <GetAllCustomerQueryResponse> >));
        }
        public async Task GetAllCustomerDetailTests()
        {
            var sut = new GetAllCustomersQueryHandler(_logger, _mapper, _context);

            var result = await sut.Handle(null, CancellationToken.None);

            var sortedResult = result.OrderBy(x => x.Name).ToList();

            //foreach ( var )

            Assert.NotNull(sortedResult);
            Assert.Equal(3, sortedResult.Count);
            Assert.Collection(sortedResult,
                              item =>
            {
                Assert.Equal("Test1", item.Name);
                Assert.Equal("*****@*****.**", item.Email);
            },
                              item =>
            {
                Assert.Equal("Test2", item.Name);
                Assert.Equal("*****@*****.**", item.Email);
            },
                              item =>
            {
                Assert.Equal("Test3", item.Name);
                Assert.Equal("*****@*****.**", item.Email);
            });
        }
        public async Task Handle_CustomersExists_ReturnCustomers(
            [Frozen] Mock <IRepository <Entities.Customer> > customerRepoMock,
            GetAllCustomersQueryHandler sut,
            List <Entities.IndividualCustomer> customers,
            GetAllCustomersQuery query
            )
        {
            // Arrange
            customerRepoMock.Setup(x => x.ListAsync(
                                       It.IsAny <GetAllCustomersSpecification>(),
                                       It.IsAny <CancellationToken>()
                                       ))
            .ReturnsAsync(customers.Cast <Entities.Customer>().ToList());

            //Act
            var result = await sut.Handle(query, CancellationToken.None);

            //Assert
            result.Should().NotBeNull();
            customerRepoMock.Verify(x => x.ListAsync(
                                        It.IsAny <ISpecification <Entities.Customer> >(),
                                        It.IsAny <CancellationToken>()
                                        ));
            result.Count.Should().Be(customers.Count);
        }
Пример #4
0
        public async Task Handle_GivenNullRequest_ShouldThrowArgumentNullException()
        {
            // Arrange
            var sut = new GetAllCustomersQueryHandler(this.deletableEntityRepository);

            // Act & assert
            await Should.ThrowAsync <ArgumentNullException>(sut.Handle(null, It.IsAny <CancellationToken>()));
        }
Пример #5
0
        public async Task Handle_GivenValidRequest_ShouldReturnViewModel()
        {
            // Arrange
            var query = new GetAllCustomersQuery();
            var sut   = new GetAllCustomersQueryHandler(this.deletableEntityRepository);

            // Act
            var viewModel = await sut.Handle(query, It.IsAny <CancellationToken>());

            viewModel.ShouldNotBeNull();
            viewModel.ShouldBeOfType <GetAllCustomersViewModel>();
            viewModel.Customers.Count().ShouldBe(1);
        }
        public async Task Test_ForExistingCustomers_ShouldReturnCustomers()
        {
            // Arrange
            var mock = new Mock <ICustomerRepository>();

            Fixture.RepeatCount = 9;
            var customers = Fixture.Create <Customer[]>();

            mock.Setup(foo => foo.GetAll()).Returns(customers);
            var query        = new GetAllCustomersQuery();
            var queryHandler = new GetAllCustomersQueryHandler(mock.Object);

            //  Act
            var result = await queryHandler.Handle(query, CancellationToken.None);

            //  Assert
            Assert.NotNull(result);
            Assert.NotEmpty(result);
            Assert.Equal(customers.Length, result.Count());
        }
        public void Handle_NoCustomersExists_ThrowArgumentNullException(
            [Frozen] Mock <IRepository <Entities.Customer> > customerRepoMock,
            GetAllCustomersQueryHandler sut,
            GetAllCustomersQuery query
            )
        {
            // Arrange
            customerRepoMock.Setup(x => x.ListAsync(
                                       It.IsAny <GetAllCustomersSpecification>(),
                                       It.IsAny <CancellationToken>()
                                       ))
            .ReturnsAsync((List <Entities.Customer>)null);

            //Act
            Func <Task> func = async() => await sut.Handle(query, CancellationToken.None);

            //Assert
            func.Should().Throw <ArgumentNullException>()
            .WithMessage("Value cannot be null. (Parameter 'customers')");
        }