def test_partner_checks(self): """Test the checks for the partner on initialization.""" with self.assertRaises(ImproperlyConfigured): as2.Partner("a partner", digest_alg="xyz") with self.assertRaises(ImproperlyConfigured): as2.Partner("a partner", enc_alg="xyz") with self.assertRaises(ImproperlyConfigured): as2.Partner("a partner", mdn_mode="xyz") with self.assertRaises(ImproperlyConfigured): as2.Partner("a partner", mdn_digest_alg="xyz")
def test_verify_certificate(self): """ Test case where we have try to load an expired cert """ # First test with a certificate with invalid root cert_path = os.path.join(TEST_DIR, 'verify_cert_test1.pem') with open(cert_path, 'rb') as cert_file: try: as2.Partner( as2_name='some_partner', verify_cert=cert_file.read() ) except as2.AS2Exception as e: self.assertIn( 'unable to get local issuer certificate', str(e)) # Test with an expired certificate cert_path = os.path.join(TEST_DIR, 'verify_cert_test2.cer') with open(cert_path, 'rb') as cert_file: try: as2.Partner( as2_name='some_partner', verify_cert=cert_file.read() ) except as2.AS2Exception as e: self.assertIn( 'certificate has expired', str(e)) # Test with a chain certificate cert_path = os.path.join(TEST_DIR, 'verify_cert_test3.pem') with open(cert_path, 'rb') as cert_file: try: as2.Partner( as2_name='some_partner', verify_cert=cert_file.read() ) except as2.AS2Exception as e: self.assertIn( 'unable to get local issuer certificate', str(e)) # Test chain certificate with the ca cert_ca_path = os.path.join(TEST_DIR, 'verify_cert_test3.ca') with open(cert_path, 'rb') as cert_file: with open(cert_ca_path, 'rb') as cert_ca_file: try: as2.Partner( as2_name='some_partner', verify_cert=cert_file.read(), verify_cert_ca=cert_ca_file.read() ) except as2.AS2Exception as e: self.fail('Failed to load chain certificate: %s' % e)
def test_message_checks(self): """Test the checks and other features of Message.""" msg = as2.Message() assert msg.content == "" assert msg.headers == {} assert msg.headers_str == b"" msg.payload = message.Message() msg.payload.set_payload(b"data") assert msg.content == b"data" org = as2.Organization(as2_name="AS2 Server") partner = as2.Partner(as2_name="AS2 Partner", sign=True) msg = as2.Message(sender=org, receiver=partner) with self.assertRaises(ImproperlyConfigured): msg.build(b"data") msg.receiver.sign = False msg.receiver.encrypt = True with self.assertRaises(ImproperlyConfigured): msg.build(b"data") msg.receiver.encrypt = False msg.receiver.mdn_mode = "ASYNC" with self.assertRaises(ImproperlyConfigured): msg.build(b"data") msg.sender.mdn_url = "http://localhost/pyas2/as2receive" msg.build(b"data")
def setUp(self): self.org = as2.Organization(as2_name='some_organization', sign_key=self.private_key, sign_key_pass='******', decrypt_key=self.private_key, decrypt_key_pass='******') self.partner = as2.Partner(as2_name='some_partner', verify_cert=self.public_key, encrypt_cert=self.public_key)
def setUp(self): self.org = as2.Organization( as2_name="some_organization", sign_key=self.private_key, sign_key_pass="******", decrypt_key=self.private_key, decrypt_key_pass="******", ) self.partner = as2.Partner( as2_name="some_partner", verify_cert=self.public_key, encrypt_cert=self.public_key, )
def setUp(self): self.org = as2.Organization(as2_name='pyas2lib', sign_key=self.private_key, sign_key_pass='******', decrypt_key=self.private_key, decrypt_key_pass='******') self.partner = as2.Partner(as2_name='pyas2idev', verify_cert=self.oldpyas2_public_key, encrypt_cert=self.oldpyas2_public_key, mdn_mode=as2.SYNCHRONOUS_MDN, mdn_digest_alg='sha256') self.out_message = None
def setUp(self): self.org = as2.Organization( as2_name="pyas2lib", sign_key=self.private_key, sign_key_pass="******", decrypt_key=self.private_key, decrypt_key_pass="******", ) self.partner = as2.Partner( as2_name="mecas2", verify_cert=self.mecas2_public_key, encrypt_cert=self.mecas2_public_key, mdn_mode=as2.SYNCHRONOUS_MDN, mdn_digest_alg="sha256", ) self.out_message = None
def setUp(self): self.org = as2.Organization( as2_name="AS2 Server", sign_key=self.oldpyas2_private_key, sign_key_pass="******", decrypt_key=self.oldpyas2_private_key, decrypt_key_pass="******", ) self.partner = as2.Partner( as2_name="Sterling B2B Integrator", verify_cert=self.sb2bi_public_key, verify_cert_ca=self.sb2bi_public_ca, encrypt_cert=self.sb2bi_public_key, encrypt_cert_ca=self.sb2bi_public_ca, ) self.partner.load_verify_cert() self.partner.load_encrypt_cert()