public void VariableWithInvalidPathAndNoDefaultThrowsError() { var rule = new VariableRule("baz"); var data = new { foo = 5, bar = 10 }.ToJsonDocument().RootElement; JsonAssert.AreEquivalent(null, rule.Apply(data)); }
public void CatStringAndArrayConcatsValues() { var array = new[] { 1.AsJsonElement(), 2.AsJsonElement(), 3.AsJsonElement() }.AsJsonElement(); var rule = new CatRule("foo", array); JsonAssert.AreEquivalent("foo1,2,3", rule.Apply()); }
public void VariableWithInvalidPathAndDefaultReturnsDefault() { var rule = new VariableRule("baz", 11); var data = new { foo = 5, bar = 10 }.ToJsonDocument().RootElement; JsonAssert.AreEquivalent(11, rule.Apply(data)); }
public void VariableWithValidPathAndNoDefaultFetchesData() { var rule = new VariableRule("foo"); var data = new { foo = 5, bar = 10 }.ToJsonDocument().RootElement; JsonAssert.AreEquivalent(5, rule.Apply(data)); }
public void DivideNumbersReturnsSum() { var rule = new DivideRule(4, 5); var actual = rule.Apply(); JsonAssert.AreEquivalent(.8, actual); }
public void AddNumbersReturnsSum() { var rule = new AddRule(4, 5); var actual = rule.Apply(); JsonAssert.AreEquivalent(9, actual); }
public void AddSingleNumberDoesNothing() { var rule = new AddRule(3.14); var actual = rule.Apply(); JsonAssert.AreEquivalent(3.14, actual); }
public void SubtractNumbersReturnsSum() { var rule = new SubtractRule(4, 5); var actual = rule.Apply(); JsonAssert.AreEquivalent(-1, actual); }
public void MultiplyNumbersReturnsSum() { var rule = new MultiplyRule(4, 5); var actual = rule.Apply(); JsonAssert.AreEquivalent(20, actual); }
public void AddSingleStringWithNumberCasts() { var rule = new AddRule("3.14"); var actual = rule.Apply(); JsonAssert.AreEquivalent(3.14, actual); }
public void SubstrStartNegativeCount() { var rule = new SubstrRule("foobar", 2, -1); JsonAssert.AreEquivalent("oba", rule.Apply()); }
public void SubstrStartCountBeyondLength() { var rule = new SubstrRule("foobar", 3, 5); JsonAssert.AreEquivalent("bar", rule.Apply()); }
public void SubstrNegativeStartBeyondLengthNoCount() { var rule = new SubstrRule("foobar", -10); JsonAssert.AreEquivalent("foobar", rule.Apply()); }
public void AddSingleFalseThrowsError() { var rule = new AddRule(false); JsonAssert.AreEquivalent(0, rule.Apply()); }
public void AddSingleTrueThrowsError() { var rule = new AddRule(true); JsonAssert.AreEquivalent(1, rule.Apply()); }
public void IfStandardReturnsFalseResult() { var rule = new IfRule(false, 1, 2); JsonAssert.AreEquivalent(2, rule.Apply()); }
public void SubstrStartNegativeCountBeyondLength() { var rule = new SubstrRule("foobar", 2, -10); JsonAssert.AreEquivalent(string.Empty, rule.Apply()); }
public void CatTwoStringsConcatsValues() { var rule = new CatRule("foo", "bar"); JsonAssert.AreEquivalent("foobar", rule.Apply()); }
public void CatStringAndNullConcatsValues() { var rule = new CatRule("foo", LiteralRule.Null); JsonAssert.AreEquivalent("foo", rule.Apply()); }
public void CatStringAndNumberConcatsValues() { var rule = new CatRule("foo", 1); JsonAssert.AreEquivalent("foo1", rule.Apply()); }
public void IfStandardReturnsTrueResult() { var rule = new IfRule(true, 1, 2); JsonAssert.AreEquivalent(1, rule.Apply()); }
public void IfStandardReturnsSecondFalseResult() { var rule = new IfRule(false, 1, false, 2, 3); JsonAssert.AreEquivalent(3, rule.Apply()); }
public void SubstrStartNoCount() { var rule = new SubstrRule("foobar", 3); JsonAssert.AreEquivalent("bar", rule.Apply()); }
public void CatStringAndBooleanConcatsValues() { var rule = new CatRule("foo", true); JsonAssert.AreEquivalent("footrue", rule.Apply()); }