diff --git a/.gitignore b/.gitignore index bef2d87..82a67ac 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ /xmlunit-2.6.2-src.tar.gz /xmlunit-2.6.3-src.tar.gz /xmlunit-2.7.0-src.tar.gz +/xmlunit-2.8.2-src.tar.gz diff --git a/0001-Disable-tests-requiring-network-access.patch b/0001-Disable-tests-requiring-network-access.patch index 04bef68..83c06da 100644 --- a/0001-Disable-tests-requiring-network-access.patch +++ b/0001-Disable-tests-requiring-network-access.patch @@ -1,130 +1,127 @@ -diff -r -u xmlunit-2.7.0-src-orig/xmlunit-assertj/src/test/java/org/xmlunit/assertj/XmlAssertNodesByXPathTest.java xmlunit-2.7.0-src/xmlunit-assertj/src/test/java/org/xmlunit/assertj/XmlAssertNodesByXPathTest.java ---- xmlunit-2.7.0-src-orig/xmlunit-assertj/src/test/java/org/xmlunit/assertj/XmlAssertNodesByXPathTest.java 2018-08-21 22:03:14.000000000 +0200 -+++ xmlunit-2.7.0-src/xmlunit-assertj/src/test/java/org/xmlunit/assertj/XmlAssertNodesByXPathTest.java 2020-05-15 13:40:22.050239084 +0200 -@@ -43,14 +43,6 @@ +From 73abcb06636217e52a9d56b4dc3c69bd37141d44 Mon Sep 17 00:00:00 2001 +From: Marian Koncek +Date: Mon, 4 Mar 2019 14:52:59 +0100 +Subject: [PATCH 1/4] Disable tests requiring network access + +--- + .../java/org/xmlunit/assertj3/XmlAssertNodesByXPathTest.java | 2 ++ + .../java/org/xmlunit/assertj3/XmlAssertValidationTest.java | 6 ++++++ + .../java/org/xmlunit/assertj3/XmlAssertValueByXPathTest.java | 2 ++ + .../java/org/xmlunit/matchers/ValidationMatcherTest.java | 2 ++ + 4 files changed, 12 insertions(+) + +diff --git a/xmlunit-assertj3/src/test/java/org/xmlunit/assertj3/XmlAssertNodesByXPathTest.java b/xmlunit-assertj3/src/test/java/org/xmlunit/assertj3/XmlAssertNodesByXPathTest.java +index 6499f67..c465a51 100644 +--- a/xmlunit-assertj3/src/test/java/org/xmlunit/assertj3/XmlAssertNodesByXPathTest.java ++++ b/xmlunit-assertj3/src/test/java/org/xmlunit/assertj3/XmlAssertNodesByXPathTest.java +@@ -13,6 +13,7 @@ + */ + package org.xmlunit.assertj3; + ++import org.junit.Ignore; + import org.junit.Rule; + import org.junit.Test; + +@@ -43,6 +44,7 @@ public class XmlAssertNodesByXPathTest { } @Test -- public void testNodesByXPath_withNull_shouldFailed() { -- -- thrown.expectAssertionError(format("%nExpecting not blank but was:")); -- -- assertThat("").nodesByXPath(null); -- } -- -- @Test - public void testNodesByXPath_withWhitespacesOnly_shouldFailed() { ++ @Ignore + public void testNodesByXPath_withNull_shouldFailed() { - thrown.expectAssertionError(format("%nExpecting not blank but was:<\" \n \t\">")); -diff -r -u xmlunit-2.7.0-src-orig/xmlunit-assertj/src/test/java/org/xmlunit/assertj/XmlAssertValidationTest.java xmlunit-2.7.0-src/xmlunit-assertj/src/test/java/org/xmlunit/assertj/XmlAssertValidationTest.java ---- xmlunit-2.7.0-src-orig/xmlunit-assertj/src/test/java/org/xmlunit/assertj/XmlAssertValidationTest.java 2020-05-03 21:05:12.000000000 +0200 -+++ xmlunit-2.7.0-src/xmlunit-assertj/src/test/java/org/xmlunit/assertj/XmlAssertValidationTest.java 2020-05-15 13:44:15.720157403 +0200 -@@ -91,64 +91,12 @@ + thrown.expectAssertionError(format("%nExpecting not blank but was:")); +diff --git a/xmlunit-assertj3/src/test/java/org/xmlunit/assertj3/XmlAssertValidationTest.java b/xmlunit-assertj3/src/test/java/org/xmlunit/assertj3/XmlAssertValidationTest.java +index 7e2dc0e..f743cc4 100644 +--- a/xmlunit-assertj3/src/test/java/org/xmlunit/assertj3/XmlAssertValidationTest.java ++++ b/xmlunit-assertj3/src/test/java/org/xmlunit/assertj3/XmlAssertValidationTest.java +@@ -14,6 +14,7 @@ + package org.xmlunit.assertj3; + + import org.junit.ClassRule; ++import org.junit.Ignore; + import org.junit.Rule; + import org.junit.Test; + import org.xmlunit.TestResources; +@@ -91,6 +92,7 @@ public class XmlAssertValidationTest { } @Test -- public void testIsValidAgainst_withEmptySourcesArray_shouldPass() { -- -- StreamSource xml = new StreamSource(new File(TestResources.TEST_RESOURCE_DIR + "BookXsdGenerated.xml")); -- -- assertThat(xml).isValidAgainst(); -- assertThat(xml).isValidAgainst(new Object[0]); -- } -- -- @Test -- public void testIsValidAgainst_withBrokenXmlAndEmptySourcesArray_shouldFailed() { -- -- thrown.expectAssertionError("1. line=9; column=8; type=ERROR;" + -- " message=cvc-complex-type.2.4.b: The content of element 'Book' is not complete." + -- " One of '{\"https://www.xmlunit.org/publishing\":Publisher}' is expected."); -- -- StreamSource xml = new StreamSource(new File(TestResources.TEST_RESOURCE_DIR + "invalidBook.xml")); -- -- assertThat(xml).isValidAgainst(); -- } -- -- @Test -- public void testIsValid_shouldPass() { -- -- StreamSource xml = new StreamSource(new File(TestResources.TEST_RESOURCE_DIR + "BookXsdGenerated.xml")); -- -- assertThat(xml).isValid(); -- } -- -- @Test -- public void testIsValid_withBrokenXml_shouldPass() { -- -- thrown.expectAssertionError("1. line=9; column=8; type=ERROR;" + -- " message=cvc-complex-type.2.4.b: The content of element 'Book' is not complete." + -- " One of '{\"https://www.xmlunit.org/publishing\":Publisher}' is expected."); -- -- StreamSource xml = new StreamSource(new File(TestResources.TEST_RESOURCE_DIR + "invalidBook.xml")); -- -- assertThat(xml).isValid(); -- } -- -- @Test - public void testIsInvalid_withBrokenXml_shouldPass() { ++ @Ignore + public void testIsValidAgainst_withEmptySourcesArray_shouldPass() { - StreamSource xml = new StreamSource(new File(TestResources.TEST_RESOURCE_DIR + "invalidBook.xml")); - - assertThat(xml).isInvalid(); + StreamSource xml = new StreamSource(new File(TestResources.TEST_RESOURCE_DIR + "BookXsdGenerated.xml")); +@@ -100,6 +102,7 @@ public class XmlAssertValidationTest { } -- -- @Test -- public void testIsInvalid_shouldField() { -- -- thrown.expectAssertionErrorPattern("^\\nExpecting:\\n <.*" -- + Pattern.quote(TestResources.TEST_RESOURCE_DIR) + "BookXsdGenerated.xml>\\nto be invalid"); -- -- StreamSource xml = new StreamSource(new File(TestResources.TEST_RESOURCE_DIR + "BookXsdGenerated.xml")); -- -- assertThat(xml).isInvalid(); -- } @Test - public void testIsValidAgainst_withNullSchemaSources_shouldFailed() { -Nur in xmlunit-2.7.0-src/xmlunit-assertj/src/test/java/org/xmlunit/assertj: XmlAssertValidationTest.java~. -diff -r -u xmlunit-2.7.0-src-orig/xmlunit-assertj/src/test/java/org/xmlunit/assertj/XmlAssertValueByXPathTest.java xmlunit-2.7.0-src/xmlunit-assertj/src/test/java/org/xmlunit/assertj/XmlAssertValueByXPathTest.java ---- xmlunit-2.7.0-src-orig/xmlunit-assertj/src/test/java/org/xmlunit/assertj/XmlAssertValueByXPathTest.java 2020-04-28 10:10:30.000000000 +0200 -+++ xmlunit-2.7.0-src/xmlunit-assertj/src/test/java/org/xmlunit/assertj/XmlAssertValueByXPathTest.java 2020-05-15 13:47:13.361335083 +0200 -@@ -31,14 +31,6 @@ ++ @Ignore + public void testIsValidAgainst_withBrokenXmlAndEmptySourcesArray_shouldFailed() { + + thrown.expectAssertionError("1. line=9; column=8; type=ERROR;" + +@@ -112,6 +115,7 @@ public class XmlAssertValidationTest { + } + + @Test ++ @Ignore + public void testIsValid_shouldPass() { + + StreamSource xml = new StreamSource(new File(TestResources.TEST_RESOURCE_DIR + "BookXsdGenerated.xml")); +@@ -120,6 +124,7 @@ public class XmlAssertValidationTest { + } + + @Test ++ @Ignore + public void testIsValid_withBrokenXml_shouldPass() { + + thrown.expectAssertionError("1. line=9; column=8; type=ERROR;" + +@@ -140,6 +145,7 @@ public class XmlAssertValidationTest { + } + + @Test ++ @Ignore + public void testIsInvalid_shouldField() { + + thrown.expectAssertionErrorPattern("^\\nExpecting:\\n <.*" +diff --git a/xmlunit-assertj3/src/test/java/org/xmlunit/assertj3/XmlAssertValueByXPathTest.java b/xmlunit-assertj3/src/test/java/org/xmlunit/assertj3/XmlAssertValueByXPathTest.java +index 3ce5284..63c3db0 100644 +--- a/xmlunit-assertj3/src/test/java/org/xmlunit/assertj3/XmlAssertValueByXPathTest.java ++++ b/xmlunit-assertj3/src/test/java/org/xmlunit/assertj3/XmlAssertValueByXPathTest.java +@@ -14,6 +14,7 @@ + package org.xmlunit.assertj3; + + import org.junit.ClassRule; ++import org.junit.Ignore; + import org.junit.Rule; + import org.junit.Test; + import org.xmlunit.assertj3.util.SetEnglishLocaleRule; +@@ -31,6 +32,7 @@ public class XmlAssertValueByXPathTest { public static SetEnglishLocaleRule locale = new SetEnglishLocaleRule(); @Test -- public void testValueByXPath_withNull_shouldFailed() { -- -- thrown.expectAssertionError(format("%nExpecting not blank but was:")); -- -- assertThat("").valueByXPath(null); -- } -- -- @Test - public void testValueByXPath_withWhitespacesOnly_shouldFailed() { ++ @Ignore + public void testValueByXPath_withNull_shouldFailed() { - thrown.expectAssertionError(format("%nExpecting not blank but was:<\" \n \t\">")); -Nur in xmlunit-2.7.0-src/xmlunit-assertj/src/test/java/org/xmlunit/assertj: XmlAssertValueByXPathTest.java~. -diff -r -u xmlunit-2.7.0-src-orig/xmlunit-matchers/src/test/java/org/xmlunit/matchers/ValidationMatcherTest.java xmlunit-2.7.0-src/xmlunit-matchers/src/test/java/org/xmlunit/matchers/ValidationMatcherTest.java ---- xmlunit-2.7.0-src-orig/xmlunit-matchers/src/test/java/org/xmlunit/matchers/ValidationMatcherTest.java 2019-12-31 14:00:54.000000000 +0100 -+++ xmlunit-2.7.0-src/xmlunit-matchers/src/test/java/org/xmlunit/matchers/ValidationMatcherTest.java 2020-05-15 13:49:17.980758207 +0200 -@@ -78,19 +78,6 @@ - is(valid(new StreamSource(new File(TestResources.BOOK_XSD))))); + thrown.expectAssertionError(format("%nExpecting not blank but was:")); +diff --git a/xmlunit-matchers/src/test/java/org/xmlunit/matchers/ValidationMatcherTest.java b/xmlunit-matchers/src/test/java/org/xmlunit/matchers/ValidationMatcherTest.java +index 6f26927..bf9a153 100644 +--- a/xmlunit-matchers/src/test/java/org/xmlunit/matchers/ValidationMatcherTest.java ++++ b/xmlunit-matchers/src/test/java/org/xmlunit/matchers/ValidationMatcherTest.java +@@ -13,6 +13,7 @@ + */ + package org.xmlunit.matchers; + ++import org.junit.Ignore; + import org.junit.Rule; + import org.junit.Test; + import org.junit.rules.ExpectedException; +@@ -79,6 +80,7 @@ public class ValidationMatcherTest { } -- @Test -- public void shouldSuccessfullyValidateInstanceWithoutExplicitSchemaSource() { -- try { -- Class.forName("java.nio.file.FileSystem"); -- } catch (Throwable t) { -- assumeTrue("Skipping on Java6 as it doesn't like xmlunit.org's certificate", -- false); -- } -- assertThat(new StreamSource(new File(TEST_RESOURCE_DIR + "BookXsdGenerated.xml")), -- is(new ValidationMatcher())); -- -- } -- - @Test(expected = AssertionError.class) - public void shouldThrowOnBrokenInstanceWithoutExplicitSchemaSource() { - assertThat(new StreamSource(new File(TEST_RESOURCE_DIR + "invalidBook.xml")), -Nur in xmlunit-2.7.0-src/xmlunit-matchers/src/test/java/org/xmlunit/matchers: ValidationMatcherTest.java~. + @Test ++ @Ignore + public void shouldSuccessfullyValidateInstanceWithoutExplicitSchemaSource() { + try { + Class.forName("java.nio.file.FileSystem"); +-- +2.25.4 + diff --git a/0002-Port-to-hamcrest-2.1.patch b/0002-Port-to-hamcrest-2.1.patch new file mode 100644 index 0000000..70336f6 --- /dev/null +++ b/0002-Port-to-hamcrest-2.1.patch @@ -0,0 +1,156 @@ +From c81eb91d7b9aa9728dfc83d68a881b4e2a0fa8d2 Mon Sep 17 00:00:00 2001 +From: Marian Koncek +Date: Thu, 29 Aug 2019 13:58:24 +0200 +Subject: [PATCH 2/4] Port to hamcrest 2.1 + +--- + .../src/main/java/org/xmlunit/matchers/CompareMatcher.java | 3 --- + .../main/java/org/xmlunit/matchers/EvaluateXPathMatcher.java | 2 -- + .../src/main/java/org/xmlunit/matchers/HasXPathMatcher.java | 2 -- + .../src/main/java/org/xmlunit/matchers/TypeMatcher.java | 5 ----- + .../main/java/org/xmlunit/matchers/ValidationMatcher.java | 3 --- + 5 files changed, 15 deletions(-) + +diff --git a/xmlunit-matchers/src/main/java/org/xmlunit/matchers/CompareMatcher.java b/xmlunit-matchers/src/main/java/org/xmlunit/matchers/CompareMatcher.java +index 6452081..226399c 100644 +--- a/xmlunit-matchers/src/main/java/org/xmlunit/matchers/CompareMatcher.java ++++ b/xmlunit-matchers/src/main/java/org/xmlunit/matchers/CompareMatcher.java +@@ -33,7 +33,6 @@ import org.xmlunit.util.Predicate; + + import org.hamcrest.BaseMatcher; + import org.hamcrest.Description; +-import org.hamcrest.Factory; + import org.hamcrest.Matcher; + + import java.lang.reflect.Constructor; +@@ -112,7 +111,6 @@ public final class CompareMatcher extends BaseMatcher + *

+ * As input all types are supported which are supported by {@link Input#from(Object)}. + */ +- @Factory + public static CompareMatcher isIdenticalTo(final Object control) { + return new CompareMatcher(control).checkForIdentical(); + } +@@ -128,7 +126,6 @@ public final class CompareMatcher extends BaseMatcher + *

+ * As input all types are supported which are supported by {@link Input#from(Object)}. + */ +- @Factory + public static CompareMatcher isSimilarTo(final Object control) { + return new CompareMatcher(control).checkForSimilar(); + } +diff --git a/xmlunit-matchers/src/main/java/org/xmlunit/matchers/EvaluateXPathMatcher.java b/xmlunit-matchers/src/main/java/org/xmlunit/matchers/EvaluateXPathMatcher.java +index 6eb23e5..1e9b8b5 100644 +--- a/xmlunit-matchers/src/main/java/org/xmlunit/matchers/EvaluateXPathMatcher.java ++++ b/xmlunit-matchers/src/main/java/org/xmlunit/matchers/EvaluateXPathMatcher.java +@@ -16,7 +16,6 @@ package org.xmlunit.matchers; + + import org.hamcrest.BaseMatcher; + import org.hamcrest.Description; +-import org.hamcrest.Factory; + import org.hamcrest.Matcher; + import org.w3c.dom.Node; + import org.xmlunit.builder.Input; +@@ -93,7 +92,6 @@ public class EvaluateXPathMatcher extends BaseMatcher { + * @param valueMatcher matcher for the value at the specified xpath + * @return the xpath matcher + */ +- @Factory + public static EvaluateXPathMatcher hasXPath(String xPath, Matcher valueMatcher) { + return new EvaluateXPathMatcher(xPath, valueMatcher); + } +diff --git a/xmlunit-matchers/src/main/java/org/xmlunit/matchers/HasXPathMatcher.java b/xmlunit-matchers/src/main/java/org/xmlunit/matchers/HasXPathMatcher.java +index 08325cd..6fbf0ac 100644 +--- a/xmlunit-matchers/src/main/java/org/xmlunit/matchers/HasXPathMatcher.java ++++ b/xmlunit-matchers/src/main/java/org/xmlunit/matchers/HasXPathMatcher.java +@@ -16,7 +16,6 @@ package org.xmlunit.matchers; + + import org.hamcrest.BaseMatcher; + import org.hamcrest.Description; +-import org.hamcrest.Factory; + import org.hamcrest.Matcher; + import org.w3c.dom.Node; + import org.xmlunit.builder.Input; +@@ -135,7 +134,6 @@ public class HasXPathMatcher extends BaseMatcher { + * @param xPath the target xpath + * @return the xpath matcher + */ +- @Factory + public static HasXPathMatcher hasXPath(String xPath) { + return new HasXPathMatcher(xPath); + } +diff --git a/xmlunit-matchers/src/main/java/org/xmlunit/matchers/TypeMatcher.java b/xmlunit-matchers/src/main/java/org/xmlunit/matchers/TypeMatcher.java +index b9002a1..7cd6843 100644 +--- a/xmlunit-matchers/src/main/java/org/xmlunit/matchers/TypeMatcher.java ++++ b/xmlunit-matchers/src/main/java/org/xmlunit/matchers/TypeMatcher.java +@@ -15,7 +15,6 @@ + package org.xmlunit.matchers; + + import org.hamcrest.Description; +-import org.hamcrest.Factory; + import org.hamcrest.Matcher; + import org.hamcrest.TypeSafeMatcher; + +@@ -128,7 +127,6 @@ public abstract class TypeMatcher extends TypeSafeMatcher { + * @param valueMatcher valueMatcher for the converted value + * @return the BigDecimal matcher + */ +- @Factory + public static TypeMatcher asBigDecimal(Matcher valueMatcher) { + return new BigDecimalTypeMatcher(valueMatcher); + } +@@ -146,7 +144,6 @@ public abstract class TypeMatcher extends TypeSafeMatcher { + * @param valueMatcher valueMatcher for the converted value + * @return the Double matcher + */ +- @Factory + public static TypeMatcher asDouble(Matcher valueMatcher) { + return new DoubleTypeMatcher(valueMatcher); + } +@@ -164,7 +161,6 @@ public abstract class TypeMatcher extends TypeSafeMatcher { + * @param valueMatcher valueMatcher for the converted value + * @return the Integer matcher + */ +- @Factory + public static TypeMatcher asInt(Matcher valueMatcher) { + return new IntegerTypeMatcher(valueMatcher); + } +@@ -182,7 +178,6 @@ public abstract class TypeMatcher extends TypeSafeMatcher { + * @param valueMatcher valueMatcher for the converted value + * @return the Boolean matcher + */ +- @Factory + public static TypeMatcher asBoolean(Matcher valueMatcher) { + return new BooleanTypeMatcher(valueMatcher); + } +diff --git a/xmlunit-matchers/src/main/java/org/xmlunit/matchers/ValidationMatcher.java b/xmlunit-matchers/src/main/java/org/xmlunit/matchers/ValidationMatcher.java +index 3126349..51f58ec 100644 +--- a/xmlunit-matchers/src/main/java/org/xmlunit/matchers/ValidationMatcher.java ++++ b/xmlunit-matchers/src/main/java/org/xmlunit/matchers/ValidationMatcher.java +@@ -27,7 +27,6 @@ import org.xmlunit.validation.ValidationProblem; + import org.xmlunit.validation.ValidationResult; + import org.hamcrest.BaseMatcher; + import org.hamcrest.Description; +-import org.hamcrest.Factory; + + import javax.xml.transform.Source; + import javax.xml.validation.Schema; +@@ -121,7 +120,6 @@ public class ValidationMatcher extends BaseMatcher { + } + } + +- @Factory + public static ValidationMatcher valid(final Object schemaSource) { + return new ValidationMatcher(schemaSource); + } +@@ -129,7 +127,6 @@ public class ValidationMatcher extends BaseMatcher { + /** + * @since XMLUnit 2.3.0 + */ +- @Factory + public static ValidationMatcher valid(final Schema schema) { + return new ValidationMatcher(schema); + } +-- +2.21.0 + diff --git a/0003-Drop-support-for-JAXB.patch b/0003-Drop-support-for-JAXB.patch new file mode 100644 index 0000000..923eb35 --- /dev/null +++ b/0003-Drop-support-for-JAXB.patch @@ -0,0 +1,60 @@ +From 9866f331db726db0ac6af64649c308b01b34ea56 Mon Sep 17 00:00:00 2001 +From: Mikolaj Izdebski +Date: Tue, 5 Nov 2019 12:14:08 +0100 +Subject: [PATCH 4/4] Drop support for JAXB + +--- + xmlunit-core/src/main/java/org/xmlunit/builder/Input.java | 4 ++-- + .../src/test/java/org/xmlunit/builder/InputTest.java | 7 ------- + 2 files changed, 2 insertions(+), 9 deletions(-) + +diff --git a/xmlunit-core/src/main/java/org/xmlunit/builder/Input.java b/xmlunit-core/src/main/java/org/xmlunit/builder/Input.java +index 27d9c5a..81165cc 100644 +--- a/xmlunit-core/src/main/java/org/xmlunit/builder/Input.java ++++ b/xmlunit-core/src/main/java/org/xmlunit/builder/Input.java +@@ -153,8 +153,8 @@ public class Input { + /** + * Build a Source from a Jaxb-Object. + */ +- public static JaxbBuilder fromJaxb(Object jaxbObject) { +- return new JaxbBuilder(jaxbObject); ++ public static Builder fromJaxb(Object jaxbObject) { ++ throw new RuntimeException("This implementation has JAXB support removed"); + } + + /** +diff --git a/xmlunit-core/src/test/java/org/xmlunit/builder/InputTest.java b/xmlunit-core/src/test/java/org/xmlunit/builder/InputTest.java +index e767f38..98e3fe7 100644 +--- a/xmlunit-core/src/test/java/org/xmlunit/builder/InputTest.java ++++ b/xmlunit-core/src/test/java/org/xmlunit/builder/InputTest.java +@@ -31,7 +31,6 @@ import org.w3c.dom.Document; + import org.xmlunit.NullNode; + import org.xmlunit.TestResources; + import org.xmlunit.XMLUnitException; +-import org.xmlunit.builder.jaxb.ComplexNode; + import org.xmlunit.util.Convert; + import org.xmlunit.xpath.JAXPXPathEngine; + +@@ -132,10 +131,6 @@ public class InputTest { + allIsWellFor(s, "furry"); + } + +- @Test public void shouldParseJaxbObject() throws Exception { +- allIsWellFor(Input.fromJaxb(new ComplexNode()).build(), "complexNode"); +- } +- + @Test public void shouldParseUnknownToSource() throws Exception { + // from Source + allIsWellFor(Input.from(Input.fromByteArray(readTestFile()).build()).build()); +@@ -153,8 +148,6 @@ public class InputTest { + allIsWellFor(Input.from(new URI("file:" + TestResources.ANIMAL_FILE)).build()); + // from URL + allIsWellFor(Input.from(new URL("file:" + TestResources.ANIMAL_FILE)).build()); +- // from Jaxb-Object +- allIsWellFor(Input.from(new ComplexNode()).build(), "complexNode"); + // from InputStream + try (FileInputStream is = new FileInputStream(TestResources.ANIMAL_FILE)) { + allIsWellFor(Input.from(is).build()); +-- +2.29.2 + diff --git a/sources b/sources index 4d4b1d2..8ac144c 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (xmlunit-2.7.0-src.tar.gz) = 888e13165962d1a3906236e760fccd28cb7053f962a34da58d8c3b9305cd1a610aca7be19f7fca9fec69ef4be4cb5e2a8355a0c43f27c14d6d3b693e1a0f8d6e +SHA512 (xmlunit-2.8.2-src.tar.gz) = 6d6caff75e21829c6e37777e7b37a6d9cdd6b03efb04866884b1b7630c0de584c78321b1f1145bdb47da7afeabb69ec81fa9ff980c41382c360572ef858df507 diff --git a/xmlunit-2.7.0-ValueAssertTest-fix.patch b/xmlunit-2.7.0-ValueAssertTest-fix.patch deleted file mode 100644 index cb96820..0000000 --- a/xmlunit-2.7.0-ValueAssertTest-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ru ../xmlunit-2.7.0-src.ORIG/xmlunit-assertj/src/test/java/org/xmlunit/assertj/ValueAssertTest.java ./xmlunit-assertj/src/test/java/org/xmlunit/assertj/ValueAssertTest.java ---- ../xmlunit-2.7.0-src.ORIG/xmlunit-assertj/src/test/java/org/xmlunit/assertj/ValueAssertTest.java 2020-04-28 03:09:04.000000000 -0500 -+++ ./xmlunit-assertj/src/test/java/org/xmlunit/assertj/ValueAssertTest.java 2021-01-29 13:24:38.101158331 -0600 -@@ -263,7 +263,7 @@ - @Test - public void testIsEqualTo_withAttributeValueExpression_shouldFailed() { - -- thrown.expectAssertionError("expected:<\"[something]\"> but was:<\"[abc]\">"); -+ thrown.expectAssertionError("Expecting:%n <\"abc\">%nto be equal to:%n <\"something\">%nbut was not."); - - String xml = ""; - diff --git a/xmlunit.spec b/xmlunit.spec index 97d9654..309d840 100644 --- a/xmlunit.spec +++ b/xmlunit.spec @@ -1,127 +1,103 @@ -# Copyright (c) 2000-2007, JPackage Project -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the -# distribution. -# 3. Neither the name of the JPackage Project nor the names of its -# contributors may be used to endorse or promote products derived -# from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -# +# Workaround for rhbz#1969370: __bootstrap macro is not defined in +# CentOS Stream, See https://bugzilla.redhat.com/1969370 +%global __bootstrap ~bootstrap + +%bcond_without bootstrap Name: xmlunit +Version: 2.8.2 +Release: 3%{?dist} Summary: Provides classes to do asserts on xml -Epoch: 0 -Version: 2.7.0 -Release: 7%{?dist} -# xmlunit2 is licensed under ASL 2.0, xmlunit-legacy is still BSD-licensed +# The whole package is ASL 2.0 except for xmlunit-legacy which is BSD License: ASL 2.0 and BSD - -URL: https://www.xmlunit.org/ Source0: https://github.com/xmlunit/xmlunit/releases/download/v%{version}/%{name}-%{version}-src.tar.gz +URL: https://www.xmlunit.org/ -Patch0: 0001-Disable-tests-requiring-network-access.patch -Patch1: xmlunit-2.7.0-ValueAssertTest-fix.patch - -BuildArch: noarch +Patch1: 0001-Disable-tests-requiring-network-access.patch +Patch2: 0002-Port-to-hamcrest-2.1.patch +Patch3: 0003-Drop-support-for-JAXB.patch BuildRequires: maven-local -BuildRequires: mvn(com.sun.istack:istack-commons-runtime) -BuildRequires: mvn(com.sun.xml.bind:jaxb-impl) -BuildRequires: mvn(jakarta.activation:jakarta.activation-api) -BuildRequires: mvn(javax.xml.bind:jaxb-api) +%if %{with bootstrap} +BuildRequires: javapackages-bootstrap +%else BuildRequires: mvn(junit:junit) BuildRequires: mvn(net.bytebuddy:byte-buddy) BuildRequires: mvn(org.apache.felix:maven-bundle-plugin) -BuildRequires: mvn(org.apache.maven.plugins:maven-shade-plugin) BuildRequires: mvn(org.assertj:assertj-core) BuildRequires: mvn(org.hamcrest:hamcrest-core) BuildRequires: mvn(org.hamcrest:hamcrest-library) BuildRequires: mvn(org.mockito:mockito-core) +%endif + +BuildArch: noarch %description XMLUnit provides you with the tools to verify the XML you emit is the one you want to create. It provides helpers to validate against an XML Schema, assert the values of XPath queries or compare XML documents against expected outcomes. - %package javadoc Summary: Javadoc for %{name} %description javadoc Javadoc for %{name} - %package assertj Summary: Assertj for %{name} %description assertj This package provides %{summary}. - %package core Summary: Core package for %{name} %description core This package provides %{summary}. - %package legacy Summary: Legacy package for %{name} %description legacy This package provides %{summary}. - %package matchers Summary: Matchers for %{name} %description matchers This package provides %{summary}. - %package placeholders Summary: Placeholders for %{name} %description placeholders This package provides %{summary}. - %prep %setup -q -n %{name}-%{version}-src -%patch0 -p1 %patch1 -p1 +%patch2 -p1 +%patch3 -p1 + +# Tests compare the string constent of thrown exceptions +# and we use a different version of assertj +find xmlunit-assertj3/src/test -name '*.java' -exec sed -i 's/\(Expecting not blank but was:\)<\(.*\)>/\1 \2/' {} + +sed -i 's/\(expected:\)<\\"\[\(something\)\]\\"> but was:<\\"\[\(abc\)\]\\">/\1 \\"\2\\"\\nbut was : \\"\3\\"/' xmlunit-assertj3/src/test/java/org/xmlunit/assertj3/ValueAssertTest.java + +%pom_disable_module xmlunit-assertj %pom_remove_plugin org.codehaus.mojo:buildnumber-maven-plugin %pom_remove_plugin :maven-assembly-plugin +%pom_remove_plugin -r :maven-shade-plugin -# Add deps to EE APIs removed in Java 11 -%pom_change_dep javax.activation:activation jakarta.activation:jakarta.activation-api . xmlunit-core -%pom_change_dep com.sun.xml.bind:jaxb-core com.sun.xml.bind:jaxb-impl . xmlunit-core -%pom_add_dep com.sun.istack:istack-commons-runtime::test xmlunit-core - -%mvn_alias "org.xmlunit:xmlunit-legacy" "xmlunit:xmlunit" +%mvn_alias org.xmlunit:xmlunit-legacy xmlunit:xmlunit +%mvn_alias org.xmlunit:xmlunit-assertj3 org.xmlunit:xmlunit-assertj +# JAXB and JAF are not available in JDK11 +%pom_remove_dep org.glassfish.jaxb: xmlunit-core +%pom_remove_dep jakarta.xml.bind: xmlunit-core +rm -rf xmlunit-core/src/{main,test}/java/org/xmlunit/builder/{jaxb/,JaxbBuilder.java,JaxbBuilderTest.java} %build %mvn_build -s @@ -129,30 +105,41 @@ This package provides %{summary}. %install %mvn_install - %files -f .mfiles-xmlunit-parent %doc README.md CONTRIBUTING.md RELEASE_NOTES.md %license LICENSE %files javadoc -f .mfiles-javadoc -%files assertj -f .mfiles-xmlunit-assertj +%files assertj -f .mfiles-xmlunit-assertj3 %files core -f .mfiles-xmlunit-core %files legacy -f .mfiles-xmlunit-legacy %files matchers -f .mfiles-xmlunit-matchers %files placeholders -f .mfiles-xmlunit-placeholders - %changelog -* Fri Apr 16 2021 Mohan Boddu - 0:2.7.0-7 -- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 +* Tue Jun 08 2021 Mikolaj Izdebski - 2.8.2-3 +- Bootstrap Maven for CentOS Stream 9 + +* Mon May 17 2021 Mikolaj Izdebski - 2.8.2-2 +- Bootstrap build +- Non-bootstrap build + +* Thu Feb 04 2021 Merlin Mathesius - 0:2.7.0-7 +- Update previous patch to use improved version that was merged upstream * Fri Jan 29 2021 Merlin Mathesius - 0:2.7.0-6 -- Fix FTBFS by patchng ValueAssertTest to adjust for changed format of +- Fix FTBFS by patching ValueAssertTest to adjust for changed format of mismatched string exception * Thu Jan 28 2021 Fedora Release Engineering - 0:2.7.0-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild +* Tue Jan 26 2021 Marian Koncek - 2.8.2-1 +- Update to upstream version 2.8.2 + +* Wed Jul 29 2020 Marian Koncek - 2.7.0-1 +- Update to upstream version 2.7.0 + * Wed Jul 29 2020 Fedora Release Engineering - 0:2.7.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild @@ -168,12 +155,24 @@ This package provides %{summary}. * Fri Jan 31 2020 Fedora Release Engineering - 0:2.6.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild +* Tue Nov 05 2019 Mikolaj Izdebski - 2.6.3-2 +- Mass rebuild for javapackages-tools 201902 + * Mon Jul 29 2019 Fabio Valentini - 0:2.6.3-1 - Update to version 2.6.3. * Sat Jul 27 2019 Fedora Release Engineering - 0:1.6-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild +* Wed Jun 26 2019 Marian Koncek - 2.6.3-1 +- Update to upstream version 2.6.3 + +* Fri May 24 2019 Mikolaj Izdebski - 2.6.2-2 +- Mass rebuild for javapackages-tools 201901 + +* Mon Mar 04 2019 Marian Koncek - 0:2.6.2-1 +- Update to upstream version 2.6.2 + * Sun Feb 03 2019 Fedora Release Engineering - 0:1.6-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild @@ -285,4 +284,3 @@ This package provides %{summary}. * Wed Dec 17 2003 Paul Nasrat - 0:1.0-1jpp - Initial Version -