diff options
Diffstat (limited to 'tests/helpers')
-rwxr-xr-x | tests/helpers/common.py | 4 | ||||
-rwxr-xr-x | tests/helpers/http.py | 16 |
2 files changed, 19 insertions, 1 deletions
diff --git a/tests/helpers/common.py b/tests/helpers/common.py index 07a41fe..f3799c4 100755 --- a/tests/helpers/common.py +++ b/tests/helpers/common.py @@ -55,7 +55,8 @@ class IpsilonTestBase(object): os.mkdir(os.path.join(self.testdir, 'lib', test.name)) os.mkdir(os.path.join(self.testdir, 'log')) - def generate_profile(self, global_opts, args_opts, name, addr, port): + def generate_profile(self, global_opts, args_opts, name, addr, port, + nameid='unspecified'): newconf = ConfigParser.ConfigParser() newconf.add_section('globals') for k in global_opts.keys(): @@ -71,6 +72,7 @@ class IpsilonTestBase(object): text = t.substitute({'NAME': name, 'ADDRESS': addr, 'PORT': port, 'TESTDIR': self.testdir, 'ROOTDIR': self.rootdir, + 'NAMEID': nameid, 'TEST_USER': self.testuser}) filename = os.path.join(self.testdir, '%s_profile.cfg' % name) 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 |