When running ./setup.py test, these two tests were failing to find the .pem files located in the tests/ directory that they were referencing without paths. Other tests use full_path from pathutils to reference files in tests/, so adjusted these to do similarly, and now they pass.
		
			
				
	
	
		
			53 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
import xmldsig as ds
 | 
						|
from saml2 import config
 | 
						|
from saml2 import extension_elements_to_elements
 | 
						|
from saml2 import element_to_extension_element
 | 
						|
from saml2 import saml
 | 
						|
from saml2.client import Saml2Client
 | 
						|
from saml2.extension import pefim
 | 
						|
from saml2.extension.pefim import SPCertEnc
 | 
						|
from saml2.samlp import Extensions
 | 
						|
from saml2.samlp import authn_request_from_string
 | 
						|
from saml2.sigver import read_cert_from_file
 | 
						|
from pathutils import full_path
 | 
						|
 | 
						|
__author__ = 'roland'
 | 
						|
 | 
						|
conf = config.SPConfig()
 | 
						|
conf.load_file("server_conf")
 | 
						|
client = Saml2Client(conf)
 | 
						|
 | 
						|
# place a certificate in an authn request
 | 
						|
cert = read_cert_from_file(full_path("test.pem"), "pem")
 | 
						|
 | 
						|
spcertenc = SPCertEnc(
 | 
						|
    x509_data=ds.X509Data(
 | 
						|
        x509_certificate=ds.X509Certificate(text=cert)))
 | 
						|
 | 
						|
extensions = Extensions(
 | 
						|
    extension_elements=[element_to_extension_element(spcertenc)])
 | 
						|
 | 
						|
req_id, req = client.create_authn_request(
 | 
						|
    "http://www.example.com/sso",
 | 
						|
    "urn:mace:example.com:it:tek",
 | 
						|
    nameid_format=saml.NAMEID_FORMAT_PERSISTENT,
 | 
						|
    message_id="666",
 | 
						|
    extensions=extensions)
 | 
						|
 | 
						|
 | 
						|
print req
 | 
						|
 | 
						|
# Get a certificate from an authn request
 | 
						|
 | 
						|
xml = "%s" % req
 | 
						|
 | 
						|
parsed = authn_request_from_string(xml)
 | 
						|
 | 
						|
_elem = extension_elements_to_elements(parsed.extensions.extension_elements,
 | 
						|
                                       [pefim, ds])
 | 
						|
 | 
						|
assert len(_elem) == 1
 | 
						|
_spcertenc = _elem[0]
 | 
						|
_cert = _spcertenc.x509_data[0].x509_certificate.text
 | 
						|
assert cert == _cert
 |