Exemplo n.º 1
0
 public void InitTests()
 {
     bridge  = new Bridge(IPAddress.Parse("192.168.5.30"), "00:17:88:26:5f:33", "Philips hue", "30jodHoH6BvouvzmGR-Y8nJfa0XTN1j8sz2tstYJ");
     listobj = bridge.GetListObjects <Rule>();
     rcvm    = new RuleCreatorViewModel();
     _       = rcvm.Initialize(bridge);
 }
Exemplo n.º 2
0
        protected override ValidationResult IsValid(object value, ValidationContext validationContext)
        {
            RuleCreatorViewModel rcvm = validationContext.ObjectInstance as RuleCreatorViewModel;

            if (rcvm.ConditionOperator == "dx")
            {
                return(ValidationResult.Success);
            }
            string msg = string.Empty;

            try
            {
                if (
                    rcvm.ConditionOperator == "eq"
                    )
                {
                    if (TestEqual(value.ToString()))
                    {
                        return(ValidationResult.Success);
                    }
                    msg = string.Format(ErrorMessageString, "bool or int");
                }
                if (
                    rcvm.ConditionOperator == "ddx" ||
                    rcvm.ConditionOperator == "not in" ||
                    rcvm.ConditionOperator == "in" ||
                    rcvm.ConditionOperator == "stable" ||
                    rcvm.ConditionOperator == "not stable"
                    )
                {
                    if (TestChanged(value.ToString()))
                    {
                        return(ValidationResult.Success);
                    }
                    msg = string.Format(ErrorMessageString, "bool, int or Timestamp");
                }

                if (
                    rcvm.ConditionOperator == "lt" ||
                    rcvm.ConditionOperator == "gt"
                    )
                {
                    if (TextLtGt(value.ToString()))
                    {
                        return(ValidationResult.Success);
                    }
                    msg = string.Format(ErrorMessageString, "int");
                }
                else
                {
                    msg = string.Format(ErrorMessageString, rcvm.ConditionOperator);
                }

                return(new ValidationResult(msg));
            }
            catch (Exception)
            {
                msg = string.Format(ErrorMessageString, "unknown error");
                return(new ValidationResult(msg));
            }
        }