コード例 #1
0
ファイル: test_powerdns.py プロジェクト: thousandeyes/lemur
    def test_create_txt_record_append(self, mock_current_app):
        domain = "_acme_challenge.test.example.com"
        zone = "test.example.com"
        token = "ABCDEFGHIJ"
        account_number = "1234567890"
        change_id = (domain, token)
        powerdns._check_conf = Mock()
        cur_token = "123456"
        cur_records = [
            powerdns.Record({
                'name': domain,
                'content': f"\"{cur_token}\"",
                'disabled': False
            })
        ]
        powerdns._get_txt_records = Mock(return_value=cur_records)
        powerdns._get_zone_name = Mock(return_value=zone)
        mock_current_app.logger.debug = Mock()
        mock_current_app.config.get = Mock(return_value="localhost")
        powerdns._patch = Mock()
        log_data = {
            "function": "create_txt_record",
            "fqdn": domain,
            "token": token,
            "message": "TXT record(s) successfully created"
        }
        expected_path = f"/api/v1/servers/localhost/zones/test.example.com."
        expected_payload = {
            "rrsets": [{
                "name":
                domain + ".",
                "type":
                "TXT",
                "ttl":
                300,
                "changetype":
                "REPLACE",
                "records": [{
                    "content": f"\"{token}\"",
                    "disabled": False
                }, {
                    "content": f"\"{cur_token}\"",
                    "disabled": False
                }],
                "comments": []
            }]
        }

        result = powerdns.create_txt_record(domain, token, account_number)
        mock_current_app.logger.debug.assert_called_with(log_data)
        powerdns._patch.assert_called_with(expected_path, expected_payload)
        self.assertEqual(result, change_id)
コード例 #2
0
 def test_create_txt_record(self, mock_current_app):
     domain = "_acme_challenge.test.example.com"
     zone = "test.example.com"
     token = "ABCDEFGHIJ"
     account_number = "1234567890"
     change_id = (domain, token)
     powerdns._check_conf = Mock()
     powerdns._get_zone_name = Mock(return_value=zone)
     mock_current_app.logger.debug = Mock()
     mock_current_app.config.get = Mock(return_value="localhost")
     powerdns._patch = Mock()
     log_data = {
         "function": "create_txt_record",
         "fqdn": domain,
         "token": token,
         "message": "TXT record successfully created"
     }
     result = powerdns.create_txt_record(domain, token, account_number)
     mock_current_app.logger.debug.assert_called_with(log_data)
     self.assertEqual(result, change_id)