def test_find_elb_call_sequence(self, mock_call): self.maxDiff = None mock_call.side_effect = [ responses.elb_describe_load_balancers, responses.elb_describe_tags, ] expected = responses.elb_result self.assertDictEqual(expected, VirgaClient.find_elb({'name': 'my-elb'}))
def test_find_certificate_no_domain_found(self, mock_call): mock_call.side_effect = [{ 'CertificateSummaryList': [{ 'DomainName': 'any-domain.it' }] }, IndexError()] self.assertIsNone( VirgaClient.find_certificate({'domain_name': 'any-domain.it'}))
def test_find_certificate_expected_bahaviour(self, mock_call): mock_call.side_effect = [ responses.acm_certificate_list, fixture('certificate.json', get_json=True) ] expected = responses.acm_result_find_certificate self.assertDictEqual( expected, VirgaClient.find_certificate({'domain_name': 'my.any-domain.com'}))
def test_find_elbv2_call_sequence(self, mock_call): mock_call.side_effect = [ responses.elbv2_describe_load_balancers, responses.elbv2_describe_load_balancer_attributes, responses.elbv2_describe_listeners, responses.elbv2_describe_target_groups, responses.elbv2_describe_target_group_attributes, responses.elbv2_describe_tags, ] expected = responses.elbv2_result self.assertDictEqual(expected, VirgaClient.find_elbv2({'name': 'my-elbv2'}))
def client(self, resource_definition: dict, resource_object: dict) -> dict: """ Entry-point for calling a client. If the client is virga searches for the custom method. If the client is NOT virga searches for the boto3 definition. :param resource_definition: Section definition :param resource_object: Object filter :return: Response from AWS """ if resource_definition['client'] == 'virga': client = VirgaClient() return getattr(client, resource_definition['action'])(resource_object) client = boto3.client(resource_definition['client']) formatted_filter = self.format_filter(resource_definition, resource_object) return getattr(client, resource_definition['action'])(**formatted_filter)
def test_find_certificate_no_certificates_found(self, mock_call): mock_call.side_effect = [{}, {}] self.assertIsNone( VirgaClient.find_certificate({'domain_name': 'any-domain.it'}))
def test_find_elb_key_error(self, mock_call): mock_call.side_effect = KeyError() self.assertIsNone(VirgaClient.find_elb({'name': 'my-elb'}))
def test_find_elbv2_index_error(self, mock_call): mock_call.side_effect = IndexError() self.assertIsNone(VirgaClient.find_elbv2({'name': 'my-elbv2'}))
def test_find_certificate_domain_not_found(self, mock_list_certificates): mock_list_certificates.return_value = {'CertificateSummaryList': []} self.assertIsNone( VirgaClient.find_certificate({'domain_name': 'my.any-domain.com'}))