Пример #1
0
 public FluencyConfiguration()
 {
     // Initialize default values.
     ConstructIdGenerator    = () => new StaticValueIdGenerator(0);
     DefaultValueConventions = new List <IDefaultConvention>
     {
         // Strings
         Convention.ByName("Firstname", p => ARandom.FirstName()),
         Convention.ByName("LastName", p => ARandom.LastName()),
         Convention.ByName("FullName", p => ARandom.FullName()),
         Convention.ByName("City", p => ARandom.City()),
         Convention.ByName("State", p => ARandom.StateCode()),
         Convention.ByName("Zip", p => ARandom.ZipCode()),
         Convention.ByName("ZipCode", p => ARandom.ZipCode()),
         Convention.ByName("PostalCode", p => ARandom.ZipCode()),
         Convention.ByName("Email", p => ARandom.Email()),
         Convention.ByName("Address", p => String.Format("{0} {1} {2}",
                                                         ARandom.IntBetween(10, 9999),
                                                         ARandom.LastName(),
                                                         ARandom.ItemFrom("Street", "Lane", "Ave.", "Blvd."))),
         Convention.ByName("Phone", p => ARandom.StringPattern("999-999-9999")),
         Convention.ByName("HomePhone", p => ARandom.StringPattern("999-999-9999")),
         Convention.ByName("WorkPhone", p => ARandom.StringPattern("999-999-9999")),
         Convention.ByName("BusinessPhone", p => ARandom.StringPattern("999-999-9999")),
         Convention.ByName("Fax", p => ARandom.StringPattern("999-999-9999")),
         Convention.String(20),
         // Dates
         Convention.ByName("BirthDate", p => ARandom.BirthDate()),
         Convention.DateType(),
         Convention.IntegerType(),
         Convention.ByType <Decimal>(p => ARandom.CurrencyAmount())
     };
 }
Пример #2
0
        public void UpdateCustomer_with_nulls_saves_all_data_correctly()
        {
            var customer = new Customer();

            customer.StoreId  = ARandom.IntBetween(1000000, int.MaxValue);
            customer.LastName = ARandom.LastName();
            customer.Email    = "archive+" + ARandom.StringFromCharacterSet(15, "abcdefghijklmnopqrstuvwxyz").TrimEnd() + "@animatomusic.be";
            customer.Test     = true;

            //save the customer to the webshop
            string result = WebMethods.CustomerMethods.UpdateCustomer(customer);

            result = XElement.Parse(result).Value;

            Assert.IsTrue(result == "ok",
                          string.Format("Customer with store_id {0} could not be created/updated. Unexpected return value was: {1}", customer.StoreId, result));

            //retrieve the customer from the webshop
            string   errorMsg;
            Customer customerFromWS = WebMethods.CustomerMethods.GetCustomerByStoreId((int)customer.StoreId, out errorMsg);

            //compare all values
            Assert.AreEqual(customer.StoreId, customerFromWS.StoreId, "The field comparison for field \"store_id\" failed.");
            Assert.AreEqual(customer.LastName, customerFromWS.LastName, "The field comparison for field \"last_name\" failed.");
            Assert.AreEqual(customer.FirstName, customerFromWS.FirstName, "The field comparison for field \"first_name\" failed.");
            Assert.AreEqual(customer.ShippingAddressStreet, customerFromWS.ShippingAddressStreet, "The field comparison for field \"shipping_address_street\" failed.");
            Assert.AreEqual(customer.ShippingAddressHomeNumber, customerFromWS.ShippingAddressHomeNumber, "The field comparison for field \"shipping_address_home_number\" failed.");
            Assert.AreEqual(customer.ShippingAddressZip, customerFromWS.ShippingAddressZip, "The field comparison for field \"shipping_address_zip\" failed.");
            Assert.AreEqual(customer.ShippingAddressCity, customerFromWS.ShippingAddressCity, "The field comparison for field \"shipping_address_city\" failed.");
            Assert.AreEqual(customer.ShippingAddressCountry, customerFromWS.ShippingAddressCountry, "The field comparison for field \"shipping_address_country\" failed.");
            Assert.AreEqual(customer.Phone, customerFromWS.Phone, "The field comparison for field \"phone\" failed.");
            Assert.AreEqual(customer.Mobile, customerFromWS.Mobile, "The field comparison for field \"mobile\" failed.");
            Assert.AreEqual(customer.Email, customerFromWS.Email, "The field comparison for field \"email\" failed.");
            Assert.AreEqual(customer.BillingName, customerFromWS.BillingName, "The field comparison for field \"billing_name\" failed.");
            Assert.AreEqual(customer.BillingContact, customerFromWS.BillingContact, "The field comparison for field \"billing_contact\" failed.");
            Assert.AreEqual(customer.BillingAddress1, customerFromWS.BillingAddress1, "The field comparison for field \"billing_address1\" failed.");
            Assert.AreEqual(customer.BillingAddress2, customerFromWS.BillingAddress2, "The field comparison for field \"billing_address2\" failed.");
            Assert.AreEqual(customer.BillingAddress3, customerFromWS.BillingAddress3, "The field comparison for field \"billing_address3\" failed.");
            Assert.AreEqual(customer.VatNumber, customerFromWS.VatNumber, "The field comparison for field \"vat_number\" failed.");
            Assert.AreEqual(customer.WebshopDiscount6, customerFromWS.WebshopDiscount6, "The field comparison for field \"std_discount_for_tax_rate_id1\" failed.");
            Assert.AreEqual(customer.WebshopDiscount21, customerFromWS.WebshopDiscount21, "The field comparison for field \"std_discount_for_tax_rate_id2\" failed.");
            Assert.AreEqual(customer.IsTeacher, customerFromWS.IsTeacher, "The field comparison for field \"is_teacher\" failed.");
            Assert.AreEqual(customer.IsReseller, customerFromWS.IsReseller, "The field comparison for field \"is_reseller\" failed.");
            Assert.AreEqual(customer.Institution, customerFromWS.Institution, "The field comparison for field \"institution\" failed.");
            Assert.AreEqual(customer.TeachingSubjects, customerFromWS.TeachingSubjects, "The field comparison for field \"teaching_subjects\" failed.");
            Assert.AreEqual(customer.TeacherCardNumber, customerFromWS.TeacherCardNumber, "The field comparison for field \"card_number\" failed.");
            Assert.AreEqual(customer.TeacherCardValidFrom, customerFromWS.TeacherCardValidFrom, "The field comparison for field \"card_valid_from\" failed.");
            Assert.AreEqual(customer.TeacherCardValidTo, customerFromWS.TeacherCardValidTo, "The field comparison for field \"card_valid_to\" failed.");
            Assert.AreEqual(customer.TeacherRegistrationNote, customerFromWS.TeacherRegistrationNote, "The field comparison for field \"teacher_registration_note\" failed.");
            Assert.AreEqual(customer.TeacherConfirmed, customerFromWS.TeacherConfirmed, "The field comparison for field \"teacher_confirmed\" failed.");
            Assert.AreEqual(customer.LastLoginDttm, customerFromWS.LastLoginDttm, "The field comparison for field \"last_login\" failed.");
            Assert.AreEqual(customer.Test, customerFromWS.Test, "The field comparison for field \"test\" failed.");
            //CreatedDttm and UpdateDttm should not be compared, because upon creation of a customer in the webshop, both fields will be set if no value is provided
            //Assert.AreEqual(customer.CreatedDttm, customerFromWS.CreatedDttm, "The field comparison for field \"created\" failed.");
            //Assert.AreEqual(customer.UpdatedDttm, customerFromWS.UpdatedDttm, "The field comparison for field \"updated\" failed.");
            Assert.AreEqual(customer.DeletedDttm, customerFromWS.DeletedDttm, "The field comparison for field \"deleted\" failed.");
        }
Пример #3
0
        public Customer Customer()
        {
            var customer = new Customer
            {
                Id        = GetUniqueId(),
                FirstName = ARandom.FirstName(),
                LastName  = ARandom.LastName()
            };

            return(customer);
        }
 public AnonymousCustomerBuilder()
 {
     SetProperty(x => x.StoreId, ARandom.IntBetween(1000000, int.MaxValue));
     //SetProperty(x => x.WebshopId, ARandom.IntBetween(1000000, int.MaxValue));
     SetProperty(x => x.LastName, "Test_" + ARandom.LastName());
     SetProperty(x => x.FirstName, "Test_" + ARandom.FirstName());
     SetProperty(x => x.ShippingAddressStreet, "Test_" + ARandom.Text(15).TrimEnd());
     SetProperty(x => x.ShippingAddressHomeNumber, ARandom.Text(5).TrimEnd());
     SetProperty(x => x.ShippingAddressCity, ARandom.City());
     SetProperty(x => x.ShippingAddressZip, ARandom.ZipCode());
     SetProperty(x => x.ShippingAddressState, "");
     SetProperty(x => x.ShippingAddressCountryId, (int?)ARandom.EnumValue <Enums.Country>());
     SetProperty(x => x.ShippingAddressCountry, Enum.GetName(typeof(Enums.Country), ARandom.EnumValue <Enums.Country>()));
     SetProperty(x => x.Phone, ARandom.StringPattern("##/### ## ##"));
     SetProperty(x => x.Mobile, ARandom.StringPattern("####/## ## ##"));
     SetProperty(x => x.Email, "archive+" + ARandom.StringFromCharacterSet(15, "abcdefghijklmnopqrstuvwxyz").TrimEnd() + "@animatomusic.be");
     SetProperty(x => x.BillingAddress1, ARandom.Text(15).TrimEnd());
     SetProperty(x => x.BillingAddress2, ARandom.Text(15).TrimEnd());
     SetProperty(x => x.BillingAddress3, ARandom.Text(15).TrimEnd());
     SetProperty(x => x.BillingName, ARandom.Text(30).TrimEnd());
     SetProperty(x => x.BillingContact, ARandom.Text(30).TrimEnd());
     SetProperty(x => x.VatNumber, ARandom.Text(15).TrimEnd());
     SetProperty(x => x.WebshopDiscount6, (byte)ARandom.IntBetween(0, 100));
     SetProperty(x => x.WebshopDiscount21, (byte)ARandom.IntBetween(0, 100));
     SetProperty(x => x.IsTeacher, ARandom.Boolean());
     SetProperty(x => x.IsReseller, ARandom.Boolean());
     SetProperty(x => x.Institution, ARandom.Text(50).TrimEnd());
     SetProperty(x => x.TeacherCardNumber, "17511240450-000010");
     SetProperty(x => x.TeacherCardValidFrom, ARandom.DateAfter(DateTime.Today));
     SetProperty(x => x.TeacherCardValidTo, ARandom.DateAfter(DateTime.Today));
     SetProperty(x => x.TeacherRegistrationNote, ARandom.Text(150).TrimEnd());
     SetProperty(x => x.TeacherConfirmed, ARandom.DateTime());
     SetProperty(x => x.TeachingSubjects, ARandom.Text(50).TrimEnd());
     SetProperty(x => x.Test, true);
     SetProperty(x => x.CreatedDttm, ARandom.DateTimeInPast());
     SetProperty(x => x.UpdatedDttm, ARandom.DateTimeInPast());
     SetProperty(x => x.DeletedDttm, (DateTime?)null);
 }
Пример #5
0
 /// <summary>
 /// Creates a convention to automatically assign a default value to a property:<br/>
 /// Assign a random last name as when the property name contains "lastname" (case-insensitive).
 /// </summary>
 /// <returns>The constructed <see cref="IDefaultConvention{T}"/></returns>
 public static IDefaultConvention <string> LastName()
 {
     return(ByName("LastName", p => ARandom.LastName()));
 }
Пример #6
0
 protected override void SetupDefaultValues()
 {
     SetProperty(x => x.Id, GenerateNewId());
     SetProperty(x => x.FirstName, ARandom.FirstName());
     SetProperty(x => x.LastName, ARandom.LastName());
 }