5b6f3a
%if 0%{?rhel} && 0%{?rhel} < 5
5b6f3a
%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
5b6f3a
%{!?python_version: %global python_version %(%{__python} -c "import sys ; print sys.version[:3]")}
5b6f3a
%endif
5b6f3a
5b6f3a
%{!?python3_version: %global python3_version %(%{__python3} -c "import sys; sys.stdout.write(sys.version[:3])")}
5b6f3a
5b6f3a
%if 0%{?fedora}
5b6f3a
%global with_python3 1
5b6f3a
%endif
5b6f3a
5b6f3a
5b6f3a
%global upstream_name nose
5b6f3a
5b6f3a
# Enable building without docs to avoid a circular dependency between this and python-sphinx
5b6f3a
%global with_docs 1
5b6f3a
5b6f3a
Name:           python-nose
9ad190
Version:        1.3.7
9ad190
Release:        1%{?dist}
5b6f3a
Summary:        Discovery-based unittest extension for Python
5b6f3a
5b6f3a
Group:          Development/Languages
5b6f3a
License:        LGPLv2+ and Public Domain
9ad190
URL:            https://nose.readthedocs.org/en/latest/
5b6f3a
Source0:        http://pypi.python.org/packages/source/n/nose/nose-%{version}.tar.gz
5b6f3a
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
5b6f3a
9ad190
# Fix UnicodeDecodeError with captured output
9ad190
# https://github.com/nose-devs/nose/pull/988
9ad190
Patch0:         python-nose-unicode.patch
9ad190
# Allow docutils to read utf-8 source
9ad190
Patch1:         python-nose-readunicode.patch
9ad190
9ad190
BuildArch:     noarch
9ad190
BuildRequires: python2-devel
9ad190
Provides:      python2-%{upstream_name} = %{version}-%{release}
5b6f3a
%if 0%{?with_python3}
5b6f3a
BuildRequires: python3-devel
5b6f3a
BuildRequires: python3-setuptools
5b6f3a
BuildRequires: python3-coverage >= 3.4-1
5b6f3a
%endif
5b6f3a
BuildRequires: python-setuptools
5b6f3a
BuildRequires: dos2unix
9ad190
BuildRequires: python-coverage >= 3.4-1
9ad190
Requires:      python-setuptools
5b6f3a
5b6f3a
%description
5b6f3a
nose extends the test loading and running features of unittest, making
5b6f3a
it easier to write, find and run tests.
5b6f3a
5b6f3a
By default, nose will run tests in files or directories under the
5b6f3a
current working directory whose names include "test" or "Test" at a
5b6f3a
word boundary (like "test_this" or "functional_test" or "TestClass"
5b6f3a
but not "libtest"). Test output is similar to that of unittest, but
5b6f3a
also includes captured stdout output from failing tests, for easy
5b6f3a
print-style debugging.
5b6f3a
5b6f3a
These features, and many more, are customizable through the use of
5b6f3a
plugins. Plugins included with nose provide support for doctest, code
5b6f3a
coverage and profiling, flexible attribute-based test selection,
5b6f3a
output capture and more.
5b6f3a
5b6f3a
%package docs
5b6f3a
Summary:        Nose Documentation
5b6f3a
Group:          Documentation
9ad190
%if 0%{?with_docs}
5b6f3a
BuildRequires:  python-sphinx
9ad190
%endif
9ad190
Provides: python2-nose-docs = %{version}-%{release}
9ad190
Requires: python-nose = %{version}-%{release}
9ad190
5b6f3a
5b6f3a
%description docs
5b6f3a
Documentation for Nose
5b6f3a
5b6f3a
%if 0%{?with_python3}
5b6f3a
%package -n python3-%{upstream_name}
5b6f3a
Summary:        Discovery-based unittest extension for Python3
5b6f3a
Group:          Development/Languages
5b6f3a
Requires:       python3-setuptools
5b6f3a
5b6f3a
%description -n python3-%{upstream_name}
5b6f3a
nose extends the test loading and running features of unittest, making
5b6f3a
it easier to write, find and run tests.
5b6f3a
5b6f3a
By default, nose will run tests in files or directories under the
5b6f3a
current working directory whose names include "test" or "Test" at a
5b6f3a
word boundary (like "test_this" or "functional_test" or "TestClass"
5b6f3a
but not "libtest"). Test output is similar to that of unittest, but
5b6f3a
also includes captured stdout output from failing tests, for easy
5b6f3a
print-style debugging.
5b6f3a
5b6f3a
These features, and many more, are customizable through the use of
5b6f3a
plugins. Plugins included with nose provide support for doctest, code
5b6f3a
coverage and profiling, flexible attribute-based test selection,
5b6f3a
output capture and more.
5b6f3a
5b6f3a
This package installs the nose module and nosetests3 program that can discover
5b6f3a
python3 unittests.
5b6f3a
%endif # with_python3
5b6f3a
5b6f3a
%prep
5b6f3a
%setup -q -n %{upstream_name}-%{version}
9ad190
%patch0 -p1
9ad190
%patch1 -p1
5b6f3a
5b6f3a
dos2unix examples/attrib_plugin.py
5b6f3a
5b6f3a
%if 0%{?with_python3}
5b6f3a
rm -rf %{py3dir}
5b6f3a
cp -a . %{py3dir}
5b6f3a
%endif # with_python3
5b6f3a
5b6f3a
5b6f3a
%build
9ad190
%{__python2} setup.py build
5b6f3a
5b6f3a
%if 0%{?with_python3}
5b6f3a
pushd %{py3dir}
5b6f3a
%{__python3} setup.py build
5b6f3a
popd
5b6f3a
%endif # with_python3
5b6f3a
5b6f3a
%install
5b6f3a
rm -rf %{buildroot}
5b6f3a
# Must do the python3 install first because the scripts in /usr/bin are
5b6f3a
# overwritten with every setup.py install (and we want the python2 version
5b6f3a
# to be the default for now).
5b6f3a
%if 0%{?with_python3}
5b6f3a
pushd %{py3dir}
5b6f3a
%{__python3} setup.py install --skip-build --root %{buildroot}
5b6f3a
rm %{buildroot}%{_bindir}/nosetests
5b6f3a
mkdir -m 0755 -p %{buildroot}%{_mandir}/man1/
5b6f3a
mv %{buildroot}%{_prefix}/man/man1/nosetests.1 %{buildroot}%{_mandir}/man1/nosetests-%{python3_version}.1
5b6f3a
popd
5b6f3a
%endif # with_python3
5b6f3a
5b6f3a
%{__python} setup.py install --skip-build --root %{buildroot} \
5b6f3a
           --install-data=%{_datadir}
5b6f3a
5b6f3a
%if 0%{?with_docs}
5b6f3a
pushd doc
5b6f3a
make html
5b6f3a
rm -rf .build/html/.buildinfo .build/html/_sources
5b6f3a
mv .build/html ..
5b6f3a
rm -rf .build
5b6f3a
popd
5b6f3a
%endif # with_docs
5b6f3a
cp -a doc reST
5b6f3a
rm -rf reST/.static reST/.templates
5b6f3a
5b6f3a
5b6f3a
%check
c7deb1
# Disable test_concurrent_shared as per rhbz#1176288
c7deb1
mv functional_tests/test_multiprocessing/test_concurrent_shared.py{,.notest}
9ad190
%{__python2} selftest.py
5b6f3a
5b6f3a
%if 0%{?with_python3}
5b6f3a
pushd %{py3dir}
5b6f3a
export PYTHONPATH=`pwd`/build/lib
5b6f3a
%{__python3} setup.py build_tests
5b6f3a
# Various selftests fail with Python 3.3b1; skip them for now using "-e"
5b6f3a
# (reported upstream as https://github.com/nose-devs/nose/issues/538 )
5b6f3a
%{__python3} selftest.py \
5b6f3a
    -v
5b6f3a
popd
5b6f3a
%endif # with_python3
5b6f3a
5b6f3a
%clean
5b6f3a
rm -rf %{buildroot}
5b6f3a
5b6f3a
5b6f3a
%files
5b6f3a
%defattr(-,root,root,-)
5b6f3a
%doc AUTHORS CHANGELOG lgpl.txt NEWS README.txt
5b6f3a
%{_bindir}/nosetests
5b6f3a
%{_bindir}/nosetests-%{python_version}
5b6f3a
%{_mandir}/man1/nosetests.1.gz
5b6f3a
%{python_sitelib}/nose*
5b6f3a
5b6f3a
%if 0%{?with_python3}
5b6f3a
%files -n python3-%{upstream_name}
5b6f3a
%defattr(-,root,root,-)
5b6f3a
%doc AUTHORS CHANGELOG lgpl.txt NEWS README.txt
5b6f3a
%{_bindir}/nosetests-%{python3_version}
5b6f3a
%{_mandir}/man1/nosetests-%{python3_version}.1.gz
5b6f3a
%{python3_sitelib}/nose*
5b6f3a
%endif
5b6f3a
5b6f3a
%files docs
5b6f3a
%defattr(-,root,root,-)
5b6f3a
%doc reST examples
5b6f3a
%if 0%{?with_docs}
5b6f3a
%doc html
5b6f3a
%endif # with_docs
5b6f3a
5b6f3a
%changelog
9ad190
* Thu Oct 13 2016 Charalampos Stratakis <cstratak@redhat.com> - 1.3.7-1
9ad190
- Update to nose 1.3.7
9ad190
Resolves: rhbz#1377093
9ad190
c7deb1
* Tue Jan 06 2015 Slavek Kabrda <bkabrda@redhat.com> - 1.3.0-3
c7deb1
- Disable unstable multiprocessing test.
c7deb1
Resolves: rhbz#1176288
c7deb1
641473
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 1.3.0-2
641473
- Mass rebuild 2013-12-27
641473
5b6f3a
* Tue Apr  9 2013 Toshio Kuratomi <toshio@fedoraproject.org> - 1.3.0-1
5b6f3a
- Update to 1.3.0 upstream with python-3.3 fixes
5b6f3a
5b6f3a
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2.1-2
5b6f3a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
5b6f3a
5b6f3a
* Wed Sep 12 2012 Toshio Kuratomi <toshio@fedoraproject.org> - 1.2.1-1
5b6f3a
- New upsream 1.2.1 that just bumps the version properly
5b6f3a
5b6f3a
* Mon Sep 10 2012 Toshio Kuratomi <toshio@fedoraproject.org> - 1.2.0-1
5b6f3a
- Update to nose-1.2.0.
5b6f3a
- Two less python3 test failures than 1.1.2
5b6f3a
5b6f3a
* Sat Aug  4 2012 David Malcolm <dmalcolm@redhat.com> - 1.1.2-5
5b6f3a
- rebuild for https://fedoraproject.org/wiki/Features/Python_3.3
5b6f3a
- disable selftests that fail under 3.3
5b6f3a
5b6f3a
* Fri Aug  3 2012 David Malcolm <dmalcolm@redhat.com> - 1.1.2-4
5b6f3a
- remove rhel logic from with_python3 conditional
5b6f3a
5b6f3a
* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.2-3
5b6f3a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
5b6f3a
5b6f3a
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.2-2
5b6f3a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
5b6f3a
5b6f3a
* Mon Aug 1 2011 Toshio Kuratomi <toshio@fedoraproject.org> - 1.1.2-1
5b6f3a
- Upstream bugfix release
5b6f3a
5b6f3a
* Wed Jul 27 2011 Toshio Kuratomi <toshio@fedoraproject.org> - 1.1.1-1
5b6f3a
- Upstream bugfix release
5b6f3a
5b6f3a
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.0-2
5b6f3a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
5b6f3a
5b6f3a
* Sun Dec 26 2010 Toshio Kuratomi <toshio@fedoraproject.org> - 1.0.0-1
5b6f3a
- Update to 1.0.0
5b6f3a
- Create the docs subpackage for text docs even if we don't create the html docs.
5b6f3a
- Make python3 subpackage
5b6f3a
5b6f3a
* Tue Dec 7 2010 Toshio Kuratomi <toshio@fedoraproject.org> - 0.11.4-2
5b6f3a
- Fix FTBFS with newer coverage
5b6f3a
5b6f3a
* Thu Oct 21 2010 Luke Macken <lmacken@redhat.com> - 0.11.4-1
5b6f3a
- Update to 0.11.4 (#3630722)
5b6f3a
5b6f3a
* Wed Jul 21 2010 David Malcolm <dmalcolm@redhat.com> - 0.11.3-5
5b6f3a
- add support for building without docs, to avoid a circular build-time
5b6f3a
dependency between this and python-sphinx; disable docs subpackage for now
5b6f3a
- add (apparently) missing BR on python-coverage (appears to be needed
5b6f3a
for %%check)
5b6f3a
- cherrypick upstream compatibility fixes for 2.7
5b6f3a
5b6f3a
* Wed Jul 21 2010 David Malcolm <dmalcolm@redhat.com> - 0.11.3-4
5b6f3a
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
5b6f3a
5b6f3a
* Thu May 20 2010 Luke Macken <lmacken@redhat.com> - 0.11.3-3
5b6f3a
- Update URL to http://code.google.com/p/python-nose/
5b6f3a
- Align description to reflect that in setup.py
5b6f3a
- Create a docs subpackage containing HTML & reST documentation
5b6f3a
- Thanks to Gareth Armstrong at HP for the patch
5b6f3a
5b6f3a
* Thu May 06 2010 Luke Macken <lmacken@redhat.com> - 0.11.3-2
5b6f3a
- Don't hardcode the python version
5b6f3a
5b6f3a
* Thu May 06 2010 Luke Macken <lmacken@redhat.com> - 0.11.3-1
5b6f3a
- Update to 0.11.3
5b6f3a
- Enable the self tests
5b6f3a
5b6f3a
* Mon Oct 05 2009 Luke Macken <lmacken@redhat.com> - 0.11.1-2
5b6f3a
- Include the new nosetests-2.6 script as well
5b6f3a
5b6f3a
* Mon Oct 05 2009 Luke Macken <lmacken@redhat.com> - 0.11.1-1
5b6f3a
- Update to 0.11.1
5b6f3a
5b6f3a
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.10.4-3
5b6f3a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
5b6f3a
5b6f3a
* Thu Feb 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.10.4-2
5b6f3a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
5b6f3a
5b6f3a
* Sat Nov 29 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 0.10.4-1
5b6f3a
- Update to 0.10.4 to fix 2.6 issues
5b6f3a
5b6f3a
* Sat Nov 29 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 0.10.3-2
5b6f3a
- Rebuild for Python 2.6
5b6f3a
5b6f3a
* Sat Aug 02 2008 Luke Macken <lmacken@redhat.com> 0.10.3-1
5b6f3a
- Update to 0.10.3
5b6f3a
5b6f3a
* Thu Feb 28 2008 Luke Macken <lmacken@redhat.com> 0.10.1-1
5b6f3a
- Update to 0.10.1
5b6f3a
5b6f3a
* Mon Dec  3 2007 Luke Macken <lmacken@redhat.com> 0.10.0-2
5b6f3a
- Add python-setuptools to Requires (Bug #408491)
5b6f3a
5b6f3a
* Tue Nov 27 2007 Luke Macken <lmacken@redhat.com> 0.10.0-1
5b6f3a
- 0.10.0
5b6f3a
5b6f3a
* Sun Sep  2 2007 Luke Macken <lmacken@redhat.com> 0.10.0-0.3.b1
5b6f3a
- Update for python-setuptools changes in rawhide
5b6f3a
5b6f3a
* Tue Aug 21 2007 Luke Macken <lmacken@redhat.com> 0.10.0-0.2.b1
5b6f3a
- 0.10.0b1
5b6f3a
- Update license tag to LGPLv2
5b6f3a
5b6f3a
* Fri Jun 20 2007 Luke Macken <lmacken@redhat.com> 0.10.0-0.1.a2
5b6f3a
- 0.10.0a2
5b6f3a
5b6f3a
* Sat Jun  2 2007 Luke Macken <lmacken@redhat.com> 0.9.3-1
5b6f3a
- Latest upstream release
5b6f3a
- Remove python-nose-0.9.2-mandir.patch
5b6f3a
5b6f3a
* Sat Mar  3 2007 Luke Macken <lmacken@redhat.com> 0.9.2-1
5b6f3a
- Add nosetests(1) manpage, and python-nose-0.9.2-mandir.patch to put it in
5b6f3a
  the correct location.
5b6f3a
- 0.9.2
5b6f3a
5b6f3a
* Sat Dec  9 2006 Luke Macken <lmacken@redhat.com> 0.9.1-2
5b6f3a
- Rebuild for python 2.5
5b6f3a
5b6f3a
* Fri Nov 24 2006 Luke Macken <lmacken@redhat.com> 0.9.1-1
5b6f3a
- 0.9.1
5b6f3a
5b6f3a
* Fri Sep  8 2006 Luke Macken <lmacken@redhat.com> 0.9.0-1
5b6f3a
- 0.9.0
5b6f3a
5b6f3a
* Wed Apr 19 2006 Ignacio Vazquez-Abrams <ivazquez@ivazquez.net> 0.8.7.2-1
5b6f3a
- Initial RPM release