public void SchemaValidation_DataIsNotEmpty_ChecksForInvalidNamespace_AndReturnsAnyErrorsFromInvalidNamepsaceValidator()
        {
            var wrongNamespaceXmlLocation = Path.Combine(
                Path.GetDirectoryName(Assembly.GetExecutingAssembly().CodeBase), @"ExampleXML\v3-wrong-namespace.xml");
            var wrongNamespaceXml = File.ReadAllText(new Uri(wrongNamespaceXmlLocation).LocalPath);

            A.CallTo(() => xmlConverter.Convert(A<byte[]>._))
                .Returns(XDocument.Parse(wrongNamespaceXml));

            var error = new XmlValidationError(ErrorLevel.Error, XmlErrorType.Schema, "Some message", 1);

            A.CallTo(() => namespaceValidator.Validate(A<XNamespace>._, A<XNamespace>._))
                .Returns(new List<XmlValidationError> { error });

            var result = SchemaValidator().Validate(new byte[1], string.Empty, string.Empty, A.Dummy<string>());

            A.CallTo(() => namespaceValidator.Validate(A<XNamespace>._, A<XNamespace>._))
                .MustHaveHappened(Repeated.Exactly.Once);

            Assert.Contains(error, result);
        }
Exemplo n.º 2
0
        public void Validate_HasErrors_MessageShown()
        {
            dialogService
            .SetupSequence(x => x.AskForFiles(It.IsAny <bool>(), FileType.Xsd))
            .Returns(new[] { GetFilePath("XmlTools/Samples/NO_PRIB_1_002_00_05_07_05.xsd") });
            dialogService
            .SetupSequence(x => x.AskForFiles(It.IsAny <bool>(), FileType.Xml))
            .Returns(new[] { GetFilePath("XmlTools/Samples/Прибыль_Correct.xml") });

            var error = new XmlValidationError(ValidationErrorSeverity.Error, "message", "value", "element name");

            xsdSchemaValidator
            .Setup(x => x.Validate(It.IsAny <string>(), It.IsAny <string[]>()))
            .Returns(new[] { error });

            SetCulture();

            validator.Validate(app.Object);

            range.Verify(x => x.set_Value(It.IsAny <object>(), It.Is <string>(s => s.Contains("element name"))));
            range.Verify(x => x.set_Value(It.IsAny <object>(), It.IsAny <string>()), Times.Exactly(8));
        }
Exemplo n.º 3
0
        public void SchemaValidation_DataIsNotEmpty_ChecksForInvalidNamespace_AndReturnsAnyErrorsFromInvalidNamepsaceValidator()
        {
            var wrongNamespaceXmlLocation = Path.Combine(
                Path.GetDirectoryName(Assembly.GetExecutingAssembly().CodeBase), @"ExampleXML\v3-wrong-namespace.xml");
            var wrongNamespaceXml = File.ReadAllText(new Uri(wrongNamespaceXmlLocation).LocalPath);

            A.CallTo(() => xmlConverter.Convert(A <byte[]> ._))
            .Returns(XDocument.Parse(wrongNamespaceXml));

            var error = new XmlValidationError(ErrorLevel.Error, XmlErrorType.Schema, "Some message", 1);

            A.CallTo(() => namespaceValidator.Validate(A <XNamespace> ._, A <XNamespace> ._))
            .Returns(new List <XmlValidationError> {
                error
            });

            var result = SchemaValidator().Validate(new byte[1], string.Empty, string.Empty, A.Dummy <string>());

            A.CallTo(() => namespaceValidator.Validate(A <XNamespace> ._, A <XNamespace> ._))
            .MustHaveHappened(Repeated.Exactly.Once);

            Assert.Contains(error, result);
        }
Exemplo n.º 4
0
 public static DataReturnUploadError ToDataReturnsUploadError(this XmlValidationError error)
 {
     return(new DataReturnUploadError(error.ErrorLevel.ToDomainEnumeration <ErrorLevel>(),
                                      error.ErrorType.ToUploadErrorType(), error.Message,
                                      error.LineNumber.HasValue ? error.LineNumber.Value : 0));
 }