@@ -71,6 +71,16 @@ def setup_class(self):
71
71
name_id = name_id ,
72
72
authn = AUTHN )
73
73
74
+ self ._resp_issuer_none = server .create_authn_response (
75
+ IDENTITY ,
76
+ "id12" , # in_response_to
77
+ "http://lingon.catalogix.se:8087/" ,
78
+ # consumer_url
79
+ "urn:mace:example.com:saml:roland:sp" ,
80
+ # sp_entity_id
81
+ name_id = name_id )
82
+ self ._resp_issuer_none .issuer = None
83
+
74
84
conf = config .SPConfig ()
75
85
conf .load_file ("server_conf" )
76
86
self .conf = conf
@@ -99,6 +109,19 @@ def test_2(self):
99
109
assert isinstance (resp , StatusResponse )
100
110
assert isinstance (resp , AuthnResponse )
101
111
112
+ def test_issuer_none (self ):
113
+ xml_response = ("%s" % (self ._resp_issuer_none ,))
114
+ resp = response_factory (xml_response , self .conf ,
115
+ return_addrs = [
116
+ "http://lingon.catalogix.se:8087/" ],
117
+ outstanding_queries = {
118
+ "id12" : "http://localhost:8088/sso" },
119
+ timeslack = TIMESLACK , decode = False )
120
+
121
+ assert isinstance (resp , StatusResponse )
122
+ assert isinstance (resp , AuthnResponse )
123
+ assert resp .issuer () == ""
124
+
102
125
@mock .patch ('saml2.time_util.datetime' )
103
126
def test_false_sign (self , mock_datetime ):
104
127
mock_datetime .utcnow = mock .Mock (
0 commit comments