Example #1
0
        public void CreateCustomerTest()
        {
            Customer customer = new Customer(1, "first", "last", "address1", "city1", "CA", 92037, 20,
                                             'M', "None", 80000, 2, "None", 1);

            List <string> errors = new List <string>();
            int           result = DALCustomer.CreateCustomer(customer, ref errors);

            Assert.AreNotEqual(-1, result);

            Customer verifyCustomer = DALCustomer.ReadCustomer(result, ref errors);

            Assert.AreEqual(0, errors.Count());

            Assert.AreEqual(result, verifyCustomer.customer_id);
            Assert.AreEqual(customer.first_name, verifyCustomer.first_name);
            Assert.AreEqual(customer.last_name, verifyCustomer.last_name);
            Assert.AreEqual(customer.address1, verifyCustomer.address1);
            Assert.AreEqual(customer.city, verifyCustomer.city);
            Assert.AreEqual(customer.state, verifyCustomer.state);
            Assert.AreEqual(customer.zip, verifyCustomer.zip);
            Assert.AreEqual(customer.age, verifyCustomer.age);
            Assert.AreEqual(customer.gender, verifyCustomer.gender);
            Assert.AreEqual(customer.hobby, verifyCustomer.hobby);
            Assert.AreEqual(customer.income, verifyCustomer.income);
            Assert.AreEqual(customer.children, verifyCustomer.children);
            Assert.AreEqual(customer.degree, verifyCustomer.degree);
            Assert.AreEqual(customer.ownHouse, verifyCustomer.ownHouse);
        }
Example #2
0
        public static int CreateCustomer(Customer customer, ref List <string> errors)
        {
            if (customer == null)
            {
                errors.Add("Customer cannot be null");
            }

            if (errors.Count > 0)
            {
                return(-1);
            }

            if (customer.customer_id <= 0)
            {
                errors.Add("Invalid customer_id");
            }
            if (customer.age <= 0 || customer.age >= 200)
            {
                errors.Add("Invalid age");
            }
            if (!Regex.IsMatch(customer.zip.ToString(), @"^\d{5}(?:[-\s]\d{4})?$"))
            {
                errors.Add("Invalid zip code");
            }
            if (customer.gender != 'F' && customer.gender != 'M' && customer.gender != 'U')
            {
                errors.Add("Invalid gender");
            }
            if (customer.income < 0)
            {
                errors.Add("Invalid income");
            }
            if (customer.children < 0 || customer.children > 20)
            {
                errors.Add("Invalid number of children");
            }
            if (customer.degree != "None" &&
                customer.degree != "High School" &&
                customer.degree != "Partial High School" &&
                customer.degree != "Bachelors" &&
                customer.degree != "Partial College" &&
                customer.degree != "Graduate Degree")
            {
                errors.Add("Invalid degree");
            }
            if (customer.ownHouse < 0)
            {
                errors.Add("Invalid number of owned houses");
            }

            if (errors.Count > 0)
            {
                return(-1);
            }

            return(DALCustomer.CreateCustomer(customer, ref errors));
        }