public void TestValidation_MultipleRules_MultipleControls()
        {
            //---------------Set up test pack-------------------
            ValidationProvider validationProvider = new ValidationProvider(GetControlFactory().CreateErrorProvider());
            ITextBox           textBox1           = GetControlFactory().CreateTextBox();
            ITextBox           textBox2           = GetControlFactory().CreateTextBox();
            ValidationRule     validationRule1    = new ValidationRule();
            ValidationRule     validationRule2    = new ValidationRule();

            validationRule2.DataType     = ValidationDataType.Integer;
            validationRule2.MinimumValue = Convert.ToString(2);
            validationRule2.MaximumValue = Convert.ToString(10);
            validationRule1.IsRequired   = true;
            validationProvider.SetValidationRule(textBox1, validationRule1);
            validationProvider.SetValidationRule(textBox2, validationRule1);
            validationProvider.SetValidationRule(textBox2, validationRule2);
            bool result = false;

            //------------------Test PreConditions-------------
            Assert.IsFalse(result);
            //---------------Execute Test ----------------------
            textBox1.Text = "Hello";
            textBox2.Text = "5";
            result        = validationProvider.Validate();
            //---------------Test Result -----------------------
            Assert.IsTrue(result);
            //---------------Tear down -------------------------
        }
Пример #2
0
        private void chkNewTrackNumber_CheckedChanged(object sender, EventArgs e)
        {
            try
            {
                if (chkNewTrackNumber.Checked)
                {
                    txtTrackNumber.EditValue = null;
                    txtTrackNumber.Enabled   = false;

                    ValidationProvider.RemoveControlError(txtTrackNumber);
                }
                else
                {
                    txtTrackNumber.Enabled = true;
                    if (txtTrackNumber.EditValue != null)
                    {
                        txtTrackNumber.EditValue = null;
                    }

                    DevExpress.XtraEditors.DXErrorProvider.ConditionValidationRule conditionValidationRule = new DevExpress.XtraEditors.DXErrorProvider.ConditionValidationRule();
                    conditionValidationRule.ConditionOperator = DevExpress.XtraEditors.DXErrorProvider.ConditionOperator.IsNotBlank;
                    conditionValidationRule.ErrorText         = "Select Tracking Number ...";
                    conditionValidationRule.ErrorType         = DevExpress.XtraEditors.DXErrorProvider.ErrorType.Critical;
                    ValidationProvider.SetValidationRule(txtTrackNumber, conditionValidationRule);
                }
            }
            catch (Exception ex)
            {
                if (CDS.Shared.Exception.UserInterfaceExceptionHandler.HandleException(ref ex))
                {
                    throw ex;
                }
            }
        }
 public void TestMultipleRulesForOneControl()
 {
     //---------------Set up test pack-------------------
     ValidationProvider validationProvider = new ValidationProvider(GetControlFactory().CreateErrorProvider());
     ITextBox textBox1 = GetControlFactory().CreateTextBox();
     ValidationRule validationRule1 = new ValidationRule();
     ValidationRule validationRule2 = new ValidationRule();
     ValidationRule validationRule3 = new ValidationRule();
     //---------------Execute Test ----------------------
     validationProvider.SetValidationRule(textBox1, validationRule1);
     validationProvider.SetValidationRule(textBox1, validationRule2);
     validationProvider.SetValidationRule(textBox1, validationRule3);
     //---------------Test Result -----------------------
     Assert.AreEqual(3, validationProvider.GetValidationRules(textBox1).Count);
     //---------------Tear down -------------------------
 }
Пример #4
0
        public void It_should_pass_empty_validator()
        {
            var provider = new ValidationProvider();
            var textBox  = new TextBox();

            provider.SetValidationRule(textBox, new ValidationRule());
            provider.Validate().Should().Be.True();
        }
        public void TestMultipleRulesForOneControl()
        {
            //---------------Set up test pack-------------------
            ValidationProvider validationProvider = new ValidationProvider(GetControlFactory().CreateErrorProvider());
            ITextBox           textBox1           = GetControlFactory().CreateTextBox();
            ValidationRule     validationRule1    = new ValidationRule();
            ValidationRule     validationRule2    = new ValidationRule();
            ValidationRule     validationRule3    = new ValidationRule();

            //---------------Execute Test ----------------------
            validationProvider.SetValidationRule(textBox1, validationRule1);
            validationProvider.SetValidationRule(textBox1, validationRule2);
            validationProvider.SetValidationRule(textBox1, validationRule3);
            //---------------Test Result -----------------------
            Assert.AreEqual(3, validationProvider.GetValidationRules(textBox1).Count);
            //---------------Tear down -------------------------
        }
Пример #6
0
        private void PopulateValidation()
        {
            try
            {
                DevExpress.XtraEditors.DXErrorProvider.ConditionValidationRule ValidationRule = new DevExpress.XtraEditors.DXErrorProvider.ConditionValidationRule();

                ValidationRule.ErrorType = DevExpress.XtraEditors.DXErrorProvider.ErrorType.Critical;
                //base.PopulateValidation();

                foreach (Control item in this.LayoutControl.Controls)
                {
                    if (item.DataBindings.Count != 0)
                    {
                        DB.VW_Validation validationItem =
                            BL.ApplicationDataContext.Instance.ValidationRestrictions.Where(n =>
                                                                                            ((System.Windows.Forms.BindingSource)(item.DataBindings[0].DataSource)).DataSource.ToString().Split('.').Last().StartsWith(n.TableName) &&
                                                                                            n.ColumnName.StartsWith(item.DataBindings[0].BindingMemberInfo.BindingField)).FirstOrDefault();

                        if (validationItem == null)
                        {
                            continue;
                        }
                        //If there is a lenght restriction add validator
                        if ((Int32)validationItem.LengthMax.Value != 0)
                        {
                            if (item is DevExpress.XtraEditors.TextEdit)
                            {
                                (item as DevExpress.XtraEditors.TextEdit).Properties.MaxLength = (Int32)validationItem.LengthMax.Value;
                            }
                        }
                        //If there is a required field restriction add validator
                        if (!validationItem.Nullable.Value)
                        {
                            if (validationItem.ColumnName.Contains("Id"))
                            {
                                //FK IDs not allowed to be Zero
                                ValidationRule.ErrorText         = "Value cannot be blank";
                                ValidationRule.ConditionOperator = DevExpress.XtraEditors.DXErrorProvider.ConditionOperator.NotEquals;
                                ValidationRule.Value1            = 0;
                                ValidationProvider.SetValidationRule(item, ValidationRule);
                            }
                            else
                            {
                                //FK IDs not allowed to be NULL
                                ValidationRule.ErrorText         = "Value cannot be blank";
                                ValidationRule.ConditionOperator = DevExpress.XtraEditors.DXErrorProvider.ConditionOperator.IsNotBlank;
                                ValidationProvider.SetValidationRule(item, ValidationRule);
                            }
                        }
                    }
                }
            }
            catch
            {
            }
        }
        public void TestValidation_RequiredField_Fails_TwoControls_OneControl_IsIncorrect()
        {
            //---------------Set up test pack-------------------
            ValidationProvider validationProvider = new ValidationProvider(GetControlFactory().CreateErrorProvider());
            ITextBox           textBox1           = GetControlFactory().CreateTextBox();
            ITextBox           textBox2           = GetControlFactory().CreateTextBox();
            ValidationRule     validationRule1    = new ValidationRule();

            validationRule1.IsRequired = true;
            validationProvider.SetValidationRule(textBox1, validationRule1);
            validationProvider.SetValidationRule(textBox2, validationRule1);
            bool result = true;

            //-------------------Test PreConditions------------
            Assert.IsTrue(result);
            //---------------Execute Test ----------------------
            textBox1.Text = "";
            textBox2.Text = "World";
            result        = validationProvider.Validate();
            //---------------Test Result -----------------------
            Assert.IsFalse(result);
            //---------------Tear down -------------------------
        }
Пример #8
0
        protected override void OnStart()
        {
            base.OnStart();
            long?defaultSiteId = BL.ApplicationDataContext.Instance.LoggedInUser.DefaultSiteId;

            ServerModeSourceCompany.QueryableSource = DataContext.ReadonlyContext.VW_Company.Where(n => n.TypeId == (int)CompanyType && n.SiteId == defaultSiteId);
            BindingSource.DataSource = BL.ORG.ORG_TRX_LostSale.New;
            PopulateValidation();
            var validationQuantity = new DevExpress.XtraEditors.DXErrorProvider.ConditionValidationRule();

            validationQuantity.ErrorText         = "Enter value greater than Zero";
            validationQuantity.ErrorType         = DevExpress.XtraEditors.DXErrorProvider.ErrorType.Critical;
            validationQuantity.Value1            = 0;
            validationQuantity.ConditionOperator = DevExpress.XtraEditors.DXErrorProvider.ConditionOperator.Greater;
            ValidationProvider.SetValidationRule(txtQuantity, validationQuantity);
        }
 public void TestValidation_RequiredFieldOnOneControl()
 {
     //---------------Set up test pack-------------------
     ValidationProvider validationProvider = new ValidationProvider(GetControlFactory().CreateErrorProvider());
     ITextBox textBox1 = GetControlFactory().CreateTextBox();
     ValidationRule validationRule1 = new ValidationRule();
     validationRule1.IsRequired = true;
     validationRule1.DataType = ValidationDataType.Integer;
     validationRule1.MinimumValue = Convert.ToString(2);
     validationRule1.MaximumValue = Convert.ToString(10);
     validationProvider.SetValidationRule(textBox1, validationRule1);
     bool result = false;
     //-------------------Test PreConditions------------
     Assert.IsFalse(result);
     //---------------Execute Test ----------------------
     textBox1.Text = Convert.ToString(5);
     result = validationProvider.Validate();
     //---------------Test Result -----------------------
     Assert.IsTrue(result);
     //---------------Tear down -------------------------
 }
 public void TestValidation_RequiredField_Fails_TwoControls_OneControl_IsIncorrect()
 {
     //---------------Set up test pack-------------------
     ValidationProvider validationProvider = new ValidationProvider(GetControlFactory().CreateErrorProvider());
     ITextBox textBox1 = GetControlFactory().CreateTextBox();
     ITextBox textBox2 = GetControlFactory().CreateTextBox();
     ValidationRule validationRule1 = new ValidationRule();
     validationRule1.IsRequired = true;
     validationProvider.SetValidationRule(textBox1, validationRule1);
     validationProvider.SetValidationRule(textBox2, validationRule1);
     bool result = true;
     //-------------------Test PreConditions------------
     Assert.IsTrue(result);
     //---------------Execute Test ----------------------
     textBox1.Text = "";
     textBox2.Text = "World";
     result = validationProvider.Validate();
     //---------------Test Result -----------------------
     Assert.IsFalse(result);
     //---------------Tear down -------------------------
 }