diff options
-rw-r--r-- | dev-python/routes/ChangeLog | 8 | ||||
-rw-r--r-- | dev-python/routes/files/routes-2.0-tests-py3.patch | 40 | ||||
-rw-r--r-- | dev-python/routes/routes-2.0.ebuild | 58 |
3 files changed, 105 insertions, 1 deletions
diff --git a/dev-python/routes/ChangeLog b/dev-python/routes/ChangeLog index 6f6d80fafda0..700f3cf1ed9b 100644 --- a/dev-python/routes/ChangeLog +++ b/dev-python/routes/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for dev-python/routes # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-python/routes/ChangeLog,v 1.17 2013/10/22 14:24:30 grobian Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-python/routes/ChangeLog,v 1.18 2013/11/21 20:53:58 radhermit Exp $ + +*routes-2.0 (21 Nov 2013) + + 21 Nov 2013; Tim Harder <radhermit@gentoo.org> +routes-2.0.ebuild, + +files/routes-2.0-tests-py3.patch: + Version bump. 22 Oct 2013; Fabian Groffen <grobian@gentoo.org> routes-1.13-r1.ebuild: Marked ~x64-macos, bug #487670 diff --git a/dev-python/routes/files/routes-2.0-tests-py3.patch b/dev-python/routes/files/routes-2.0-tests-py3.patch new file mode 100644 index 000000000000..ec21799ba14f --- /dev/null +++ b/dev-python/routes/files/routes-2.0-tests-py3.patch @@ -0,0 +1,40 @@ +Fix tests to work with random hash dicts. + +--- a/tests/test_functional/test_generation.py ++++ b/tests/test_functional/test_generation.py +@@ -205,13 +205,14 @@ class TestGeneration(unittest.TestCase): + requirements={'month':'\d{1,2}','day':'\d{1,2}'}) + m.connect('viewpost/:id', controller='post', action='view') + m.connect(':controller/:action/:id') +- +- eq_('/blog/view?year=2004&month=blah', m.generate(controller='blog', action='view', year=2004, month='blah')) ++ ++ url = m.generate(controller='blog', action='view', year=2004, month='blah') ++ assert url == '/blog/view?year=2004&month=blah' or url == '/blog/view?month=blah&year=2004' + eq_('/archive/2004/11', m.generate(controller='blog', action='view', year=2004, month=11)) + eq_('/archive/2004/11', m.generate(controller='blog', action='view', year=2004, month='11')) + eq_('/archive/2004', m.generate(controller='blog', action='view', year=2004)) + eq_('/viewpost/3', m.generate(controller='post', action='view', id=3)) +- ++ + def test_multiroute_with_splits(self): + m = Mapper(explicit=False) + m.minimization = True +@@ -219,13 +220,14 @@ class TestGeneration(unittest.TestCase): + requirements={'month':'\d{1,2}','day':'\d{1,2}'}) + m.connect('viewpost/:(id)', controller='post', action='view') + m.connect(':(controller)/:(action)/:(id)') +- +- eq_('/blog/view?year=2004&month=blah', m.generate(controller='blog', action='view', year=2004, month='blah')) ++ ++ url = m.generate(controller='blog', action='view', year=2004, month='blah') ++ assert url == '/blog/view?year=2004&month=blah' or url == '/blog/view?month=blah&year=2004' + eq_('/archive/2004/11', m.generate(controller='blog', action='view', year=2004, month=11)) + eq_('/archive/2004/11', m.generate(controller='blog', action='view', year=2004, month='11')) + eq_('/archive/2004', m.generate(controller='blog', action='view', year=2004)) + eq_('/viewpost/3', m.generate(controller='post', action='view', id=3)) +- ++ + def test_big_multiroute(self): + m = Mapper(explicit=False) + m.minimization = True diff --git a/dev-python/routes/routes-2.0.ebuild b/dev-python/routes/routes-2.0.ebuild new file mode 100644 index 000000000000..e95900ff3fb5 --- /dev/null +++ b/dev-python/routes/routes-2.0.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-python/routes/routes-2.0.ebuild,v 1.1 2013/11/21 20:53:58 radhermit Exp $ + +EAPI=5 +PYTHON_COMPAT=( python{2_6,2_7,3_2,3_3} ) + +inherit distutils-r1 + +MY_PN="Routes" +MY_P="${MY_PN}-${PV}" + +DESCRIPTION="A Python re-implementation of the Rails routes system for mapping URL's to Controllers/Actions" +HOMEPAGE="http://routes.groovie.org http://pypi.python.org/pypi/Routes" +SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" +IUSE="doc test" + +RDEPEND="dev-python/webob[${PYTHON_USEDEP}] + >=dev-python/repoze-lru-0.3[${PYTHON_USEDEP}]" +DEPEND="${RDEPEND} + dev-python/setuptools[${PYTHON_USEDEP}] + doc? ( dev-python/sphinx[${PYTHON_USEDEP}] ) + test? ( + dev-python/coverage[${PYTHON_USEDEP}] + dev-python/nose[${PYTHON_USEDEP}] + dev-python/webtest[${PYTHON_USEDEP}] + )" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( "${FILESDIR}"/${PN}-2.0-tests-py3.patch ) + +python_prepare_all() { + use test && DISTUTILS_IN_SOURCE_BUILD=1 + distutils-r1_python_prepare_all +} + +python_compile_all() { + use doc && emake -C docs html +} + +python_test() { + cp -r tests "${BUILD_DIR}" || die + if [[ ${EPYTHON} == python3* ]]; then + 2to3 -w --no-diffs "${BUILD_DIR}"/tests || die + fi + + nosetests -w "${BUILD_DIR}"/tests || die "Tests fail with ${EPYTHON}" +} + +python_install_all() { + use doc && local HTML_DOCS=( docs/_build/html/. ) + distutils-r1_python_install_all +} |