This commit is contained in:
@@ -6,16 +6,12 @@ from ..views import RootView
|
||||
|
||||
|
||||
class DummyModuleMeta:
|
||||
def __init__(self, package, url_namespace=None):
|
||||
def __init__(self, package):
|
||||
self.package = package
|
||||
self.url_namespace = url_namespace
|
||||
|
||||
@property
|
||||
def url_name(self):
|
||||
if self.url_namespace:
|
||||
return self.url_namespace + ':root'
|
||||
else:
|
||||
return 'root'
|
||||
def root_url_name(self):
|
||||
return self.package.replace('.', '_') + ':root'
|
||||
|
||||
class DummyModuleConfig:
|
||||
def __init__(self, modules):
|
||||
@@ -30,17 +26,17 @@ class DummyModuleConfig:
|
||||
class ViewsTestCase(SimpleTestCase):
|
||||
def test_root(self):
|
||||
modules = {
|
||||
'module1': DummyModuleMeta('pkg1', url_namespace='ns1'),
|
||||
'module1': DummyModuleMeta('pkg1'),
|
||||
'module2': DummyModuleMeta('pkg2'),
|
||||
'moduleC': DummyModuleMeta('pkgC', url_namespace='nsC'),
|
||||
'moduleD': DummyModuleMeta('pkgD', url_namespace='nsD'),
|
||||
'moduleC': DummyModuleMeta('pkgC'),
|
||||
'moduleD': DummyModuleMeta('pkgD'),
|
||||
}
|
||||
expected_root_urls = [
|
||||
('pkg1', 'ns1:root'), ('pkg2', 'root'), ('pkgD', 'nsD:root')
|
||||
('pkg1', 'pkg1:root'), ('pkg2', 'pkg2:root'), ('pkgD', 'pkgD:root')
|
||||
]
|
||||
|
||||
def fake_reverse(name):
|
||||
if name == 'nsC:root':
|
||||
if name == 'pkgC:root':
|
||||
raise NoReverseMatch()
|
||||
return '/'
|
||||
|
||||
@@ -57,7 +53,7 @@ class ViewsTestCase(SimpleTestCase):
|
||||
called_names = [call.args[0] for call in mocked_reverse.call_args_list]
|
||||
self.assertEqual(len(called_names), len(modules))
|
||||
for m in modules.values():
|
||||
self.assertIn(m.url_name, called_names)
|
||||
self.assertIn(m.root_url_name, called_names)
|
||||
|
||||
def test_integrated_root(self):
|
||||
with override_settings(MODULE_CONFIG=DummyModuleConfig({})):
|
||||
|
||||
Reference in New Issue
Block a user