def test_login_sso(self): o = util.override( DOMAIN=self.domain, GAE_DOMAIN=self.gae_domain, HOSTED_DOMAIN_ENABLED=True, HOSTED_DOMAIN=self.hosted_domain, SUBDOMAINS_ENABLED=True, SSL_LOGIN_ENABLED=True, ) r = self.post_with_host('/login', { 'log': 'popular', 'pwd': self.passwords[clean.nick('popular')] }, self.gae_domain, ssl=True) check_redirect = 'http://%s/login/noreally' % self.domain r = self.assertRedirectsPrefix(r, check_redirect, status_code=302, target_status_code=302) r = self.assertRedirectsPrefix(r, '/user/popular/overview', status_code=302, target_status_code=200) o.reset()
def test_login_sso(self): o = util.override(DOMAIN=self.domain, GAE_DOMAIN=self.gae_domain, HOSTED_DOMAIN_ENABLED=True, HOSTED_DOMAIN=self.hosted_domain, SUBDOMAINS_ENABLED=True, SSL_LOGIN_ENABLED=True, ) r = self.post_with_host('/login', {'log': 'popular', 'pwd': self.passwords[clean.nick('popular')] }, self.gae_domain, ssl=True ) check_redirect = 'http://%s/login/noreally' % self.domain r = self.assertRedirectsPrefix(r, check_redirect, status_code=302, target_status_code=302) r = self.assertRedirectsPrefix(r, '/user/popular/overview', status_code=302, target_status_code=200) o.reset()
def test_xmlrpc_bad_legacy_key(self): self.overrides = test_util.override(API_ALLOW_LEGACY_AUTH=True) params = {'nick': 'popular', 'user': '******', 'personal_key': 'INVALID PERSONAL KEY!'} xml = xmlrpclib.dumps((params,), 'actor_get') response = self.client.post('/api/xmlrpc', xml, 'text/xml') self.assertContains(response, 'Invalid API user')
def test_xmlrpc_with_legacy_key(self): self.overrides = test_util.override(API_ALLOW_LEGACY_AUTH=True) popular_ref = api.actor_get(api.ROOT, 'popular') personal_key = legacy.generate_personal_key(popular_ref) params = {'user': '******', 'personal_key': personal_key, 'nick': 'popular'} self.assert_valid_actor_get_response(params)
def test_wildcard_subdomain(self): self.override = util.override(DOMAIN=self.domain, HOSTED_DOMAIN_ENABLED=True, HOSTED_DOMAIN=self.hosted_domain, SUBDOMAINS_ENABLED=True, WILDCARD_USER_SUBDOMAINS_ENABLED=True) r = self.get_with_host('', host='popular.%s' % self.hosted_domain) self.assertContains(r, 'test entry')
def test_xmlrpc_with_disabled_legacy_key(self): self.overrides = test_util.override(API_ALLOW_LEGACY_AUTH=False) popular_ref = api.actor_get(api.ROOT, 'popular') personal_key = legacy.generate_personal_key(popular_ref) params = {'user': '******', 'personal_key': personal_key, 'nick': 'popular'} xml = xmlrpclib.dumps((params,), 'actor_get') response = self.client.post('/api/xmlrpc', xml, 'text/xml') self.assertContains(response, 'Parameter not found')
def test_xmlrpc_bad_legacy_key(self): self.overrides = test_util.override(API_ALLOW_LEGACY_AUTH=True) params = { 'nick': 'popular', 'user': '******', 'personal_key': 'INVALID PERSONAL KEY!' } xml = xmlrpclib.dumps((params, ), 'actor_get') response = self.client.post('/api/xmlrpc', xml, 'text/xml') self.assertContains(response, 'Invalid API user')
def test_xmlrpc_with_legacy_key(self): self.overrides = test_util.override(API_ALLOW_LEGACY_AUTH=True) popular_ref = api.actor_get(api.ROOT, 'popular') personal_key = legacy.generate_personal_key(popular_ref) params = { 'user': '******', 'personal_key': personal_key, 'nick': 'popular' } self.assert_valid_actor_get_response(params)
def test_wildcard_subdomain(self): self.override = util.override(DOMAIN=self.domain, HOSTED_DOMAIN_ENABLED=True, HOSTED_DOMAIN=self.hosted_domain, SUBDOMAINS_ENABLED=True, WILDCARD_USER_SUBDOMAINS_ENABLED=True ) r = self.get_with_host('', host='popular.%s' % self.hosted_domain) self.assertContains(r, 'test entry')
def test_blacklist(self): o = test_util.override(SMS_MT_BLACKLIST=re.compile('\+1')) def _all_blocked(): r = self.sign_in('popular') self.assertRaises(exception.ServiceError, _all_blocked) r = self.sign_in('popular', '+2345678900') self.assert_(r) o.reset()
def test_xmlrpc_with_disabled_legacy_key(self): self.overrides = test_util.override(API_ALLOW_LEGACY_AUTH=False) popular_ref = api.actor_get(api.ROOT, 'popular') personal_key = legacy.generate_personal_key(popular_ref) params = { 'user': '******', 'personal_key': personal_key, 'nick': 'popular' } xml = xmlrpclib.dumps((params, ), 'actor_get') response = self.client.post('/api/xmlrpc', xml, 'text/xml') self.assertContains(response, 'Parameter not found')
def test_blank_wildcard_subdomain(self): self.override = util.override(DOMAIN=self.domain, HOSTED_DOMAIN_ENABLED=True, HOSTED_DOMAIN=self.hosted_domain, SUBDOMAINS_ENABLED=True, WILDCARD_USER_SUBDOMAINS_ENABLED=True) r = self.get_with_host('', host='%s' % self.hosted_domain) r = self.assertRedirectsPrefix(r, 'http://www.%s' % self.hosted_domain, status_code=301) self.assertContains(r, 'test entry')
def test_blank_wildcard_subdomain(self): self.override = util.override(DOMAIN=self.domain, HOSTED_DOMAIN_ENABLED=True, HOSTED_DOMAIN=self.hosted_domain, SUBDOMAINS_ENABLED=True, WILDCARD_USER_SUBDOMAINS_ENABLED=True ) r = self.get_with_host('', host='%s' % self.hosted_domain) r = self.assertRedirectsPrefix(r, 'http://www.%s' % self.hosted_domain, status_code=301) self.assertContains(r, 'test entry')
def test_api_subdomain(self): self.override = util.override(DOMAIN=self.domain, HOSTED_DOMAIN_ENABLED=True, HOSTED_DOMAIN=self.hosted_domain, SUBDOMAINS_ENABLED=True, ) r = self.get_with_host('/docs', host='api.%s' % self.hosted_domain) self.assertContains(r, 'Documentation') r = self.get_with_host('/', host='api.%s' % self.hosted_domain) r = self.assertRedirectsPrefix(r, 'http://api.%s/docs' % self.hosted_domain, status_code=301 ) self.assertContains(r, 'Documentation')
def test_api_subdomain(self): self.override = util.override( DOMAIN=self.domain, HOSTED_DOMAIN_ENABLED=True, HOSTED_DOMAIN=self.hosted_domain, SUBDOMAINS_ENABLED=True, ) r = self.get_with_host('/docs', host='api.%s' % self.hosted_domain) self.assertContains(r, 'Documentation') r = self.get_with_host('/', host='api.%s' % self.hosted_domain) r = self.assertRedirectsPrefix(r, 'http://api.%s/docs' % self.hosted_domain, status_code=301) self.assertContains(r, 'Documentation')
def check_domain_redirects(self, requests, **overrides): o = util.override(**overrides) for url, redirect in requests: scheme, netloc, path, params, query, fragment = urlparse.urlparse(url) if redirect: e_scheme, e_netloc, e_path, e_params, e_query, e_fragment = \ urlparse.urlparse(redirect) if scheme == 'https': ssl = True else: ssl = False r = self.get_with_host(path, host=netloc, ssl=ssl) if redirect: self.assertRedirectsPrefix(r, redirect, status_code=301) else: self.assertEqual(r.status_code, 200) o.reset()
def check_domain_redirects(self, requests, **overrides): o = util.override(**overrides) for url, redirect in requests: scheme, netloc, path, params, query, fragment = urlparse.urlparse( url) if redirect: e_scheme, e_netloc, e_path, e_params, e_query, e_fragment = \ urlparse.urlparse(redirect) if scheme == 'https': ssl = True else: ssl = False r = self.get_with_host(path, host=netloc, ssl=ssl) if redirect: self.assertRedirectsPrefix(r, redirect, status_code=301) else: self.assertEqual(r.status_code, 200) o.reset()
def setUp(self): super(ImTestCase, self).setUp() self.overrides = test_util.override(IM_ENABLED=True)