Exemplo n.º 1
0
        public void UpdateCustomer_EmptyLastName_StatusFalse()
        {
            #region Preperation

            var customer = ServiceInstance.AddCustomer(new Customer
            {
                FirstName = "Test FirstName",
                LastName  = "Test LastName"
            });

            #endregion

            var expextedResult = new CustomerServiceResponse
            {
                Status  = false,
                Message = "FirstName or LastName cannot be null or empty"
            };

            var actualResult = ServiceInstance.UpdateCustomer(new Customer
            {
                Id        = customer.Customer.Id,
                FirstName = "Test",
                LastName  = string.Empty
            });

            Assert.AreEqual(expextedResult.Status, actualResult.Status);
            Assert.AreEqual(expextedResult.Message, actualResult.Message);
        }
Exemplo n.º 2
0
        public void UpdateCustomer_CorrectResult_StatusTrue()
        {
            #region Preperation

            var customer = ServiceInstance.AddCustomer(new Customer
            {
                FirstName = "Test FirstName",
                LastName  = "Test LastName"
            });

            #endregion

            var expextedResult = new CustomerServiceResponse
            {
                Status  = true,
                Message = "Customer updated"
            };

            var actualResult = ServiceInstance.UpdateCustomer(new Customer
            {
                Id        = customer.Customer.Id,
                FirstName = "Test FirstName 2",
                LastName  = "Test LastName 2"
            });

            Assert.AreEqual(expextedResult.Status, actualResult.Status);
            Assert.AreEqual(expextedResult.Message, actualResult.Message);
            Assert.AreEqual(customer.Customer.FirstName, actualResult.Customer.FirstName);
            Assert.AreEqual(customer.Customer.LastName, actualResult.Customer.LastName);
        }
        private CustomerServiceResponse UpdateCustomer(CustomerRequest request)
        {
            var response = new CustomerServiceResponse();

            var customerToUpdate = Customers.SingleOrDefault(customer => customer.Id == request.CustomerInfo.Id);

            if (customerToUpdate == null)
            {
                response.Success   = false;
                response.Customers = new CustomerInfo[] { request.CustomerInfo };
                return(response);
            }

            if (!string.IsNullOrEmpty(request.CustomerInfo.Name))
            {
                customerToUpdate.Name = request.CustomerInfo.Name;
            }
            if (request.CustomerInfo.Age.HasValue)
            {
                customerToUpdate.Age = request.CustomerInfo.Age;
            }
            if (request.CustomerInfo.LikesDisney.HasValue)
            {
                customerToUpdate.LikesDisney = request.CustomerInfo.LikesDisney;
            }

            response.Success   = true;
            response.Customers = new CustomerInfo[] { customerToUpdate };
            return(response);
        }
Exemplo n.º 4
0
        public void DeleteCustomer_CorrectResult_StatusTrue()
        {
            #region Preperation

            var customer = ServiceInstance.AddCustomer(new Customer
            {
                FirstName = "Test FirstName",
                LastName  = "Test LastName"
            });

            // Dummy Mock Method Setup
            _dummyServiceAnother.Setup(x => x.DummyAnother(5))
            .Returns(true);

            #endregion

            var expextedResult = new CustomerServiceResponse
            {
                Status  = true,
                Message = "Customer deleted"
            };

            var actualResult = ServiceInstance.DeleteCustomer(customer.Customer.Id);

            Assert.AreEqual(expextedResult.Status, actualResult.Status);
            Assert.AreEqual(expextedResult.Message, actualResult.Message);
        }
Exemplo n.º 5
0
        private CustomerServiceResponse GetCustomers(CustomerRequest request)
        {
            var response = new CustomerServiceResponse();

            using (var context = customerContextFactory.CreateDbContext())
            {
                IEnumerable <CustomerInfo> customers = context.Customers.ToArray();

                if (request.CustomerInfo.Id.HasValue)
                {
                    customers = customers.Where(customer => customer.Id == request.CustomerInfo.Id);
                }
                if (!string.IsNullOrEmpty(request.CustomerInfo.Name))
                {
                    customers = customers.Where(customer => customer.Name.Contains(request.CustomerInfo.Name));
                }
                if (request.CustomerInfo.Age.HasValue)
                {
                    customers = customers.Where(customer => customer.Age == request.CustomerInfo.Age);
                }
                if (request.CustomerInfo.LikesDisney.HasValue)
                {
                    customers = customers.Where(customer => customer.LikesDisney == request.CustomerInfo.LikesDisney);
                }

                response.Customers = customers.ToArray();
            }

            response.Success = true;

            return(response);
        }
        private CustomerServiceResponse CreateCustomer(CustomerRequest request)
        {
            var response = new CustomerServiceResponse();

            Customers.Add(request.CustomerInfo);

            response.Success   = true;
            response.Customers = new CustomerInfo[] { request.CustomerInfo };
            return(response);
        }
Exemplo n.º 7
0
        public void UpdateCustomer_NullEntity_StatusFalse()
        {
            var expextedResult = new CustomerServiceResponse
            {
                Status  = false,
                Message = "Customer entity cannot be null"
            };

            var actualResult = ServiceInstance.UpdateCustomer(null);

            Assert.AreEqual(expextedResult.Status, actualResult.Status);
            Assert.AreEqual(expextedResult.Message, actualResult.Message);
        }
Exemplo n.º 8
0
        public void GetCustomer_NullEntity_StatusFalse()
        {
            var expextedResult = new CustomerServiceResponse
            {
                Status  = false,
                Message = "Customer not found"
            };

            var actualResult = ServiceInstance.GetCustomer(Guid.NewGuid().ToString());

            Assert.AreEqual(expextedResult.Status, actualResult.Status);
            Assert.AreEqual(expextedResult.Message, actualResult.Message);
            Assert.IsNull(actualResult.Customer);
        }
Exemplo n.º 9
0
        public void GetCustomer_EmptyId_StatusFalse()
        {
            var expextedResult = new CustomerServiceResponse
            {
                Status  = false,
                Message = "Id cannot be null or empty"
            };

            var actualResult = ServiceInstance.GetCustomer(string.Empty);

            Assert.AreEqual(expextedResult.Status, actualResult.Status);
            Assert.AreEqual(expextedResult.Message, actualResult.Message);
            Assert.IsNull(actualResult.Customer);
        }
Exemplo n.º 10
0
        private CustomerServiceResponse CreateCustomer(CustomerRequest request)
        {
            var response = new CustomerServiceResponse();

            using (var context = customerContextFactory.CreateDbContext())
            {
                context.Customers.Add(request.CustomerInfo);
                context.SaveChanges();
            }

            response.Success   = true;
            response.Customers = new CustomerInfo[] { request.CustomerInfo };
            return(response);
        }
Exemplo n.º 11
0
        public void AddCustomer_NullLastName_StatusFalse()
        {
            var expextedResult = new CustomerServiceResponse
            {
                Status  = false,
                Message = "FirstName or LastName cannot be null or empty"
            };

            var actualResult = ServiceInstance.AddCustomer(new Customer
            {
                FirstName = "Test",
                LastName  = null
            });

            Assert.AreEqual(expextedResult.Status, actualResult.Status);
            Assert.AreEqual(expextedResult.Message, actualResult.Message);
        }
Exemplo n.º 12
0
        public void AddCustomer_CorrectResult_StatusTrue()
        {
            var expextedResult = new CustomerServiceResponse
            {
                Status  = true,
                Message = "Customer added"
            };

            var actualResult = ServiceInstance.AddCustomer(new Customer
            {
                FirstName = "Test FirstName",
                LastName  = "Test LastName"
            });

            Assert.AreEqual(expextedResult.Status, actualResult.Status);
            Assert.AreEqual(expextedResult.Message, actualResult.Message);
            Assert.IsNotNull(actualResult.Customer);
        }
        private CustomerServiceResponse DeleteCustomer(CustomerRequest request)
        {
            var response = new CustomerServiceResponse();

            var customer = Customers.SingleOrDefault(user => user.Id == request.CustomerInfo.Id);

            if (customer != null)
            {
                Customers.Remove(customer);

                response.Success   = true;
                response.Customers = new CustomerInfo[] { customer };
            }
            else
            {
                response.Success   = false;
                response.Customers = new CustomerInfo[] { request.CustomerInfo };
            }

            return(response);
        }
Exemplo n.º 14
0
        public void GetCustomer_CorrectResult_StatusTrue()
        {
            #region Preperation

            var customer = ServiceInstance.AddCustomer(new Customer
            {
                FirstName = "Test FirstName",
                LastName  = "Test LastName"
            });

            #endregion

            var expextedResult = new CustomerServiceResponse
            {
                Status = true
            };

            var actualResult = ServiceInstance.GetCustomer(customer.Customer.Id);

            Assert.AreEqual(expextedResult.Status, actualResult.Status);
            Assert.IsNotNull(actualResult.Customer);
        }
Exemplo n.º 15
0
        private CustomerServiceResponse UpdateCustomer(CustomerRequest request)
        {
            var response = new CustomerServiceResponse();

            using (var context = customerContextFactory.CreateDbContext())
            {
                var customerToUpdate = context.Customers.SingleOrDefault(customer => customer.Id == request.CustomerInfo.Id);

                if (customerToUpdate == null)
                {
                    response.Success   = false;
                    response.Customers = new CustomerInfo[] { request.CustomerInfo };
                    return(response);
                }

                if (!string.IsNullOrEmpty(request.CustomerInfo.Name))
                {
                    customerToUpdate.Name = request.CustomerInfo.Name;
                }
                if (request.CustomerInfo.Age.HasValue)
                {
                    customerToUpdate.Age = request.CustomerInfo.Age;
                }
                if (request.CustomerInfo.LikesDisney.HasValue)
                {
                    customerToUpdate.LikesDisney = request.CustomerInfo.LikesDisney;
                }

                context.Customers.Update(customerToUpdate);
                context.SaveChanges();

                response.Success   = true;
                response.Customers = new CustomerInfo[] { customerToUpdate };
            }
            return(response);
        }
Exemplo n.º 16
0
        private CustomerServiceResponse DeleteCustomer(CustomerRequest request)
        {
            var response = new CustomerServiceResponse();

            using (var context = customerContextFactory.CreateDbContext())
            {
                var customer = context.Customers.SingleOrDefault(user => user.Id == request.CustomerInfo.Id);

                if (customer != null)
                {
                    context.Customers.Remove(customer);
                    context.SaveChanges();

                    response.Success   = true;
                    response.Customers = new CustomerInfo[] { customer };
                }
                else
                {
                    response.Success   = false;
                    response.Customers = new CustomerInfo[] { request.CustomerInfo };
                }
            }
            return(response);
        }