public void ConstuctorWithStringEmpty() { var comparer = new RegexComparer(new Regex(String.Empty)); Assert.IsTrue(comparer.Compare(String.Empty), "String.Empty should match"); Assert.IsTrue(comparer.Compare(" "), "Any string should not match"); Assert.IsFalse(comparer.Compare(null), "null should not match"); }
public void FailureRegularExpressionComparison() { var regex = "[ae]"; var valueToEvaluate = "box"; var actual = RegexComparer.Compare(valueToEvaluate, regex); Assert.False(actual); }
public void SuccessRegularExpressionComparison() { var regex = "[ae]"; var valueToEvaluate = "gray"; var actual = RegexComparer.Compare(valueToEvaluate, regex); Assert.True(actual); }
public void ConstructorWithValue() { var comparer = new RegexComparer(new Regex("^A test value$")); Assert.IsTrue(comparer.Compare("A test value"), "Exact match should pass."); Assert.IsFalse(comparer.Compare("a test Value"), "Match should be case sensitive"); Assert.IsFalse(comparer.Compare("A test value 2"), "Exact match plus more should not pass."); Assert.IsFalse(comparer.Compare("test"), "Partial match should not match"); Assert.IsFalse(comparer.Compare("completely different"), "Something completely different should not match"); Assert.IsFalse(comparer.Compare(String.Empty), "String.Empty should not match"); Assert.IsFalse(comparer.Compare(null), "null should not match"); }
protected override bool MatchesImpl(IAttributeBag attributeBag, ConstraintContext context) { string classValue = attributeBag.GetAttributeValue("class"); if (classValue == null) { classValue = attributeBag.GetAttributeValue("ClassName"); } if (classValue == null) { return(false); } return(_comparer.Compare(classValue)); }
private bool ExecuteComparer(Assert assert) { switch (assert.Rule) { case ComparerType.REGEX: return(RegexComparer.Compare(assert.Actual, assert.Expect)); case ComparerType.TEXTCONTAINS: return(TextComparer.Contains(assert.Actual, assert.Expect)); case ComparerType.TEXTSTARTSWITH: return(TextComparer.StartsWith(assert.Actual, assert.Expect)); case ComparerType.TEXTENDSWITH: return(TextComparer.EndsWith(assert.Actual, assert.Expect)); case ComparerType.TEXTEQUALS: return(TextComparer.Equals(assert.Actual, assert.Expect)); case ComparerType.ACCEPTALL: return(true); case ComparerType.JSONCONTAINS: return(JsonComparer.DeepContains(assert.Expect, assert.Actual)); case ComparerType.JSONEQUALITY: return(JsonComparer.DeepEqual(assert.Expect, assert.Actual)); case ComparerType.JSONSCHEMA: return(JsonComparer.MatchesSchema(assert.Actual, assert.Expect)); case ComparerType.JSONPATH: return(JsonComparer.PathEqual(assert.Expect, assert.Actual)); default: return(false); } }