From 75732c8294328c1fcd75e94a84e81b3296c837db Mon Sep 17 00:00:00 2001 From: Emmanuel Raviart Date: Tue, 1 Feb 2005 21:48:57 +0000 Subject: Corrected typo in constant. Added test for AuthnContext in AuthnRequest. --- python/tests/profiles_tests.py | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) (limited to 'python') diff --git a/python/tests/profiles_tests.py b/python/tests/profiles_tests.py index 99e32892..f2e8ce98 100755 --- a/python/tests/profiles_tests.py +++ b/python/tests/profiles_tests.py @@ -113,7 +113,49 @@ class LoginTestCase(unittest.TestCase): except lasso.Error, error: if error[0] != lasso.PROFILE_ERROR_INVALID_MSG: raise + def test03(self): + """Conversion of a lib:AuthnRequest into a query and back.""" + sp = lasso.Server( + os.path.join(dataDir, 'sp1-la/metadata.xml'), + os.path.join(dataDir, 'sp1-la/private-key-raw.pem'), + None, + os.path.join(dataDir, 'sp1-la/certificate.pem')) + sp.addProvider( + lasso.PROVIDER_ROLE_IDP, + os.path.join(dataDir, 'idp1-la/metadata.xml'), + os.path.join(dataDir, 'idp1-la/public-key.pem'), + os.path.join(dataDir, 'idp1-la/certificate.pem')) + spLogin = lasso.Login(sp) + spLogin.initAuthnRequest() + requestAuthnContext = lasso.LibRequestAuthnContext() + authnContextClassRefsList = lasso.StringList() + authnContextClassRefsList.append( + lasso.LIB_AUTHN_CONTEXT_CLASS_REF_PASSWORD) + requestAuthnContext.authnContextClassRef = authnContextClassRefsList + spLogin.request.requestAuthnContext = requestAuthnContext + spLogin.request.protocolProfile = lasso.LIB_PROTOCOL_PROFILE_BRWS_ART + spLogin.buildAuthnRequestMsg() + authnRequestUrl = spLogin.msgUrl + authnRequestQuery = spLogin.msgUrl[spLogin.msgUrl.index('?') + 1:] + idp = lasso.Server( + os.path.join(dataDir, 'idp1-la/metadata.xml'), + os.path.join(dataDir, 'idp1-la/private-key-raw.pem'), + None, + os.path.join(dataDir, 'idp1-la/certificate.pem')) + idp.addProvider( + lasso.PROVIDER_ROLE_SP, + os.path.join(dataDir, 'sp1-la/metadata.xml'), + os.path.join(dataDir, 'sp1-la/public-key.pem'), + os.path.join(dataDir, 'sp1-la/certificate.pem')) + idpLogin = lasso.Login(idp) + idpLogin.processAuthnRequestMsg(authnRequestQuery) + self.failUnless(idpLogin.request.requestAuthnContext) + authnContextClassRefsList = idpLogin.request.requestAuthnContext.authnContextClassRef + self.failUnlessEqual(len(authnContextClassRefsList), 1) + self.failUnlessEqual(authnContextClassRefsList[0], + lasso.LIB_AUTHN_CONTEXT_CLASS_REF_PASSWORD) + class LogoutTestCase(unittest.TestCase): def test01(self): -- cgit