Beispiel #1
0
        public GetCustomersResponse GetCustomersByCriteria(GetCustomersRequest request)
        {
            GetCustomersResponse      response = new GetCustomersResponse();
            CustomerBusinessComponent bc       = DependencyInjectionHelper.GetCustomerBusinessComponent();

            IQueryable <Customer> customers = bc.GetCustomersByCriteria(request.SearchType, request.City, request.CustomerName);

            response.Customers = CustomerAdapter.CustomersToDtos(customers);

            return(response);
        }
Beispiel #2
0
        public void TestCustomersToDtos()
        {
            Customer customer = new Customer()
            {
                CustomerId = 1, Name = "FakeUserName", FirstName = "FakeFirstName", Version = 0, Title = "Herr"
            };
            Order order1 = new Order()
            {
                OrderId = 1, OrderStatus = OrderStatus.Draft
            };
            Order order2 = new Order()
            {
                OrderId = 2, OrderStatus = OrderStatus.Ordered
            };

            customer.Orders = new List <Order>()
            {
                order1, order2
            }.AsQueryable();
            Assert.AreEqual(true, customer.IsValid);

            IQueryable <Customer> customers = new List <Customer>()
            {
                customer
            }.AsQueryable();
            IList <CustomerListDTO> customerDtos = CustomerAdapter.CustomersToDtos(customers);

            Assert.AreEqual <int>(1, customerDtos.Count());

            CustomerListDTO dto = customerDtos.First();

            Assert.AreEqual <int>(customer.CustomerId, dto.Id);
            Assert.AreEqual <string>(customer.Name, dto.Name);
            Assert.AreEqual <string>(customer.FirstName, dto.FirstName);
            Assert.AreEqual <int>(2, dto.NumberOfTotalOrders);
            Assert.AreEqual <int>(1, dto.NumberOfOpenOrders);
            Assert.AreEqual(true, dto.IsValid);
        }