summaryrefslogtreecommitdiffstats
path: root/python/tests/login_tests.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/tests/login_tests.py')
-rw-r--r--python/tests/login_tests.py104
1 files changed, 42 insertions, 62 deletions
diff --git a/python/tests/login_tests.py b/python/tests/login_tests.py
index 47378f48..88034c3c 100644
--- a/python/tests/login_tests.py
+++ b/python/tests/login_tests.py
@@ -46,68 +46,62 @@ class LoginTestCase(unittest.TestCase):
site = IdentityProvider(internet, 'https://identity-provider/')
site.providerId = 'https://identity-provider/metadata'
- server = lasso.Server.new(
+ lassoServer = lasso.Server.new(
'../../examples/data/idp-metadata.xml',
'../../examples/data/idp-public-key.pem',
'../../examples/data/idp-private-key.pem',
'../../examples/data/idp-crt.pem',
lasso.signatureMethodRsaSha1)
- server.add_provider(
+ lassoServer.add_provider(
'../../examples/data/sp-metadata.xml',
'../../examples/data/sp-public-key.pem',
'../../examples/data/ca-crt.pem')
- site.serverDump = server.dump()
- failUnless(site.serverDump)
- server.destroy()
-
- site.addWebUser('Chantereau')
- site.addWebUser('Clapies')
- site.addWebUser('Febvre')
- site.addWebUser('Nowicki')
+ site.lassoServerDump = lassoServer.dump()
+ failUnless(site.lassoServerDump)
+ lassoServer.destroy()
+
+ site.addUser('Chantereau')
+ site.addUser('Clapies')
+ site.addUser('Febvre')
+ site.addUser('Nowicki')
# Frederic Peters has no account on identity provider.
return site
def generateLibertyEnabledClient(self, internet):
client = LibertyEnabledClient(internet)
- # FIXME: Lasso should provide a way for Liberty-enabled client to create a "server" without
- # metadata, instead of using 'singleSignOnServiceUrl'.
-## server = lasso.Server.new(
-## None, # A LECP has no metadata.
-## '../../examples/data/client-public-key.pem',
-## '../../examples/data/client-private-key.pem',
-## '../../examples/data/client-crt.pem',
-## lasso.signatureMethodRsaSha1)
-## server.add_provider(
-## '../../examples/data/idp-metadata.xml',
-## '../../examples/data/idp-public-key.pem',
-## '../../examples/data/ca-crt.pem')
-## client.server = server
- client.idpSingleSignOnServiceUrl = 'https://identity-provider/singleSignOn'
+ lassoServer = lasso.Server.new()
+ lassoServer.add_provider(
+ '../../examples/data/idp-metadata.xml',
+ '../../examples/data/idp-public-key.pem',
+ '../../examples/data/ca-crt.pem')
+ client.lassoServerDump = lassoServer.dump()
+ failUnless(client.lassoServerDump)
+ lassoServer.destroy()
return client
def generateSpSite(self, internet):
site = ServiceProvider(internet, 'https://service-provider/')
site.providerId = 'https://service-provider/metadata'
- server = lasso.Server.new(
+ lassoServer = lasso.Server.new(
'../../examples/data/sp-metadata.xml',
'../../examples/data/sp-public-key.pem',
'../../examples/data/sp-private-key.pem',
'../../examples/data/sp-crt.pem',
lasso.signatureMethodRsaSha1)
- server.add_provider(
+ lassoServer.add_provider(
'../../examples/data/idp-metadata.xml',
'../../examples/data/idp-public-key.pem',
'../../examples/data/ca-crt.pem')
- site.serverDump = server.dump()
- failUnless(site.serverDump)
- server.destroy()
+ site.lassoServerDump = lassoServer.dump()
+ failUnless(site.lassoServerDump)
+ lassoServer.destroy()
- site.addWebUser('Nicolas')
- site.addWebUser('Romain')
- site.addWebUser('Valery')
+ site.addUser('Nicolas')
+ site.addUser('Romain')
+ site.addUser('Valery')
# Christophe Nowicki has no account on service provider.
- site.addWebUser('Frederic')
+ site.addUser('Frederic')
return site
def setUp(self):
@@ -120,19 +114,6 @@ class LoginTestCase(unittest.TestCase):
'failUnlessAlmostEqual', 'failUnlessRaises', 'failUnlessEqual'):
builtins.delete(name)
- def test00(self):
- """LECP login."""
- internet = Internet()
- idpSite = self.generateIdpSite(internet)
- spSite = self.generateSpSite(internet)
- spSite.idpSite = idpSite
- lec = self.generateLibertyEnabledClient(internet)
- principal = Principal(internet, 'Romain Chantereau')
- principal.keyring[idpSite.url] = 'Chantereau'
- principal.keyring[spSite.url] = 'Romain'
- httpResponse = lec.login(principal, spSite, '/login')
- raise str((httpResponse.headers['Content-Type'], httpResponse.body))
-
def test01(self):
"""Service provider initiated login using HTTP redirect and service provider initiated logout using SOAP."""
@@ -148,8 +129,8 @@ class LoginTestCase(unittest.TestCase):
failUnlessEqual(httpResponse.statusCode, 200)
httpResponse = principal.sendHttpRequestToSite(spSite, 'GET', '/logoutUsingSoap')
failUnlessEqual(httpResponse.statusCode, 200)
- failIf(spSite.webSessions)
- failIf(idpSite.webSessions)
+ failIf(spSite.sessions)
+ failIf(idpSite.sessions)
def test02(self):
"""Service provider initiated login using HTTP redirect and service provider initiated logout using SOAP. Done three times."""
@@ -264,20 +245,19 @@ class LoginTestCase(unittest.TestCase):
httpResponse = principal.sendHttpRequestToSite(spSite, 'GET', '/logoutUsingSoap')
failUnlessEqual(httpResponse.statusCode, 401)
-## def test06(self):
-## """Service provider LECP login."""
-
-## # LECP has asked service provider for login.
-## spServer = self.getServer()
-
-## # FIXME: Why doesn't lasso.Lecp.new have spServer as argument?
-## # spLecp = lasso.Lecp.new(spServer)
-## spLecp = lasso.Lecp.new()
-## spLecp.init_authn_request_envelope(sp, )
-## lasso_lecp_init_authn_request_envelope(sp_lecp, spserver, authnRequest);
-## lasso_lecp_build_authn_request_envelope_msg(sp_lecp);
-## msg = g_strdup(sp_lecp->msg_body);
-## lasso_lecp_destroy(sp_lecp);
+ def test07(self):
+ """LECP login."""
+ internet = Internet()
+ idpSite = self.generateIdpSite(internet)
+ spSite = self.generateSpSite(internet)
+ spSite.idpSite = idpSite
+ lec = self.generateLibertyEnabledClient(internet)
+ lec.idpSite = idpSite
+ principal = Principal(internet, 'Romain Chantereau')
+ principal.keyring[idpSite.url] = 'Chantereau'
+ principal.keyring[spSite.url] = 'Romain'
+ httpResponse = lec.login(principal, spSite, '/login')
+ raise str((httpResponse.statusCode, httpResponse.statusMessage, httpResponse.headers['Content-Type'], httpResponse.body))
suite1 = unittest.makeSuite(LoginTestCase, 'test')