def test_get_ordered_certificate( self, mock_request_certificate, mock_finalize_authorizations, mock_get_authorizations, mock_dns_provider_service_p, mock_dns_provider_service, mock_authorization_service, mock_acme, ): mock_client = Mock() mock_acme.return_value = (mock_client, "") mock_request_certificate.return_value = ("pem_certificate", "chain") mock_cert = Mock() mock_cert.external_id = 1 provider = plugin.ACMEIssuerPlugin() provider.get_dns_provider = Mock() result = provider.get_ordered_certificate(mock_cert) self.assertEqual(result, { "body": "pem_certificate", "chain": "chain", "external_id": "1" })
def test_get_ordered_certificates( self, mock_request_certificate, mock_finalize_authorizations, mock_get_authorizations, mock_dns_provider_service, mock_authorization_service, mock_current_app, mock_acme, ): mock_client = Mock() mock_acme.return_value = (mock_client, "") mock_request_certificate.return_value = ("pem_certificate", "chain") mock_cert = Mock() mock_cert.external_id = 1 mock_cert2 = Mock() mock_cert2.external_id = 2 provider = plugin.ACMEIssuerPlugin() provider.get_dns_provider = Mock() result = provider.get_ordered_certificates([mock_cert, mock_cert2]) self.assertEqual(len(result), 2) self.assertEqual( result[0]["cert"], {"body": "pem_certificate", "chain": "chain", "external_id": "1"}, ) self.assertEqual( result[1]["cert"], {"body": "pem_certificate", "chain": "chain", "external_id": "2"}, )
def test_create_certificate( self, mock_authorization_service, mock_request_certificate, mock_finalize_authorizations, mock_get_authorizations, mock_dns_provider_service, mock_acme, ): provider = plugin.ACMEIssuerPlugin() mock_authority = Mock() mock_client = Mock() mock_acme.return_value = (mock_client, "") mock_dns_provider = Mock() mock_dns_provider.credentials = '{"account_id": 1}' mock_dns_provider.provider_type = "route53" mock_dns_provider_service.get.return_value = mock_dns_provider issuer_options = { "authority": mock_authority, "dns_provider": mock_dns_provider, "common_name": "test.netflix.net", } csr = "123" mock_request_certificate.return_value = ("pem_certificate", "chain") result = provider.create_certificate(csr, issuer_options) assert result issuer_options["create_immediately"] = True immediate_result = provider.create_certificate(csr, issuer_options) assert immediate_result
def test_get_ordered_certificates(self, mock_request_certificate, mock_finalize_authorizations, mock_get_authorizations, mock_dns_provider_service, mock_authorization_service, mock_current_app, mock_acme): mock_client = Mock() mock_acme.return_value = (mock_client, "") mock_request_certificate.return_value = ("pem_certificate", "chain") mock_cert = Mock() mock_cert.external_id = 1 mock_cert2 = Mock() mock_cert2.external_id = 2 provider = plugin.ACMEIssuerPlugin() provider.get_dns_provider = Mock() result = provider.get_ordered_certificates([mock_cert, mock_cert2]) self.assertEqual(len(result), 2) self.assertEqual(result[0]['cert'], { 'body': 'pem_certificate', 'chain': 'chain', 'external_id': '1' }) self.assertEqual(result[1]['cert'], { 'body': 'pem_certificate', 'chain': 'chain', 'external_id': '2' })
def test_get_dns_provider(self, mock_current_app_cloudflare, mock_current_app_dyn, mock_current_app): provider = plugin.ACMEIssuerPlugin() route53 = provider.get_dns_provider("route53") assert route53 cloudflare = provider.get_dns_provider("cloudflare") assert cloudflare dyn = provider.get_dns_provider("dyn") assert dyn
def setUp(self, mock_dns_provider_service): self.ACMEIssuerPlugin = plugin.ACMEIssuerPlugin() self.acme = plugin.AcmeHandler() mock_dns_provider = Mock() mock_dns_provider.name = "cloudflare" mock_dns_provider.credentials = "{}" mock_dns_provider.provider_type = "cloudflare" self.acme.dns_providers_for_domain = { "www.test.com": [mock_dns_provider], "test.fakedomain.net": [mock_dns_provider], }
def setUp(self, mock_dns_provider_service): self.ACMEIssuerPlugin = plugin.ACMEIssuerPlugin() self.acme = plugin.AcmeDnsHandler() mock_dns_provider = Mock() mock_dns_provider.name = "cloudflare" mock_dns_provider.credentials = "{}" mock_dns_provider.provider_type = "cloudflare" self.acme.dns_providers_for_domain = { "www.test.com": [mock_dns_provider], "test.fakedomain.net": [mock_dns_provider], } # Creates a new Flask application for a test duration. In python 3.8, manual push of application context is # needed to run tests in dev environment without getting error 'Working outside of application context'. _app = Flask('lemur_test_acme') self.ctx = _app.app_context() assert self.ctx self.ctx.push()
def setUp(self): self.ACMEIssuerPlugin = plugin.ACMEIssuerPlugin()