forked from pool/easymock
5c5d245e13
- Summarize description. OBS-URL: https://build.opensuse.org/request/show/692529 OBS-URL: https://build.opensuse.org/package/show/Java:packages/easymock?expand=0&rev=5
128 lines
3.8 KiB
RPMSpec
128 lines
3.8 KiB
RPMSpec
#
|
|
# spec file for package easymock
|
|
#
|
|
# Copyright (c) 2019 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 https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
%bcond_with tests
|
|
Name: easymock
|
|
Version: 3.6
|
|
Release: 0
|
|
Summary: Mock objects for interfaces in JUnit tests
|
|
License: Apache-2.0
|
|
Group: Development/Libraries/Java
|
|
URL: http://www.easymock.org
|
|
# ./generate-tarball.sh
|
|
Source0: %{name}-%{version}.tar.xz
|
|
# Remove bundled binaries which cannot be easily verified for licensing
|
|
Source1: generate-tarball.sh
|
|
Source2: %{name}-build.tar.xz
|
|
Patch1: 0001-Disable-android-support.patch
|
|
Patch2: 0002-Unshade-cglib-and-asm.patch
|
|
Patch3: 0003-Fix-OSGi-manifest.patch
|
|
BuildRequires: ant
|
|
BuildRequires: beust-jcommander
|
|
BuildRequires: cglib
|
|
BuildRequires: fdupes
|
|
BuildRequires: java-devel >= 1.8
|
|
BuildRequires: javapackages-local
|
|
BuildRequires: junit
|
|
BuildRequires: objectweb-asm
|
|
BuildRequires: objenesis
|
|
BuildRequires: testng
|
|
BuildRequires: xmvn-install
|
|
BuildRequires: xmvn-resolve
|
|
BuildArch: noarch
|
|
%if %{with tests}
|
|
BuildRequires: ant-junit
|
|
BuildConflicts: java-devel >= 9
|
|
%endif
|
|
|
|
%description
|
|
EasyMock provides Mock Objects for interfaces in JUnit tests by generating
|
|
them on the fly using Java's proxy mechanism. Due to EasyMock's unique style
|
|
of recording expectations, most refactorings will not affect the Mock Objects.
|
|
So EasyMock is a perfect fit for Test-Driven Development.
|
|
|
|
%package javadoc
|
|
Summary: Javadoc for %{name}
|
|
Group: Documentation/HTML
|
|
|
|
%description javadoc
|
|
Javadoc for %{name}.
|
|
|
|
%prep
|
|
%setup -q -n %{name}-%{name}-%{version} -a2
|
|
|
|
%patch1 -p1
|
|
%patch2 -p1
|
|
%patch3 -p1
|
|
|
|
%pom_remove_plugin :maven-license-plugin
|
|
%pom_remove_plugin :maven-timestamp-plugin
|
|
%pom_remove_plugin :maven-enforcer-plugin
|
|
%pom_remove_plugin :animal-sniffer-maven-plugin
|
|
%pom_remove_plugin :animal-sniffer-maven-plugin core
|
|
|
|
# remove android support
|
|
rm core/src/main/java/org/easymock/internal/Android*.java
|
|
rm core/src/test/java/org/easymock/tests2/ClassExtensionHelperTest.java
|
|
%pom_disable_module test-android
|
|
%pom_remove_dep :dexmaker core
|
|
|
|
# unbundle asm and cglib
|
|
%pom_disable_module test-nodeps
|
|
%pom_remove_plugin :maven-shade-plugin core
|
|
|
|
# missing test deps
|
|
%pom_disable_module test-integration
|
|
%pom_disable_module test-osgi
|
|
|
|
# remove some warning caused by unavailable plugin
|
|
%pom_remove_plugin org.codehaus.mojo:versions-maven-plugin
|
|
|
|
# For compatibility reasons
|
|
%{mvn_file} ":easymock{*}" easymock@1 easymock3@1
|
|
|
|
# ssh not needed during our builds
|
|
%pom_xpath_remove pom:extensions
|
|
|
|
%build
|
|
mkdir -p lib
|
|
build-jar-repository -s lib \
|
|
beust-jcommander cglib/cglib junit objectweb-asm/asm objenesis/objenesis testng
|
|
%{ant} \
|
|
%if %{without tests}
|
|
-Dtest.skip=true \
|
|
%endif
|
|
package javadoc
|
|
|
|
%{mvn_artifact} pom.xml
|
|
%{mvn_artifact} core/pom.xml core/target/easymock-%{version}.jar
|
|
%{mvn_artifact} test-java8/pom.xml test-java8/target/easymock-test-java8-%{version}.jar
|
|
%{mvn_artifact} test-testng/pom.xml test-testng/target/easymock-test-testng-%{version}.jar
|
|
|
|
%install
|
|
%mvn_install -J core/target/site/apidocs
|
|
%fdupes -s %{buildroot}%{_javadocdir}
|
|
|
|
%files -f .mfiles
|
|
%license core/LICENSE.txt
|
|
|
|
%files javadoc -f .mfiles-javadoc
|
|
%license core/LICENSE.txt
|
|
|
|
%changelog
|