# # spec file for package junit # # Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # Name: junit Version: 4.11 Release: 0 Summary: Java regression test package License: CPL-1.0 Group: Development/Libraries/Java Url: http://www.junit.org/ Source0: https://github.com/junit-team/junit/archive/r%{version}.tar.gz #Source1: http://search.maven.org/remotecontent?filepath=junit/junit/4.11/junit-4.11.pom Source1: junit-4.11.pom #PATCH-FIX-OPENSUSE: do not use bundled hamcrest sources, which btw fixes hamcrest build with junit4 Patch0: junit-no-hamcrest-src.patch #PATCH-FIX-UPSTREAM: build with jdk8 and newer, already in upstream repo Patch1: junit-jdk8.patch Patch2: junit-jdk9.patch Patch3: junit-jdk10.patch Patch4: junit-jdk11.patch BuildRequires: ant BuildRequires: fdupes BuildRequires: hamcrest >= 1.3 BuildRequires: java-devel >= 1.6.0 BuildRequires: javapackages-local BuildRequires: javapackages-tools BuildRequires: perl(Digest::MD5) Requires: hamcrest Requires: java >= 1.6.0 Requires(post): javapackages-tools Requires(postun): javapackages-tools Provides: junit4 = %{version} Obsoletes: junit4 <= 4.10 BuildArch: noarch %description JUnit is a regression testing framework written by Erich Gamma and Kent Beck. It is used by the developer who implements unit tests in Java. JUnit is Open Source Software, released under the Common Public License Version 1.0 and hosted on GitHub. %package manual Summary: Manual for %{name} Group: Documentation/Other Provides: junit4-manual = %{version} Obsoletes: junit4-manual <= 4.10 %description manual Manual for %{name}. %package javadoc Summary: Javadoc for %{name} Group: Documentation/HTML Provides: junit4-javadoc = %{version} Obsoletes: junit4-javadoc <= 4.10 %description javadoc Javadoc for %{name}. %package demo Summary: Demos for %{name} Group: Documentation/Other Requires: %{name} = %{version} Provides: junit4-demo = %{version} Obsoletes: junit4-demo <= 4.10 %description demo Demos for %{name}. %prep %setup -q -n junit-r%{version} %patch0 -p1 %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 find . -type f -name "*.jar" -or -name "*.class" | xargs -t rm -rf ln -s $(build-classpath hamcrest/core) lib/hamcrest-core-1.3.jar %build export CLASSPATH=$(build-classpath hamcrest/core) ant dist -Dversion-status= %install # jars install -d -m 755 %{buildroot}%{_javadir} install -m 644 junit%{version}/junit-%{version}.jar %{buildroot}%{_javadir}/%{name}.jar # compat symlink ln -sf %{_javadir}/%{name}.jar %{buildroot}%{_javadir}/junit4.jar # pom install -d -m 755 %{buildroot}%{_mavenpomdir} install -m 644 %{SOURCE1} %{buildroot}%{_mavenpomdir}/JPP-%{name}.pom %add_maven_depmap # javadoc install -d -m 755 %{buildroot}%{_javadocdir}/%{name} cp -pr junit%{version}/javadoc/* %{buildroot}%{_javadocdir}/%{name} %fdupes -s %{buildroot}%{_javadocdir}/%{name} # demo install -d -m 755 %{buildroot}%{_datadir}/%{name}/demo/junit # Not using % name for last part because it is # part of package name cp -pr junit%{version}/junit/* %{buildroot}%{_datadir}/%{name}/demo/junit %check cat > test.java <&1 | \ grep 'Exception in thread "main" java.lang.AssertionError: Hello world from junit' %files %doc CODING_STYLE LICENSE README acknowledgements.txt %{_javadir}/%{name}.jar %{_javadir}/junit4.jar %{_mavenpomdir}/* %{_datadir}/maven-metadata/%{name}.xml* %files demo %{_datadir}/%{name} %files javadoc %{_javadocdir}/%{name} %files manual %doc junit%{version}/doc/* %changelog