def test_register(self): # Set DEBUG = True so validation is triggered. from django.conf import settings settings.DEBUG = True tools = ObjectTools() tools.register(TestTool)
def test_urls(self): tools = ObjectTools() # Without any tools should be empty list, namespaces # should be 'object-tools'. self.assertEqual(tools.urls, ([], 'object-tools', 'object-tools')) # With a tool registered, urls should include it for each model. tools.register(TestTool) urls = tools.urls self.assertEqual(len(urls[0]), 6) if django.VERSION >= (2, 0): urlpatterns = [ "<URLPattern '^test_tool/$' [name='sessions_session_test_tool']>", "<URLPattern '^test_tool/$' [name='auth_user_test_tool']>", "<URLPattern '^test_tool/$' [name='auth_group_test_tool']>", "<URLPattern '^test_tool/$' [name='auth_permission_test_tool']>", "<URLPattern '^test_tool/$' [name='contenttypes_contenttype_test_tool']>", "<URLPattern '^test_tool/$' [name='admin_logentry_test_tool']>", ] else: urlpatterns = [ '<RegexURLPattern sessions_session_test_tool ^test_tool/$>', '<RegexURLPattern auth_user_test_tool ^test_tool/$>', '<RegexURLPattern auth_group_test_tool ^test_tool/$>', '<RegexURLPattern auth_permission_test_tool ^test_tool/$>', '<RegexURLPattern contenttypes_contenttype_test_tool ^test_tool/$>', '<RegexURLPattern admin_logentry_test_tool ^test_tool/$>' ] for url in urls[0]: self.assertTrue(url.url_patterns[0].__repr__() in urlpatterns)
def test_urls(self): tools = ObjectTools() # Without any tools should be empty list, namespaces # should be 'object-tools'. self.failUnlessEqual(tools.urls, ([], 'object-tools', 'object-tools')) # With a tool registered, urls should include it for each model. tools.register(TestTool) urls = tools.urls self.failUnlessEqual(len(urls[0]), 8) for url in urls[0]: self.failUnless(url.__repr__() in [ '<RegexURLResolver [<RegexURLPattern auth_message_test_tool \ ^test_tool/$>] (None:None) ^auth/message/>', '<RegexURLResolver [<RegexURLPattern auth_group_test_tool \ ^test_tool/$>] (None:None) ^auth/group/>', '<RegexURLResolver [<RegexURLPattern contenttypes_contenttype\ _test_tool ^test_tool/$>] (None:None) ^contenttypes/contenttype/>', '<RegexURLResolver [<RegexURLPattern sites_site_test_tool \ ^test_tool/$>] (None:None) ^sites/site/>', '<RegexURLResolver [<RegexURLPattern auth_permission_test_tool \ ^test_tool/$>] (None:None) ^auth/permission/>', '<RegexURLResolver [<RegexURLPattern auth_user_test_tool \ ^test_tool/$>] (None:None) ^auth/user/>', '<RegexURLResolver [<RegexURLPattern sessions_session_test_tool \ ^test_tool/$>] (None:None) ^sessions/session/>', '<RegexURLResolver [<RegexURLPattern admin_logentry_test_tool \ ^test_tool/$>] (None:None) ^admin/logentry/>' ])
def test_urls(self): tools = ObjectTools() # Without any tools should be empty list, namespaces # should be 'object-tools'. self.failUnlessEqual(tools.urls, ([], 'object-tools', 'object-tools')) # With a tool registered, urls should include it for each model. tools.register(TestTool) urls = tools.urls self.failUnlessEqual(len(urls[0]), 6) for url in urls[0]: self.failUnless(url.url_patterns[0].__repr__() in [ '<RegexURLPattern sessions_session_test_tool ^test_tool/$>', '<RegexURLPattern auth_user_test_tool ^test_tool/$>', '<RegexURLPattern auth_group_test_tool ^test_tool/$>', '<RegexURLPattern auth_permission_test_tool ^test_tool/$>', '<RegexURLPattern contenttypes_contenttype_test_tool ^test_tool/$>', '<RegexURLPattern admin_logentry_test_tool ^test_tool/$>' ])
def test_init(self): # Check init results in expected members. tools = ObjectTools() self.assertEqual(tools.name, 'object-tools') self.assertEqual(tools.app_name, 'object-tools') self.assertEqual(tools._registry, {})