3 Commits

Author SHA256 Message Date
Fridrich Štrba
c5cf9dd0e8 fix typo in changes 2025-11-17 14:32:43 +01:00
Fridrich Štrba
ece2643f49 2.11.0 2025-11-05 18:00:55 +01:00
Fridrich Štrba
aa95905a1a bsc#1245931 and bsc#1245914 2025-09-05 08:16:30 +02:00
7 changed files with 159 additions and 143 deletions

15
_service Normal file
View File

@@ -0,0 +1,15 @@
<services>
<service name="tar_scm" mode="disabled">
<param name="scm">git</param>
<param name="url">https://github.com/xmlunit/xmlunit.git</param>
<param name="revision">v2.11.0</param>
<param name="match-tag">v*</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="versionrewrite-pattern">v(.*)</param>
</service>
<service name="recompress" mode="disabled">
<param name="file">*.tar</param>
<param name="compression">xz</param>
</service>
<service name="set_version" mode="disabled"/>
</services>

Binary file not shown.

View File

@@ -1,78 +0,0 @@
<?xml version="1.0"?>
<!--
Copyright (c) 2007-2014, Jeff Martin, Tim Bacon
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* 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.
* Neither the name of the xmlunit.sourceforge.net 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.
-->
<!--
This POM is not usable as means to build XMLUnit with Maven2, it is
a minimal POM to allow XMLUnit's artifacts to be added to a Maven
repository.
-->
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>xmlunit</groupId>
<artifactId>xmlunit</artifactId>
<packaging>jar</packaging>
<name>XMLUnit for Java</name>
<version>1.6</version>
<url>http://www.xmlunit.org/</url>
<description>XMLUnit compares a control XML document to a test document or the result of a transformation, validates documents, and compares the results of XPath expressions.</description>
<licenses>
<license>
<name>BSD License</name>
<url>https://sourceforge.net/p/xmlunit/code/HEAD/tree/trunk/LICENSE.txt</url>
</license>
</licenses>
<scm>
<url>https://sourceforge.net/p/xmlunit/code/HEAD/tree/trunk/</url>
<connection>scm:svn:https://svn.code.sf.net/p/xmlunit/code/trunk</connection>
</scm>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.2</version>
<optional>true</optional>
</dependency>
</dependencies>
<!-- Personally I'm not fond of the developers section but Sonatype's OSSRH
requires it -->
<developers>
<developer>
<id>bodewig</id>
<name>Stefan Bodewig</name>
<email>stefan.bodewig@freenet dot de</email>
</developer>
</developers>
</project>

BIN
xmlunit-2.11.0.tar.xz LFS Normal file

Binary file not shown.

BIN
xmlunit-build.tar.xz LFS Normal file

Binary file not shown.

View File

@@ -1,3 +1,27 @@
-------------------------------------------------------------------
Wed Nov 5 16:56:35 UTC 2025 - Fridrich Strba <fstrba@suse.com>
- Upgrade to 2.11.0
* XMLUnit 2.x is a complete rewrite of XMLUnit and actually
doesn't share any code with XMLUnit for Java 1.x.
* Some goals for XMLUnit 2.x:
+ create .NET and Java versions that are compatible in design
while trying to be idiomatic for each platform
+ remove all static configuration (the old XMLUnit class
setter methods)
+ focus on the parts that are useful for testing
- XPath
- (Schema) validation
- comparisons
+ be independent of any test framework
* XMLUnit 1.x is no longer maintained
-------------------------------------------------------------------
Fri Sep 5 06:12:53 UTC 2025 - Fridrich Strba <fstrba@suse.com>
- Use directly the xalan-j2 jar instead of the jaxp_transform_impl
alternative (bsc#1245931 and bsc#1245914)
------------------------------------------------------------------- -------------------------------------------------------------------
Fri Jan 12 11:26:50 UTC 2024 - Fridrich Strba <fstrba@suse.com> Fri Jan 12 11:26:50 UTC 2024 - Fridrich Strba <fstrba@suse.com>
@@ -12,13 +36,12 @@ Sun Mar 20 13:06:04 UTC 2022 - Fridrich Strba <fstrba@suse.com>
Sun Dec 12 13:03:16 UTC 2021 - Dirk Müller <dmueller@suse.com> Sun Dec 12 13:03:16 UTC 2021 - Dirk Müller <dmueller@suse.com>
- update to 1.6: - update to 1.6:
* In cases of ATTR_NAME_NOT_FOUND and CHILD_NODE_NOT_FOUND differences the value * In cases of ATTR_NAME_NOT_FOUND and CHILD_NODE_NOT_FOUND
used to be the local name of the missing attribute or node. differences the value used to be the local name of the missing
attribute or node.
* New assertXpathEvaluatesTo overloads in XMLAssert and a new QualifiedName class * New assertXpathEvaluatesTo overloads in XMLAssert and a new
can be used to assert the stringified result of an XPath expression is actually QualifiedName class can be used to assert the stringified result
a qualified name of an XPath expression is actually a qualified name
* The JAXP 1.3 based validator ignored xsi:namespaceLocation and * The JAXP 1.3 based validator ignored xsi:namespaceLocation and
xsi:noNamespaceLocation attributes. xsi:noNamespaceLocation attributes.

View File

@@ -1,8 +1,7 @@
# #
# spec file for package xmlunit # spec file for package xmlunit
# #
# Copyright (c) 2024 SUSE LLC # Copyright (c) 2025 SUSE LLC and contributors
# Copyright (c) 2000-2008, JPackage Project
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@@ -18,88 +17,142 @@
Name: xmlunit Name: xmlunit
Version: 1.6 Version: 2.11.0
Release: 0 Release: 0
Summary: Provides classes to do asserts on XML Summary: XMLUnit for Java
License: BSD-3-Clause License: Apache-2.0 AND BSD-3-Clause
Group: Development/Libraries/Java Group: Development/Libraries/Java
URL: https://xmlunit.sourceforge.net/ URL: https://www.xmlunit.org/
Source0: https://download.sourceforge.net/%{name}/%{name}-%{version}-src.zip Source0: %{name}-%{version}.tar.xz
Source1: https://repo1.maven.org/maven2/%{name}/%{name}/%{version}/%{name}-%{version}.pom Source1: %{name}-build.tar.xz
BuildRequires: ant BuildRequires: ant
BuildRequires: ant-junit BuildRequires: assertj-core
BuildRequires: fdupes BuildRequires: fdupes
# Needed for maven conversions BuildRequires: glassfish-jaxb-api
BuildRequires: hamcrest
BuildRequires: javapackages-local >= 6 BuildRequires: javapackages-local >= 6
BuildRequires: jaxb-api
BuildRequires: junit BuildRequires: junit
BuildRequires: unzip BuildRequires: jurand
BuildRequires: xalan-j2
BuildRequires: xerces-j2
BuildRequires: xml-commons-apis >= 1.3
Requires: junit
Requires: xalan-j2
Requires: xerces-j2
Requires: xml-commons-apis >= 1.3
BuildArch: noarch BuildArch: noarch
%description %description
XMLUnit extends JUnit to simplify unit testing of XML. It compares a control XMLUnit provides you with the tools to verify the XML you emit is the one you
XML document to a test document or the result of a transformation, validates want to create. It provides helpers to validate against an XML Schema, assert
documents against a DTD, and (from v0.5) compares the results of XPath the values of XPath queries or compare XML documents against expected outcomes.
expressions.
%package assertj
Summary: XMLUnit with AssertJ fluent API
License: Apache-2.0
Group: Development/Libraries/Java
%description assertj
This package provides %{summary}.
%package core
Summary: XMLUnit for Java core package
License: Apache-2.0
Group: Development/Libraries/Java
%description core
This package provides %{summary}.
%package jakarta-jaxb-impl
Summary: XMLUnit for Java JAXB support using Jakarta EE packages
License: Apache-2.0
Group: Development/Libraries/Java
%description jakarta-jaxb-impl
This package provides %{summary}.
%package legacy
Summary: XMLUnit 1.x Compatibility Layer
License: BSD-3-Clause
Group: Development/Libraries/Java
Provides: %{name} = %{version}
Obsoletes: %{name} < %{version}
%description legacy
This package provides %{summary}.
%package matchers
Summary: XMLUnit for Java Hamcrest Matchers
License: Apache-2.0
Group: Development/Libraries/Java
%description matchers
This package provides %{summary}.
%package placeholders
Summary: XMLUnit for Java Placeholder DSL for Comparisons
License: Apache-2.0
Group: Development/Libraries/Java
%description placeholders
This package provides %{summary}.
%package javadoc %package javadoc
Summary: Javadoc for %{name} Summary: Javadoc for %{name}
License: Apache-2.0
Group: Documentation/HTML Group: Documentation/HTML
%description javadoc %description javadoc
Javadoc for %{name}. Also contains userguide. Javadoc for %{name}. Also contains userguide.
%prep %prep
%setup -q %autosetup -p1 -a1
perl -pi -e 's/\r$//g' README.txt LICENSE.txt # Port to hamcrest 2.1
%{java_remove_annotations} xmlunit-matchers -p org[.]hamcrest[.]Factory
# remove all binary libs and javadocs %pom_disable_module xmlunit-assertj
find . -name "*.jar" -delete
%build %build
mkdir -p lib
cat > build.properties << EOF build-jar-repository -s lib \
junit.lib=$(build-classpath junit) assertj-core/assertj-core \
xmlxsl.lib=$(build-classpath xalan-j2 xerces-j2 xml-commons-jaxp-1.3-apis) glassfish-jaxb-api \
test.report.dir=test hamcrest/hamcrest \
EOF jaxb-api/jakarta.xml.bind-api \
junit
cat > docbook.properties <<EOF ant package javadoc
db5.xsl=%{_datadir}/xml/docbook/stylesheet/nwalsh/current/
EOF
export CLASSPATH=
export OPT_JAR_LIST="junit ant/ant-junit jaxp_transform_impl ant/ant-trax xalan-j2-serializer"
ant -Djavac.source=1.8 -Djavac.target=1.8 -Dbuild.compiler=modern -Dhaltonfailure=yes jar javadocs
%install %install
mkdir -p %{buildroot}%{_javadir} install -dm 0755 %{buildroot}%{_javadocdir}/%{name}
install -m 0644 build/lib/%{name}-%{version}.jar %{buildroot}%{_javadir}/%{name}.jar install -dm 0755 %{buildroot}%{_javadir}/%{name}
install -dm 0755 %{buildroot}%{_mavenpomdir}/%{name}
for i in assertj3 core jakarta-jaxb-impl legacy matchers placeholders; do
cp -r %{name}-${i}/target/site/apidocs %{buildroot}%{_javadocdir}/%{name}/${i}
install -pm 0644 %{name}-${i}/target/%{name}-${i}-%{version}.jar \
%{buildroot}%{_javadir}/%{name}/%{name}-${i}.jar
%{mvn_install_pom} %{name}-${i}/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/%{name}-${i}.pom
if [ "${i}" = legacy ]; then
%add_maven_depmap %{name}/%{name}-${i}.pom %{name}/%{name}-${i}.jar -a xmlunit:xmlunit -f ${i}
elif [ "${i}" = assertj3 ]; then
%add_maven_depmap %{name}/%{name}-${i}.pom %{name}/%{name}-${i}.jar -a org.xmlunit:xmlunit-assertj -f ${i}
else
%add_maven_depmap %{name}/%{name}-${i}.pom %{name}/%{name}-${i}.jar -f ${i}
fi
done
ln -s -f %{name}/%{name}-legacy.jar %{buildroot}%{_javadir}/%{name}.jar
%fdupes -s %{buildroot}%{_javadocdir}
# Javadoc %files assertj -f .mfiles-assertj3
mkdir -p %{buildroot}%{_javadocdir}/%{name}
cp -pr build/doc/* %{buildroot}%{_javadocdir}/%{name}
%fdupes -s %{buildroot}%{_javadocdir}/%{name}
# poms %files core -f .mfiles-core
install -d -m 755 %{buildroot}%{_mavenpomdir} %doc README.md CONTRIBUTING.md RELEASE_NOTES.md
%{mvn_install_pom} %{SOURCE1} \ %license LICENSE
%{buildroot}%{_mavenpomdir}/%{name}.pom
%add_maven_depmap %{name}.pom %{name}.jar
%files -f .mfiles %files jakarta-jaxb-impl -f .mfiles-jakarta-jaxb-impl
%license LICENSE.txt
%doc README.txt %files legacy -f .mfiles-legacy
%{_javadir}/%{name}.jar
%files matchers -f .mfiles-matchers
%files placeholders -f .mfiles-placeholders
%files javadoc %files javadoc
%doc userguide
%{_javadocdir}/%{name} %{_javadocdir}/%{name}
%changelog %changelog