Skip to content

Commit fb17c4f

Browse files
committed
Fixing py3 errors caused by views in assertions
Assertions code had some assumptions that dict method iterators would return the actual type. Forcing a cast to list remedies that.
1 parent f1305a3 commit fb17c4f

File tree

3 files changed

+8
-8
lines changed

3 files changed

+8
-8
lines changed

src/saml2/assertion.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,7 @@ def filter_attribute_value_assertions(ava, attribute_restrictions=None):
229229
if not attribute_restrictions:
230230
return ava
231231

232-
for attr, vals in ava.items():
232+
for attr, vals in list(ava.items()):
233233
_attr = attr.lower()
234234
try:
235235
_rests = attribute_restrictions[_attr]

tests/test_36_mdbcache.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ def test_set_get_1(self):
3131
#{u'issuer': u'', u'came from': u'', u'ava': {u'givenName': [u'Derek']}, u'session_id': -1, u'not_on_or_after': 0}
3232
ava = info["ava"]
3333
print(ava)
34-
assert ava.keys() == ["givenName"]
34+
assert list(ava.keys()) == ["givenName"]
3535
assert ava["givenName"] == ["Derek"]
3636

3737
def test_set_get_2(self):

tests/test_37_entity_categories.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ def test_filter_ava():
5656

5757
ava = policy.filter(ava, "https://connect.sunet.se/shibboleth", MDS)
5858

59-
assert _eq(ava.keys(), ['mail', 'givenName', 'sn', 'c'])
59+
assert _eq(list(ava.keys()), ['mail', 'givenName', 'sn', 'c'])
6060
assert _eq(ava["mail"], ["[email protected]", "[email protected]"])
6161

6262

@@ -77,7 +77,7 @@ def test_filter_ava2():
7777

7878
# Mismatch, policy deals with eduGAIN, metadata says SWAMID
7979
# So only minimum should come out
80-
assert _eq(ava.keys(), ['eduPersonTargetedID'])
80+
assert _eq(list(ava.keys()), ['eduPersonTargetedID'])
8181

8282

8383
def test_filter_ava3():
@@ -100,7 +100,7 @@ def test_filter_ava3():
100100

101101
ava = policy.filter(ava, "urn:mace:example.com:saml:roland:sp", mds)
102102

103-
assert _eq(ava.keys(), ['eduPersonTargetedID', "norEduPersonNIN"])
103+
assert _eq(list(ava.keys()), ['eduPersonTargetedID', "norEduPersonNIN"])
104104

105105

106106
def test_filter_ava4():
@@ -123,7 +123,7 @@ def test_filter_ava4():
123123

124124
ava = policy.filter(ava, "urn:mace:example.com:saml:roland:sp", mds)
125125

126-
assert _eq(ava.keys(), ['eduPersonTargetedID', "givenName", "c", "mail",
126+
assert _eq(list(ava.keys()), ['eduPersonTargetedID', "givenName", "c", "mail",
127127
"sn"])
128128

129129

@@ -147,7 +147,7 @@ def test_filter_ava5():
147147

148148
ava = policy.filter(ava, "urn:mace:example.com:saml:roland:sp", mds)
149149

150-
assert _eq(ava.keys(), ['eduPersonTargetedID'])
150+
assert _eq(list(ava.keys()), ['eduPersonTargetedID'])
151151

152152

153153
def test_idp_policy_filter():
@@ -161,7 +161,7 @@ def test_idp_policy_filter():
161161
ava = policy.filter(ava, "urn:mace:example.com:saml:roland:sp", idp.metadata)
162162

163163
print(ava)
164-
assert ava.keys() == ["eduPersonTargetedID"] # because no entity category
164+
assert list(ava.keys()) == ["eduPersonTargetedID"] # because no entity category
165165

166166
if __name__ == "__main__":
167167
test_idp_policy_filter()

0 commit comments

Comments
 (0)