"""Unit tests for Datadog connector.""" from unittest.mock import patch from connectors import datadog @patch('connectors.datadog.api') @patch('connectors.datadog.initialize') def test_datadog_connection(mock_datadog_initialize, mock_datadog_api, monkeypatch): """Test datadog_connection context manager.""" monkeypatch.setattr('config.DD_API_KEY', 'abc') monkeypatch.setattr('config.DD_APP_KEY', 'def') with datadog.datadog_connection() as conn: conn.Metric.send(metric='foo', points=1, tags=['foo:bar']) mock_datadog_initialize.assert_called_with(api_key='abc', app_key='def') mock_datadog_api.Metric.send.assert_called_with( metric='foo', points=1, tags=['foo:bar'] ) @patch('connectors.datadog.api') @patch('connectors.datadog.initialize') def test_publish_metric(mock_datadog_initialize, mock_datadog_api, monkeypatch): """Test publish_metric function.""" monkeypatch.setattr('config.ACCOUNT_ID_TO_BACKUP', '123456789012') datadog.publish_metric(metric='foo', value=1) mock_datadog_api.Metric.send.assert_called_with( metric='foo', points=1, tags=[ 'environment:backup', 'service_name:orcd-secrets-manager-secrets', 'account_id:123456789012' ] )