@@ -0,0 +1,2196 @@
+package org.xmlunit.assertj;%0A%0Aimport org.assertj.core.api.AbstractAssert;%0Aimport org.assertj.core.api.Assertions;%0Aimport org.xmlunit.builder.Input;%0Aimport org.xmlunit.validation.JAXPValidator;%0Aimport org.xmlunit.validation.Languages;%0Aimport org.xmlunit.validation.ValidationResult;%0A%0Aimport javax.xml.transform.Source;%0Aimport javax.xml.validation.Schema;%0A%0Apublic class ValidationAssert extends AbstractAssert%3CValidationAssert, Object%3E %7B%0A%0A    private final Source%5B%5D schemaSource;%0A    private final Schema schema;%0A    private ValidationResult result;%0A%0A    private ValidationAssert(Object actual, Source%5B%5D schemaSource, Schema schema) %7B%0A        super(actual, ValidationAssert.class);%0A        this.schemaSource = schemaSource;%0A        this.schema = schema;%0A    %7D%0A%0A    static ValidationAssert create(Object xmlSource, Object... schemaSource) %7B%0A%0A        Assertions.assertThat(schemaSource)%0A                .isNotNull()%0A                .isNotEmpty()%0A                .doesNotContainNull();%0A%0A        Source%5B%5D sources = new Source%5BschemaSource.length%5D;%0A%0A        for (int i = 0; i %3C schemaSource.length; i++) %7B%0A            sources%5Bi%5D = Input.from(schemaSource%5Bi%5D).build();%0A        %7D%0A%0A        return new ValidationAssert(xmlSource, sources, null);%0A    %7D%0A%0A    static ValidationAssert create(Object xmlSource, Schema schema) %7B%0A        Assertions.assertThat(schema).isNotNull();%0A%0A        return new ValidationAssert(xmlSource, null, schema);%0A    %7D%0A%0A    private void validate() %7B%0A        if (result == null) %7B%0A            Source source = Input.from(actual).build();%0A            JAXPValidator validator = new JAXPValidator(Languages.W3C_XML_SCHEMA_NS_URI);%0A            if (schema != null) %7B%0A                validator.setSchema(schema);%0A            %7D else %7B%0A                validator.setSchemaSources(schemaSource);%0A            %7D%0A            this.result = validator.validateInstance(source);%0A        %7D%0A    %7D%0A%0A    public ValidationAssert isValid() %7B%0A        validate();%0A        if (!result.isValid()) %7B%0A            failWithMessage(%22dupa%22);%0A        %7D%0A        return this;%0A    %7D%0A%0A    public void isNotValid() %7B%0A        validate();%0A        if (result.isValid()) %7B%0A            failWithMessage(%22dupa%22);%0A        %7D%0A    %7D%0A%7D%0A

Add ValidationAssert