def test_home_resolve(self):
"""/mission-control/ should resolve to mission-control:home."""
self.assertEqual(
resolve('/mission-control/').view_name,
'mission-control:home')
python类resolve()的实例源码
def test_home_load_resolve(self):
"""/mission-control/load/1 should resolve to mission-control:home."""
match = resolve('/mission-control/load/1/')
self.assertEqual(match.view_name, 'mission-control:home_with_load')
self.assertEqual(match.kwargs['bd'], '1')
def test_bd_list_resolve(self):
"""/mission-control/bd-list/ should resolve to mission-control:bd_list.""" # noqa
self.assertEqual(
resolve('/mission-control/bd-list/').view_name,
'mission-control:bd_list')
def test_rover_list_resolve(self):
"""/mission-control/rover-list/ should resolve to mission-control:rover_list.""" # noqa
self.assertEqual(
resolve('/mission-control/rover-list/').view_name,
'mission-control:rover_list')
def test_rovers_resolve(self):
"""/mission-control/rovers/ should resolve to mission-control:rover-list.""" # noqa
self.assertEqual(
resolve('/mission-control/rovers/').view_name,
'mission-control:rover-list')
def test_rover_settings_resolve(self):
"""/mission-control/rover-settings/ should resolve to mission-control:rover_settings.""" # noqa
self.assertEqual(
resolve('/mission-control/rover-settings/1/').view_name,
'mission-control:rover_settings')
def test_posts_resolve(self):
"""/blog/ should resolve to blog:post_list."""
self.assertEqual(
resolve('/blog/').view_name,
'blog:post_list')
def test_drafts_list_resolve(self):
"""/blog/post-drafts-list/ should resolve to blog:post_drafts_list."""
self.assertEqual(
resolve('/blog/post-drafts-list/').view_name,
'blog:post_drafts_list')
def test_post_edit_load_resolve(self):
"""/blog/post-edit/f1rst-p0st should resolve to blog:post_edit."""
match = resolve('/blog/post-edit/f1rst-p0st/')
self.assertEqual(match.view_name, 'blog:post_edit')
self.assertEqual(match.kwargs['slug'], 'f1rst-p0st')
def test_post_new_load_resolve(self):
"""/blog/post-edit/ should resolve to blog:post_new."""
match = resolve('/blog/post-edit/')
self.assertEqual(match.view_name, 'blog:post_new')
def test_block_diagrams_resolve(self):
"""/blog/posts/ should resolve to blog:post-list.""" # noqa
self.assertEqual(
resolve('/blog/posts/').view_name,
'blog:post-list')
def test_list_resolve(self):
"""/users/ should resolve to users:list."""
self.assertEqual(resolve('/users/').view_name, 'users:list')
def test_redirect_resolve(self):
"""/users/~redirect/ should resolve to users:redirect."""
self.assertEqual(
resolve('/users/~redirect/').view_name,
'users:redirect'
)
def test_detail_resolve(self):
"""/users/testuser/ should resolve to users:detail."""
self.assertEqual(resolve('/users/testuser/').view_name, 'users:detail')
def test_update_resolve(self):
"""/users/~update/ should resolve to users:update."""
self.assertEqual(
resolve('/users/~update/').view_name,
'users:update'
)
def menu_style_check(context, *args, **kwargs):
request = context['request']
active_style = 'menu_active'
display_style = 'hidden'
try:
resolver_match = urlresolvers.resolve(request.path_info)
url_name = resolver_match.url_name
namespaces = resolver_match.namespaces
for arg in args:
tmp_path = '.'.join(namespaces)
if len(tmp_path) > 0:
tmp_path += ':' + url_name
else:
tmp_path = url_name
s = arg.split(':')
if len(s):
temp_url_name = s[-1]
for group in request.user.groups.all():
for staff_permission in group.staffpermission_set.all():
if staff_permission.allowed_url_name == 'all' \
or staff_permission.allowed_url_name == temp_url_name:
display_style = ''
if tmp_path == arg:
return active_style + ' ' + display_style
except:
return display_style
return display_style
def _get_view_from_url(self, url):
url_data = urlparse(url)
host = url_data.netloc
path = url_data.path
viewname = resolve(path).view_name
return viewname
def test_list_resolve(self):
"""/users/ should resolve to users:list."""
self.assertEqual(resolve('/users/').view_name, 'users:list')
def test_redirect_resolve(self):
"""/users/~redirect/ should resolve to users:redirect."""
self.assertEqual(
resolve('/users/~redirect/').view_name,
'users:redirect'
)
def test_detail_resolve(self):
"""/users/testuser/ should resolve to users:detail."""
self.assertEqual(resolve('/users/testuser/').view_name, 'users:detail')