summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Bublichenko <alex.bublichenko@oracle.com>2019-05-24 11:14:00 -0700
committerAlex Bublichenko <alex.bublichenko@oracle.com>2019-05-24 11:14:00 -0700
commit65af4be7a2002cb427170adc245d936c65feaa4e (patch)
treeb0be79055389254ed370aa634e1b4303f67a3837
parent5d827674714212ad2536e54ac964791c8126024d (diff)
downloadpysaml2-65af4be7a2002cb427170adc245d936c65feaa4e.tar.gz
Clean up and fix tests for python 3.* versions
-rw-r--r--tests/test_02_saml.py27
-rw-r--r--tests/test_93_hok.py54
2 files changed, 46 insertions, 35 deletions
diff --git a/tests/test_02_saml.py b/tests/test_02_saml.py
index 2cdb5064..ec5f15d6 100644
--- a/tests/test_02_saml.py
+++ b/tests/test_02_saml.py
@@ -901,19 +901,20 @@ class TestSubjectConfirmation:
key_info = sc.subject_confirmation_data.key_info
assert len(key_info) == 1
assert len(key_info[0].x509_data) == 1
- assert key_info[0].x509_data[0].x509_certificate.text.strip() == """
-MIICITCCAYoCAQEwDQYJKoZIhvcNAQELBQAwWDELMAkGA1UEBhMCenoxCzAJBgNV
-BAgMAnp6MQ0wCwYDVQQHDAR6enp6MQ4wDAYDVQQKDAVaenp6ejEOMAwGA1UECwwF
-Wnp6enoxDTALBgNVBAMMBHRlc3QwIBcNMTkwNDEyMTk1MDM0WhgPMzAxODA4MTMx
-OTUwMzRaMFgxCzAJBgNVBAYTAnp6MQswCQYDVQQIDAJ6ejENMAsGA1UEBwwEenp6
-ejEOMAwGA1UECgwFWnp6enoxDjAMBgNVBAsMBVp6enp6MQ0wCwYDVQQDDAR0ZXN0
-MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDHcj80WU/XBsd9FlyQmfjPUdfm
-edhCFDd6TEQmZNNqP/UG+VkGa+BXjRIHMfic/WxPTbGhCjv68ci0UDNomUXagFex
-LGNpkwa7+CRVtoc/1xgq+ySE6M4nhcCutScoxNvWNn5eSQ66i3U0sTv91MgsXxqE
-dTaiZg0BIufEc3dueQIDAQABMA0GCSqGSIb3DQEBCwUAA4GBAGUV5B+USHvaRa8k
-gCNJSuNpo6ARlv0ekrk8bbdNRBiEUdCMyoGJFfuM9K0zybX6Vr25wai3nvaog294
-Vx/jWjX2g5SDbjItH6VGy6C9GCGf1A07VxFRCfJn5tA9HuJjPKiE+g/BmrV5N4Ce
-alzFxPHWYkNOzoRU8qI7OqUai1kL""".strip()
+
+ expected_cert = """MIICITCCAYoCAQEwDQYJKoZIhvcNAQELBQAwWDELMAkGA1UEBhMCenoxCzAJBgNV
+ BAgMAnp6MQ0wCwYDVQQHDAR6enp6MQ4wDAYDVQQKDAVaenp6ejEOMAwGA1UECwwF
+ Wnp6enoxDTALBgNVBAMMBHRlc3QwIBcNMTkwNDEyMTk1MDM0WhgPMzAxODA4MTMx
+ OTUwMzRaMFgxCzAJBgNVBAYTAnp6MQswCQYDVQQIDAJ6ejENMAsGA1UEBwwEenp6
+ ejEOMAwGA1UECgwFWnp6enoxDjAMBgNVBAsMBVp6enp6MQ0wCwYDVQQDDAR0ZXN0
+ MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDHcj80WU/XBsd9FlyQmfjPUdfm
+ edhCFDd6TEQmZNNqP/UG+VkGa+BXjRIHMfic/WxPTbGhCjv68ci0UDNomUXagFex
+ LGNpkwa7+CRVtoc/1xgq+ySE6M4nhcCutScoxNvWNn5eSQ66i3U0sTv91MgsXxqE
+ dTaiZg0BIufEc3dueQIDAQABMA0GCSqGSIb3DQEBCwUAA4GBAGUV5B+USHvaRa8k
+ gCNJSuNpo6ARlv0ekrk8bbdNRBiEUdCMyoGJFfuM9K0zybX6Vr25wai3nvaog294
+ Vx/jWjX2g5SDbjItH6VGy6C9GCGf1A07VxFRCfJn5tA9HuJjPKiE+g/BmrV5N4Ce
+ alzFxPHWYkNOzoRU8qI7OqUai1kL""".replace(' ', '')
+ assert key_info[0].x509_data[0].x509_certificate.text.strip() == expected_cert
class TestSubject:
diff --git a/tests/test_93_hok.py b/tests/test_93_hok.py
index 085c930d..df740722 100644
--- a/tests/test_93_hok.py
+++ b/tests/test_93_hok.py
@@ -1,24 +1,12 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
-from contextlib import closing
-from datetime import datetime
-from dateutil import parser
-from string import translate, whitespace
-from saml2.authn_context import INTERNETPROTOCOLPASSWORD
-
-from saml2.server import Server
from saml2.response import authn_response
from saml2.config import config_factory
from pathutils import dotname, full_path
-# Example SAML response iwth 'holder-of-key' subject confirmtaions
-# containing DER-base64 copies (without PEM enclosure) of test_1.crt and test_2.crt
HOLDER_OF_KEY_RESPONSE_FILE = full_path("saml_hok.xml")
-TEST_CERT_1 = full_path("test_1.crt")
-TEST_CERT_2 = full_path("test_2.crt")
-
class TestHolderOfKeyResponse:
def test_hok_response_is_parsed(self):
@@ -34,17 +22,39 @@ class TestHolderOfKeyResponse:
assert resp.get_subject() is not None
assert len(resp.assertion.subject.subject_confirmation) == 2
- actual_certs = [sc.subject_confirmation_data.key_info[0].x509_data[0].x509_certificate.text.strip()
+ actual_hok_certs = [sc.subject_confirmation_data.key_info[0].x509_data[0].x509_certificate.text.strip()
for sc in resp.assertion.subject.subject_confirmation]
- expected_certs = [self._read_cert_without_pem_enclosure(TEST_CERT_1),
- self._read_cert_without_pem_enclosure(TEST_CERT_2)]
- assert actual_certs == expected_certs
-
- def _read_cert_without_pem_enclosure(self, path):
- with open(path, 'r') as fp:
- lines = fp.readlines()
- lines_without_enclosure = lines[1:-1]
- return ''.join(lines_without_enclosure).translate(None, whitespace)
+ assert actual_hok_certs == self._expected_hok_certs()
+
+ def _expected_hok_certs(self):
+ certs = ["""MIICITCCAYoCAQEwDQYJKoZIhvcNAQELBQAwWDELMAkGA1UEBhMCenoxCzAJBgNV
+ BAgMAnp6MQ0wCwYDVQQHDAR6enp6MQ4wDAYDVQQKDAVaenp6ejEOMAwGA1UECwwF
+ Wnp6enoxDTALBgNVBAMMBHRlc3QwIBcNMTkwNDEyMTk1MDM0WhgPMzAxODA4MTMx
+ OTUwMzRaMFgxCzAJBgNVBAYTAnp6MQswCQYDVQQIDAJ6ejENMAsGA1UEBwwEenp6
+ ejEOMAwGA1UECgwFWnp6enoxDjAMBgNVBAsMBVp6enp6MQ0wCwYDVQQDDAR0ZXN0
+ MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDHcj80WU/XBsd9FlyQmfjPUdfm
+ edhCFDd6TEQmZNNqP/UG+VkGa+BXjRIHMfic/WxPTbGhCjv68ci0UDNomUXagFex
+ LGNpkwa7+CRVtoc/1xgq+ySE6M4nhcCutScoxNvWNn5eSQ66i3U0sTv91MgsXxqE
+ dTaiZg0BIufEc3dueQIDAQABMA0GCSqGSIb3DQEBCwUAA4GBAGUV5B+USHvaRa8k
+ gCNJSuNpo6ARlv0ekrk8bbdNRBiEUdCMyoGJFfuM9K0zybX6Vr25wai3nvaog294
+ Vx/jWjX2g5SDbjItH6VGy6C9GCGf1A07VxFRCfJn5tA9HuJjPKiE+g/BmrV5N4Ce
+ alzFxPHWYkNOzoRU8qI7OqUai1kL""",
+ """MIICITCCAYoCAQEwDQYJKoZIhvcNAQELBQAwWDELMAkGA1UEBhMCenoxCzAJBgNV
+ BAgMAnp6MQ0wCwYDVQQHDAR6enp6MQ4wDAYDVQQKDAVaenp6ejEOMAwGA1UECwwF
+ Wnp6enoxDTALBgNVBAMMBHRlc3QwIBcNMTkwNDEyMTk1MDM0WhgPMzAxODA4MTMx
+ OTUwMzRaMFgxCzAJBgNVBAYTAnp6MQswCQYDVQQIDAJ6ejENMAsGA1UEBwwEenp6
+ ejEOMAwGA1UECgwFWnp6enoxDjAMBgNVBAsMBVp6enp6MQ0wCwYDVQQDDAR0ZXN0
+ MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDjW0kJM+4baWKtvO24ZsGXNvNK
+ KkwTMz7OW5Z6BRqhSOq2WA0c5NCpMk6rD8Z2OTFEolPojEjf8dVyd/Ds/hrjFKQv
+ 8wQgbdXLN51YTIsgd6h+hBJO+vzhl0PT4aT7M0JKo5ALtS6qk4tsworW2BnwyvsG
+ SAinwfeWt4t/b1J3kwIDAQABMA0GCSqGSIb3DQEBCwUAA4GBAFtj7WArQQBugmh/
+ KQjjlfTQ5A052QeXfgTyO9vv1S6MRIi7qgiaEv49cGXnJv/TWbySkMKObPMUApjg
+ 6z8PqcxuShew5FCTkNvwhABFPiyu0fUj3e2FEPHfsBu76jz4ugtmhUqjqhzwFY9c
+ tnWRkkl6J0AjM3LnHOSgjNIclDZG"""]
+ for index, item in enumerate(certs):
+ item = item.replace(' ', '').replace('\n', '')
+ certs[index] = item
+ return certs
if __name__ == "__main__":