From 0f56ef9942ee631a9306806bea8f3bb8e7b81076 Mon Sep 17 00:00:00 2001 From: Rob Crittenden Date: Thu, 19 Mar 2015 15:20:28 -0400 Subject: Add tests for Name ID functionality Some Name ID formats are not implemented so are expected to fail. Kerberos is implemented but the test is done using form authentication so no Kerberos principal is available so authentication is denied. https://fedorahosted.org/ipsilon/ticket/27 Signed-off-by: Rob Crittenden Reviewed-by: Simo Sorce --- tests/helpers/http.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'tests/helpers/http.py') diff --git a/tests/helpers/http.py b/tests/helpers/http.py index cf59853..d8c56b3 100755 --- a/tests/helpers/http.py +++ b/tests/helpers/http.py @@ -266,6 +266,22 @@ class HttpSessions(object): page.expected_value('//div[@class="alert alert-success"]/p/text()', 'SP Successfully added') + def set_sp_default_nameids(self, idp, sp, nameids): + """ + nameids is a list of Name ID formats to enable + """ + idpsrv = self.servers[idp] + idpuri = idpsrv['baseuri'] + url = '%s/%s/admin/providers/saml2/admin/sp/%s' % (idpuri, idp, sp) + headers = {'referer': url} + headers['content-type'] = 'application/x-www-form-urlencoded' + payload = {'submit': 'Submit', + 'allowed_nameids': ', '.join(nameids)} + r = idpsrv['session'].post(url, headers=headers, + data=payload) + if r.status_code != 200: + raise ValueError('Failed to post SP data [%s]' % repr(r)) + def fetch_rest_page(self, idpname, uri): """ idpname - the name of the IDP to fetch the page from -- cgit