def test_mock_plugin(self): """ Test with a mock plugin """ sso_plugins = ["url_sso.tests.mock_plugins.mock_plugin_one"] with self.settings(URL_SSO_PLUGINS=sso_plugins): self.assertEquals(login_urls(self.request), mock_plugin_one.bogus_dict)
def test_exception(self): """ Test with a mock plugin raising a RequestKeyException """ sso_plugins = ["url_sso.tests.mock_plugins.mock_plugin_exception"] with self.settings(URL_SSO_PLUGINS=sso_plugins): # This should yield no exception but return an empty dict self.assertEquals(login_urls(self.request), {})
def test_two_plugins(self): """ Test with two bogus plugins """ sso_plugins = ["url_sso.tests.mock_plugins.mock_plugin_one", "url_sso.tests.mock_plugins.mock_plugin_two"] with self.settings(URL_SSO_PLUGINS=sso_plugins): self.assertEquals( login_urls(self.request), {"MY_URL": "https://www.bogus.com/some_token", "OTHER_URL": "https://www.bogus.com/other_token"}, )
def test_integration(self): """ Test integration with login_urls() RequestContextProcessor """ # Make sure user is set on the request self.request.user = self.user def key_mock(url, request): return self.test_xml with HTTMock(key_mock): context = login_urls(self.request) self.assertEquals( context, self.test_login_urls )
def test_no_plugins(self): """ Test login URL's when no plugins are configured """ with self.settings(URL_SSO_PLUGINS=[]): self.assertEquals(login_urls(self.request), {})