public void JsonPathRequirementPositiveBehavior() { var context = new TestContext(); var resource = new TestResource(); var greaterThanRequirement = new JsonPathRequirement <TestCustomData, TestResource>( OperatorType.GreaterThan, context.Data.JPathIntValue, resource.JPathNestedDataSmallerIntValue, Direction.ContextToResource); Assert.True(greaterThanRequirement.Evaluate(context, resource)); var containsRequirement = new JsonPathRequirement <TestCustomData, TestResource>( OperatorType.GreaterThan, context.Data.JPathIntValue, resource.JPathNestedDataSmallerIntValue, Direction.ContextToResource); Assert.True(containsRequirement.Evaluate(context, resource)); var equalsRequirement = new JsonPathRequirement <TestCustomData, TestResource>( OperatorType.Equals, context.Data.JPathIntValue, resource.JPathNestedIntValue, Direction.ContextToResource); Assert.True(equalsRequirement.Evaluate(context, resource)); }
public void EvaluateMethodThrowsWithNullCustomData() { var dataJPathIntValue = new TestCustomData().JPathIntValue; var context = new TestContext(setNullCustomData: true); var resource = new TestResource(); var equalsRequirement = new JsonPathRequirement <TestCustomData, TestResource>( OperatorType.Equals, dataJPathIntValue, resource.JPathIntValue, Direction.ContextToResource); // Throws if no CustomData is provided - JsonPathRequirement needs custom data Assert.Throws <ArgumentNullException>(() => equalsRequirement.Evaluate(context, resource)); }