/// <summary> /// Adds the validator to the chain for this key. /// </summary> /// <param name="key"></param> /// <param name="vldtr"></param> public void PutValidator(Field key, Validator vldtr) { CheckNotLocked(); if (vldtr == null) { return; } if (fieldMap.Get(key.Id) == null) { AddField(key); } Validator v; if (validators.TryGetValue(key, out v)) { validators[key] = new ComboValidator(v, vldtr); } else { validators[key] = vldtr; } }
private void Test(int n, String s, Object good, Object bad) { Validator_int v1 = Validator_int.Get(n); Validator_boolean v2 = Validator_boolean.Get(n); ComboValidator v = new ComboValidator(v1, v2); Assert.AreEqual(s, v.ToString()); Assert.IsTrue(v.Validate(good)); Assert.IsFalse(v.Validate(bad)); if (n > 0) { v.ElementValidator(); } }
public void Test5() { Validator v1 = Validator_boolean.Get(1); Validator v2 = Validator_int.Get(1); Validator v = new ComboValidator(v1, v2); Assert.IsTrue(v.Validate(new Boolean[] {})); Assert.IsTrue(v.Validate(new int[] {})); v = v.ElementValidator(); Assert.IsTrue(v.Validate(true)); Assert.IsTrue(v.Validate(false)); Assert.IsTrue(v.Validate(0)); v = v.ElementValidator(); }