Ejemplo n.º 1
0
            public void ShouldReturnExpectedValidationResult_WhenGivenOperands(string inputJson, string sourceJson, object expected, int calls)
            {
                // Arrange
                using var inputJsonDoc  = JsonDocument.Parse(inputJson);
                using var sourceJsonDoc = JsonDocument.Parse(sourceJson);

                var jsonObjectValidator = new Mock <IJsonObjectValidator>();

                jsonObjectValidator.Setup(validator => validator.Validate(It.IsAny <JsonElement>(), It.IsAny <JsonElement>()))
                .Returns(new ValidationResult(true));

                var jsonArrayValidator = new JsonArrayValidator(jsonObjectValidator.Object);

                // Act
                var result = jsonArrayValidator.Validate(inputJsonDoc.RootElement, sourceJsonDoc.RootElement);

                // Assert
                result.Should().BeEquivalentTo((ValidationResult)expected);
                jsonObjectValidator.Verify(validator => validator.Validate(It.IsAny <JsonElement>(), It.IsAny <JsonElement>()), Times.Exactly(calls));
            }
Ejemplo n.º 2
0
        public void ArrayValidator()
        {
            var c = new JsonSchemaValidationContext("test");

            {
                var v = new JsonArrayValidator();
                v.MaxItems = 1;
                Assert.Null(v.Validate(c, new object[] { 0 }));
                Assert.NotNull(v.Validate(c, new object[] { 0, 1 }));
            }

            {
                var v = new JsonArrayValidator();
                v.MinItems = 1;
                Assert.Null(v.Validate(c, new object[] { 0 }));
                Assert.NotNull(v.Validate(c, new object[] { }));
            }

            Assert.True(c.IsEmpty());
        }