diff options
Diffstat (limited to 'tests/test_functional/test_explicit_use.py')
-rw-r--r-- | tests/test_functional/test_explicit_use.py | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/tests/test_functional/test_explicit_use.py b/tests/test_functional/test_explicit_use.py index ccd3b7a..b1e1cd7 100644 --- a/tests/test_functional/test_explicit_use.py +++ b/tests/test_functional/test_explicit_use.py @@ -1,6 +1,6 @@ """test_explicit_use""" import os, sys, time, unittest -from nose.tools import eq_, assert_raises +from nose.tools import eq_, assert_raises, assert_is_none from routes import * from routes.route import Route @@ -101,6 +101,34 @@ class TestUtils(unittest.TestCase): map.extend(routes) eq_(map.match('/foo'), {}) + def test_add_routes_conditions_unmet(self): + map = Mapper(explicit=True) + map.minimization = False + routes = [ + Route('foo', '/foo', conditions=dict(method=["POST"])) + ] + environ = { + 'HTTP_HOST': 'localhost.com', + 'PATH_INFO': '/foo', + 'REQUEST_METHOD': 'GET', + } + map.extend(routes) + assert_is_none(map.match('/foo', environ=environ)) + + def test_add_routes_conditions_met(self): + map = Mapper(explicit=True) + map.minimization = False + routes = [ + Route('foo', '/foo', conditions=dict(method=["POST"])) + ] + environ = { + 'HTTP_HOST': 'localhost.com', + 'PATH_INFO': '/foo', + 'REQUEST_METHOD': 'POST', + } + map.extend(routes) + eq_(map.match('/foo', environ=environ), {}) + def test_using_func(self): def fred(view): pass |