7f0bec7
%global namedreltag %{nil}
7f0bec7
%global namedversion %{version}%{?namedreltag}
7f0bec7
7f0bec7
Name:          jmock
7f0bec7
Version:       2.5.1
4b4a8cf
Release:       3%{?dist}
7f0bec7
Summary:       Java library for testing code with mock objects
7f0bec7
Group:         Development/Libraries
7f0bec7
License:       BSD
7f0bec7
Url:           http://www.jmock.org/
7f0bec7
# svn export http://svn.codehaus.org/jmock/tags/2.5.1 jmock-2.5.1
7f0bec7
# find jmock-2.5.1 -name "*.jar" -type f -delete
7f0bec7
# find jmock-2.5.1 -name "*.class" -delete
7f0bec7
# svn export http://svn.codehaus.org/jmock/tags/packaging-maven-2.5.1 jmock-2.5.1/maven
7f0bec7
# tar czf jmock-2.5.1-clean-src-svn.tar.gz jmock-2.5.1
7f0bec7
Source0:       %{name}-%{namedversion}-clean-src-svn.tar.gz
7f0bec7
Patch0:        %{name}-%{namedversion}-use_system_libraries.patch
7f0bec7
# build with cglib 2.2
7f0bec7
Patch1:        %{name}-%{namedversion}-cglib22.patch
7f0bec7
# patch for java6
7f0bec7
Patch2:        %{name}-%{namedversion}-DeterministicSchedule.patch
7f0bec7
# remove hamcrest classes
7f0bec7
Patch3:        %{name}-%{namedversion}-javadoc.patch
7f0bec7
# remove
7f0bec7
#    gmaven
7f0bec7
#    wagon-webdav 
7f0bec7
#    profile jmock1
7f0bec7
# change
7f0bec7
#   cglib cglib-nodep 2.1_3 -> net.sf.cglib cglib 2.2
7f0bec7
#   junit-dep -> junit
7f0bec7
Patch4:        %{name}-%{namedversion}-poms.patch
7f0bec7
# from Debian
7f0bec7
Patch5:        %{name}-%{namedversion}-hamcrest12.patch
7f0bec7
# build fix for java 7
7f0bec7
Patch6:        %{name}-%{namedversion}-name-clash.patch
7f0bec7
7f0bec7
BuildRequires: java-devel >= 1:1.6.0
7f0bec7
BuildRequires: jpackage-utils
7f0bec7
7f0bec7
BuildRequires: ant
7f0bec7
BuildRequires: ant-junit
7f0bec7
BuildRequires: bsh
7f0bec7
BuildRequires: cglib
7f0bec7
BuildRequires: hamcrest12
7f0bec7
BuildRequires: junit4
7f0bec7
BuildRequires: objectweb-asm
7f0bec7
BuildRequires: objenesis
7f0bec7
7f0bec7
Requires:      bsh
7f0bec7
Requires:      hamcrest12
7f0bec7
Requires:      junit4
7f0bec7
7f0bec7
Requires:      objenesis
7f0bec7
Requires:      java >= 1:1.6.0
7f0bec7
Requires:      jpackage-utils
7f0bec7
BuildArch:     noarch
7f0bec7
7f0bec7
%description
7f0bec7
Mock objects help you design and test the interactions between the objects in
7f0bec7
your programs.
7f0bec7
The jMock library:
7f0bec7
  * makes it quick and easy to define mock objects, so you don't break the
7f0bec7
    rhythm of programming.
7f0bec7
  * lets you precisely specify the interactions between your objects, reducing
7f0bec7
    the brittleness of your tests.
7f0bec7
  * works well with the auto-completion and re-factoring features of your IDE
7f0bec7
  * plugs into your favorite test framework
7f0bec7
  * is easy to extend.
7f0bec7
7f0bec7
%package javadoc
7f0bec7
Group:         Documentation
7f0bec7
Summary:       Javadoc for %{name}
7f0bec7
Requires:      jpackage-utils
7f0bec7
7f0bec7
%description javadoc
7f0bec7
This package contains javadoc for %{name}.
7f0bec7
7f0bec7
%prep
7f0bec7
%setup -q
7f0bec7
%patch0 -p0
7f0bec7
%patch1 -p1
7f0bec7
%patch2 -p0
7f0bec7
%patch3 -p0
7f0bec7
%patch4 -p0
7f0bec7
%patch5 -p1
7f0bec7
%patch6 -p0
7f0bec7
7f0bec7
# fix non ASCII chars
7f0bec7
for s in test/org/jmock/example/sniper/Money.java;do
7f0bec7
  native2ascii -encoding UTF8 ${s} ${s}
7f0bec7
done
7f0bec7
7f0bec7
# TODO this test fails
7f0bec7
rm -r test/org/jmock/test/acceptance/ParameterMatchingAcceptanceTests.java \
7f0bec7
  test/org/jmock/test/acceptance/PrimitiveParameterTypesAcceptanceTests.java
7f0bec7
7f0bec7
%build
7f0bec7
7f0bec7
ant \
7f0bec7
  -Dant.build.javac.source=1.5 \
7f0bec7
  -Dant.build.javac.target=1.5 \
7f0bec7
 -Dversion=%{namedversion} \
7f0bec7
 zip.jars javadoc
7f0bec7
7f0bec7
%install
7f0bec7
7f0bec7
mkdir -p %{buildroot}%{_mavenpomdir}
7f0bec7
install -pm 644 maven/pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{name}-parent.pom
7f0bec7
%add_maven_depmap JPP.%{name}-parent.pom
7f0bec7
7f0bec7
mkdir -p %{buildroot}%{_javadir}/%{name}
7f0bec7
for m in %{name} \
7f0bec7
  %{name}-junit3 \
7f0bec7
  %{name}-junit4 \
7f0bec7
  %{name}-legacy \
7f0bec7
  %{name}-script;do
7f0bec7
    install -m 644 build/%{name}-%{namedversion}/${m}-%{namedversion}.jar %{buildroot}%{_javadir}/%{name}/${m}.jar
7f0bec7
    install -pm 644 maven/${m}/pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{name}-${m}.pom
7f0bec7
    %add_maven_depmap JPP.%{name}-${m}.pom %{name}/${m}.jar
7f0bec7
done
7f0bec7
7f0bec7
sed -i 's|<version>x-SNAPSHOT</version>|<version>%{namedversion}</version>|'  maven/%{name}-core/pom.xml
7f0bec7
sed -i 's|<artifactId>%{name}-core</artifactId>|<artifactId>%{name}-tests</artifactId>|'  maven/%{name}-core/pom.xml
7f0bec7
sed -i 's|<name>jMock 1 Core</name>|<name>jMock 2 Tests</name>|' maven/%{name}-core/pom.xml
7f0bec7
install -m 644 build/%{name}-%{namedversion}/%{name}-tests-%{namedversion}.jar \
7f0bec7
  %{buildroot}%{_javadir}/%{name}/%{name}-tests.jar
7f0bec7
install -pm 644 maven/%{name}-core/pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{name}-%{name}-tests.pom
7f0bec7
%add_maven_depmap JPP.%{name}-%{name}-tests.pom %{name}/%{name}-tests.jar
7f0bec7
7f0bec7
mkdir -p %{buildroot}%{_javadocdir}/%{name}
7f0bec7
cp -pr build/%{name}-%{namedversion}/doc/* %{buildroot}%{_javadocdir}/%{name}
7f0bec7
7f0bec7
%files
7f0bec7
%dir %{_javadir}/%{name}
7f0bec7
%{_javadir}/%{name}/*.jar
7f0bec7
%{_mavenpomdir}/JPP.%{name}-*.pom
7f0bec7
%{_mavendepmapfragdir}/%{name}
7f0bec7
%doc LICENSE.txt README*
7f0bec7
7f0bec7
%files javadoc
7f0bec7
%{_javadocdir}/%{name}
7f0bec7
%doc LICENSE.txt
7f0bec7
7f0bec7
%changelog
4b4a8cf
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.5.1-3
4b4a8cf
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
4b4a8cf
e072fc5
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.5.1-2
e072fc5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
e072fc5
7f0bec7
* Thu Apr 19 2012 gil cattaneo <puntogil@libero.it> 2.5.1-1
7f0bec7
- initial rpm