def test_store_listener_crt(self): l = sample_configs.sample_listener_tuple(tls=True, sni=True) with mock.patch('os.makedirs'): with mock.patch('neutron.common.utils.replace_file'): ret = jinja_cfg._store_listener_crt('/v2/loadbalancers', l, l.default_tls_container) self.assertEqual( '/v2/loadbalancers/sample_listener_id_1/fakeCNM.pem', ret)
def test_store_listener_crt(self): l = sample_configs.sample_listener_tuple(tls=True, sni=True) with mock.patch('os.makedirs'): with mock.patch('neutron.agent.linux.utils.replace_file'): ret = jinja_cfg._store_listener_crt( '/v2/loadbalancers', l, l.default_tls_container) self.assertEqual( '/v2/loadbalancers/sample_listener_id_1/fakeCNM.pem', ret)
def test_process_tls_certificates(self): sl = sample_configs.sample_listener_tuple(tls=True, sni=True) tls = data_models.TLSContainer(primary_cn='fakeCN', certificate='imaCert', private_key='imaPrivateKey', intermediates=['imainter1', 'imainter2']) cert = mock.Mock(spec=cert_manager.Cert) cert.get_private_key.return_value = tls.private_key cert.get_certificate.return_value = tls.certificate cert.get_intermediates.return_value = tls.intermediates with mock.patch.object(jinja_cfg, '_map_cert_tls_container') as map, \ mock.patch.object(jinja_cfg, '_store_listener_crt') as store_cert, \ mock.patch.object(cert_parser, 'get_host_names') as get_host_names, \ mock.patch.object(jinja_cfg, 'CERT_MANAGER_PLUGIN') as cert_mgr: map.return_value = tls cert_mgr_mock = mock.Mock(spec=cert_manager.CertManager) cert_mgr_mock.get_cert.return_value = cert cert_mgr.CertManager.return_value = cert_mgr_mock get_host_names.return_value = {'cn': 'fakeCN'} jinja_cfg._process_tls_certificates(sl) # Ensure get_cert is called three times calls_certs = [ mock.call(sl.default_tls_container.id), mock.call('cont_id_2'), mock.call('cont_id_3')] cert_mgr_mock.get_cert.call_args_list == calls_certs # Ensure store_cert is called three times calls_ac = [mock.call('/v2/', 'sample_listener_id_1', tls), mock.call('/v2/', 'sample_listener_id_1', tls), mock.call('/v2/', 'sample_listener_id_1', tls)] store_cert.call_args_list == calls_ac
def test_process_tls_certificates(self): sl = sample_configs.sample_listener_tuple(tls=True, sni=True) tls = data_models.TLSContainer( primary_cn='fakeCN', certificate='imaCert', private_key='imaPrivateKey', intermediates=['imainter1', 'imainter2']) cert = mock.Mock(spec=cert_manager.Cert) cert.get_private_key.return_value = tls.private_key cert.get_certificate.return_value = tls.certificate cert.get_intermediates.return_value = tls.intermediates with contextlib.nested( mock.patch.object(jinja_cfg, '_map_cert_tls_container'), mock.patch.object(jinja_cfg, '_store_listener_crt'), mock.patch.object(cert_parser, 'get_host_names'), mock.patch.object(jinja_cfg, 'CERT_MANAGER_PLUGIN')) as (map, store_cert, get_host_names, cert_mgr): map.return_value = tls cert_mgr_mock = mock.Mock(spec=cert_manager.CertManager) cert_mgr_mock.get_cert.return_value = cert cert_mgr.CertManager.return_value = cert_mgr_mock get_host_names.return_value = {'cn': 'fakeCN'} jinja_cfg._process_tls_certificates(sl) # Ensure get_cert is called three times calls_certs = [ mock.call(sl.default_tls_container.id), mock.call('cont_id_2'), mock.call('cont_id_3') ] cert_mgr_mock.get_cert.call_args_list == calls_certs # Ensure store_cert is called three times calls_ac = [ mock.call('/v2/', 'sample_listener_id_1', tls), mock.call('/v2/', 'sample_listener_id_1', tls), mock.call('/v2/', 'sample_listener_id_1', tls) ] store_cert.call_args_list == calls_ac
def test_process_tls_certificates(self): sl = sample_configs.sample_listener_tuple(tls=True, sni=True) tls = data_models.TLSContainer( primary_cn="fakeCN", certificate="imaCert", private_key="imaPrivateKey", intermediates=["imainter1", "imainter2"], ) cert = mock.Mock(spec=cert_manager.Cert) cert.get_private_key.return_value = tls.private_key cert.get_certificate.return_value = tls.certificate cert.get_intermediates.return_value = tls.intermediates with contextlib.nested( mock.patch.object(jinja_cfg, "_map_cert_tls_container"), mock.patch.object(jinja_cfg, "_store_listener_crt"), mock.patch.object(cert_parser, "get_host_names"), mock.patch.object(jinja_cfg, "CERT_MANAGER_PLUGIN"), ) as (map, store_cert, get_host_names, cert_mgr): map.return_value = tls cert_mgr_mock = mock.Mock(spec=cert_manager.CertManager) cert_mgr_mock.get_cert.return_value = cert cert_mgr.CertManager.return_value = cert_mgr_mock get_host_names.return_value = {"cn": "fakeCN"} jinja_cfg._process_tls_certificates(sl) # Ensure get_cert is called three times calls_certs = [mock.call(sl.default_tls_container.id), mock.call("cont_id_2"), mock.call("cont_id_3")] cert_mgr_mock.get_cert.call_args_list == calls_certs # Ensure store_cert is called three times calls_ac = [ mock.call("/v2/", "sample_listener_id_1", tls), mock.call("/v2/", "sample_listener_id_1", tls), mock.call("/v2/", "sample_listener_id_1", tls), ] store_cert.call_args_list == calls_ac
def test_transform_listener(self): in_listener = sample_configs.sample_listener_tuple() ret = jinja_cfg._transform_listener(in_listener, '/v2') self.assertEqual(sample_configs.RET_LISTENER, ret)