コード例 #1
0
        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));
        }
コード例 #2
0
        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));
        }