예제 #1
0
        public async Task GetTest()
        {
            //Arrange
            var customer = new CustomerMngt.Domain.Entities.Customer
            {
                Id        = 1,
                Password  = "******",
                Email     = "*****@*****.**",
                Surname   = "Surname",
                FirstName = "First Name"
            };

            var customerResponseDto = new CustomerResponseDto
            {
                Id        = 1,
                Email     = "*****@*****.**",
                Surname   = "Surname",
                FirstName = "First Name",
                FullName  = "First Name Surname"
            };

            var filterDto = new CustomerFilterDto {
                Id = 1
            };
            var filter = new CustomerFilter {
                Id = 1
            };

            //Act
            var mockService = new Mock <ICustomerService>();
            var mockMapper  = new Mock <IMapper>();

            mockMapper.Setup(x => x.Map <CustomerResponseDto>(customer)).Returns(customerResponseDto);
            mockMapper.Setup(x => x.Map <CustomerFilter>(filterDto)).Returns(filter);
            mockService.Setup(x => x.GetByFilterAsync(filter)).ReturnsAsync(customer);

            //Assert
            var mockFacade = new CustomerFacade(mockService.Object, mockMapper.Object);
            var result     = await mockFacade.GetByFilterAsync(filterDto);

            Assert.Equal(customer.Id, result.Id);
        }