Exemplo n.º 1
0
    def test_get_zone_id(self, get_zone_name_function):
        '''
        Check if it returns right zone id
        Args:
            get_zone_name_function: mock of get_zone_name
        '''
        # mock r53
        r53_mock = Mock()
        r53_connect_result = Mock(name='cf_connect')
        r53_mock.return_value = r53_connect_result
        response = {
            'GetHostedZoneResponse': {
                "HostedZone": {
                    "Id": "/hostedzone/Z1GDM6HEODZI69"
                }
            }
        }
        # get_hosted_zone_by_name is within get_hosted_zone_id()
        mock_config = {'get_hosted_zone_by_name.return_value': response}
        r53_connect_result.configure_mock(**mock_config)
        boto.route53.connect_to_region = r53_mock
        r = r53.R53("profile_name")
        fab_tasks.get_connection = Mock(return_value=r)

        zone_id = fab_tasks.get_zone_id()
        self.assertEqual(zone_id, "Z1GDM6HEODZI69")
Exemplo n.º 2
0
 def test_delete_dns_record(self):
     r53_mock = mock.Mock()
     r53_connect_result = mock.Mock(name='cf_connect')
     r53_mock.return_value = r53_connect_result
     boto.route53.connect_to_region = r53_mock
     r = r53.R53(self.env.aws_profile)
     x = r.delete_dns_record('blah/blah', 'x.y', 'A', '1.1.1.1')
     self.assertTrue(x)
Exemplo n.º 3
0
    def test_get_hosted_zone_id(self):
        r53_mock = mock.Mock()
        r53_connect_result = mock.Mock(name='cf_connect')
        r53_mock.return_value = r53_connect_result
        response = {'GetHostedZoneResponse': {}}
        zone_response = {'HostedZone': {'Id': 'blah/blah'}}
        response['GetHostedZoneResponse'] = zone_response

        mock_config = {'get_hosted_zone_by_name.return_value': response}
        r53_connect_result.configure_mock(**mock_config)
        boto.route53.connect_to_region = r53_mock
        r = r53.R53(self.env.aws_profile)
        x = r.get_hosted_zone_id('blah')
        self.assertEquals(x, 'blah/blah')
Exemplo n.º 4
0
 def test_get_all_resource_records(self):
     r53_mock = mock.Mock()
     r53_connect_result = mock.Mock(name='cf_connect')
     r53_mock.return_value = r53_connect_result
     m = mock.Mock(alias_dns_name='dnsname')
     m.name = 'recordname.dsd.io.'
     m.type = 'A'
     response = [m]
     mock_config = {'get_all_rrsets.return_value': response}
     r53_connect_result.configure_mock(**mock_config)
     boto.route53.connect_to_region = r53_mock
     r = r53.R53("profile_name")
     x = r.get_all_resource_records('dsd.io')
     self.assertTrue(x[0])
Exemplo n.º 5
0
    def test_get_TXT_record(self):
        r53_mock = mock.Mock()
        r53_connect_result = mock.Mock(name='cf_connect')
        r53_mock.return_value = r53_connect_result
        m = mock.Mock(resource_records=['"lollol"'])
        m.name = 'blah.dsd.io.'
        m.type = 'TXT'
        response = [m]

        mock_config = {'get_all_rrsets.return_value': response}
        r53_connect_result.configure_mock(**mock_config)
        boto.route53.connect_to_region = r53_mock
        r = r53.R53(self.env.aws_profile)
        x = r.get_record('dsd.io', 'ASDAKSLDK', 'blah', 'TXT')
        self.assertEquals(x, 'lollol')
Exemplo n.º 6
0
    def test_get_record(self):
        r53_mock = mock.Mock()
        r53_connect_result = mock.Mock(name='cf_connect')
        r53_mock.return_value = r53_connect_result
        m = mock.Mock(alias_dns_name='dnsname')
        m.name = 'recordname.dsd.io.'
        m.type = 'A'
        response = [m]

        mock_config = {'get_all_rrsets.return_value': response}
        r53_connect_result.configure_mock(**mock_config)
        boto.route53.connect_to_region = r53_mock
        r = r53.R53(self.env.aws_profile)
        x = r.get_record('dsd.io', 'ASDAKSLDK', 'recordname', 'A')
        self.assertEquals(x, 'dnsname')
Exemplo n.º 7
0
    def test_hastag(self):
        r53_mock = mock.Mock()
        r53_connect_result = mock.Mock(name='cf_connect')
        r53_mock.return_value = r53_connect_result

        m = mock.Mock(resource_records=['"lollol"'])
        m.name = 'recordname.dsd.io.'
        m.type = 'TXT'
        response = [m]
        mock_config = {'get_all_rrsets.return_value': response}
        r53_connect_result.configure_mock(**mock_config)
        boto.route53.connect_to_region = r53_mock
        r = r53.R53(self.env.aws_profile)
        x = r.get_record("dsd.io", "ASDAKSLDK", "recordname", 'TXT')
        self.assertTrue(x)
Exemplo n.º 8
0
    def test_get_full_record(self):
        record_fqdn = "recordname"
        r53_mock = mock.Mock()
        r53_connect_result = mock.Mock(name='cf_connect')
        r53_mock.return_value = r53_connect_result
        m = mock.Mock(record="unittest")
        m.name = 'recordname.dsd.io.'
        m.type = 'A'
        response = [m]
        mock_config = {'get_all_rrsets.return_value': response}
        r53_connect_result.configure_mock(**mock_config)
        boto.route53.connect_to_region = r53_mock
        r = r53.R53(self.env.aws_profile)

        rrsets = r.get_full_record('dsd.io', 'ASDAKSLDK', record_fqdn, 'A')
        self.assertEqual(rrsets.record, m.record)
Exemplo n.º 9
0
 def r53_mock(self):
     '''
     Mock route53 connection and dsn records
     Returns:
         R53 Mock object
     '''
     r53_mock = Mock()
     r53_connect_result = Mock(name='r53_connect')
     r53_mock.return_value = r53_connect_result
     m1 = Mock(alias_dns_name="unittest1")
     m1.name = 'unittest_elb-12345678.dsd.io.'
     m1.type = 'A'
     m1.alias_hosted_zone_id = "ASDAKSLSA"
     m1.alias_evaluate_target_health = False
     m2 = Mock(resource_records=['"12345678"'])
     m2.name = 'stack.active.unittest-dev.dsd.io.'
     m2.type = 'TXT'
     m2.alias_hosted_zone_id = "ASDAKSLSA"
     m2.alias_evaluate_target_health = False
     m3 = Mock(alias_dns_name="unittest1")
     m3.name = 'unittest_elb.dsd.io.'
     m3.type = 'A'
     m3.alias_hosted_zone_id = "ASDAKSLSA"
     m3.alias_evaluate_target_health = False
     m4 = Mock(resource_records=['"12345678"'])
     m4.name = 'stack.test.unittest-dev.dsd.io.'
     m4.type = 'TXT'
     m4.alias_hosted_zone_id = "ASDAKSLSA"
     m4.alias_evaluate_target_health = False
     m5 = Mock(resource_records=['"12345678"'])
     m5.name = 'deployarn.test.unittest-dev.dsd.io.'
     m5.type = 'TXT'
     m5.alias_hosted_zone_id = "ASDAKSLSA"
     m5.alias_evaluate_target_health = False
     response = [m1, m2, m3, m4, m5]
     mock_config = {
         'update_dns_record.return_value': True,
         'get_all_rrsets.return_value': response,
         'delete_dns_record.return_value': True
     }
     r53_connect_result.configure_mock(**mock_config)
     boto.route53.connect_to_region = r53_mock
     r = r53.R53("profile_name")
     return r
    def r53_mock(self):
        '''
        Mock route53 connection and dsn records
        Returns:
            R53 Mock object
        '''
        r53_mock = Mock()
        r53_connect_result = Mock(name='r53_connect')
        r53_mock.return_value = r53_connect_result
        m1 = Mock(alias_dns_name="unittest1")
        m1.name = 'unittest_elb-12345678.dsd.io.'
        m1.type = 'A'
        m1.alias_hosted_zone_id = "ASDAKSLSA"
        m1.alias_evaluate_target_health = False
        m2 = Mock(resource_records=['"12345678"'])
        m2.name = 'stack.active.unittest-dev.dsd.io.'
        m2.type = 'TXT'
        m2.alias_hosted_zone_id = "ASDAKSLSA"
        m2.alias_evaluate_target_health = False
        m3 = Mock(alias_dns_name="unittest1")
        m3.name = 'unittest_elb.dsd.io.'
        m3.type = 'A'
        m3.alias_hosted_zone_id = "ASDAKSLSA"
        m3.alias_evaluate_target_health = False
        m4 = Mock(resource_records=['"12345678"'])
        m4.name = 'stack.test.unittest-dev.dsd.io.'
        m4.type = 'TXT'
        m4.alias_hosted_zone_id = "ASDAKSLSA"
        m4.alias_evaluate_target_health = False
        m5 = Mock(resource_records=['"12345678"'])
        m5.name = 'deployarn.test.unittest-dev.dsd.io.'
        m5.type = 'TXT'
        m5.alias_hosted_zone_id = "ASDAKSLSA"
        m5.alias_evaluate_target_health = False

        m6 = Mock(resource_records=['"12345678"'])
        m6.name = 'unittest.unittest.dsd.io.'
        m6.type = 'A'
        m6.alias_hosted_zone_id = "Z3P5QSUBK4POTI"
        m6.alias_evaluate_target_health = False
        m7 = Mock(resource_records=['"12345678"'])
        m7.name = 'unittest-12345678.unittest.dsd.io.'
        m7.type = 'A'
        m7.alias_hosted_zone_id = "Z3P5QSUBK4POTI"
        m7.alias_evaluate_target_health = False

        response = [m1, m2, m3, m4, m5, m6, m7]

        hosted_name = {
            "GetHostedZoneResponse": {
                "HostedZone": {
                    "Id": "/hostedzone/Z3P5QSUBK4POTI",
                    "Name": "www.example.com."
                }
            }
        }
        mock_config = {
            'update_dns_record.return_value': True,
            'get_all_rrsets.return_value': response,
            'delete_dns_record.return_value': True,
            'get_hosted_zone_by_name.return_value': hosted_name
        }
        r53_connect_result.configure_mock(**mock_config)
        boto.route53.connect_to_region = r53_mock
        r = r53.R53("profile_name")
        return r