def test_put_metric_data_invalid_parameter(aws_client): time_stamp = datetime.today() client = MagicMock() aws_client.return_value = client client.put_metric_data.side_effect = mock_client_error( op="PutMetricData", Code="InvalidParameterValueException", Message="An error occurred when calling PutMetricData", ) with pytest.raises(FailedActivity) as x: put_metric_data( namespace="TestMetricNamespace", metric_data=[{ "MetricName": "MemoryUtilization", "Dimensions": [{ "Name": "InstanceId", "Value": "i-000000000000" }], "Timestamp": time_stamp, "Value": 85.568945236, "Unit": "InvalidUnit", "StorageResolution": 60, }], ) assert "An error occurred when calling PutMetricData" in str(x)
def test_put_metric_data_invalid_parameter(aws_client): time_stamp = datetime.today() client = MagicMock() aws_client.return_value = client client.put_metric_data.side_effect = mock_client_error( op='PutMetricData', Code='InvalidParameterValueException', Message='An error occurred when calling PutMetricData') with pytest.raises(FailedActivity) as x: put_metric_data(namespace='TestMetricNamespace', metric_data=[{ 'MetricName': 'MemoryUtilization', 'Dimensions': [{ 'Name': 'InstanceId', 'Value': 'i-000000000000' }], 'Timestamp': time_stamp, 'Value': 85.568945236, 'Unit': 'InvalidUnit', 'StorageResolution': 60 }]) assert 'An error occurred when calling PutMetricData' in str(x)
def test_put_metric_data_valid_multi_datapoints(aws_client): time_stamp = datetime.today() client = MagicMock() aws_client.return_value = client client.put_metric_data.return_value = None put_metric_data( namespace="TestMetricNamespace", metric_data=[{ "MetricName": "MemoryUtilization", "Dimensions": [{ "Name": "InstanceId", "Value": "i-000000000000" }], "Timestamp": time_stamp, "Values": [5.5, 10.2, 6.5], "Counts": [1, 3, 2.6], "Unit": "Percent", "StorageResolution": 60, }], ) client.put_metric_data.assert_called_with( Namespace="TestMetricNamespace", MetricData=[{ "MetricName": "MemoryUtilization", "Dimensions": [{ "Name": "InstanceId", "Value": "i-000000000000" }], "Timestamp": time_stamp, "Values": [5.5, 10.2, 6.5], "Counts": [1, 3, 2.6], "Unit": "Percent", "StorageResolution": 60, }], )
def test_put_metric_data_valid_multi_datapoints(aws_client): time_stamp = datetime.today() client = MagicMock() aws_client.return_value = client client.put_metric_data.return_value = None put_metric_data(namespace='TestMetricNamespace', metric_data=[{ 'MetricName': 'MemoryUtilization', 'Dimensions': [{ 'Name': 'InstanceId', 'Value': 'i-000000000000' }], 'Timestamp': time_stamp, 'Values': [5.5, 10.2, 6.5], 'Counts': [1, 3, 2.6], 'Unit': 'Percent', 'StorageResolution': 60 }]) client.put_metric_data.assert_called_with(Namespace='TestMetricNamespace', MetricData=[{ 'MetricName': 'MemoryUtilization', 'Dimensions': [{ 'Name': 'InstanceId', 'Value': 'i-000000000000' }], 'Timestamp': time_stamp, 'Values': [5.5, 10.2, 6.5], 'Counts': [1, 3, 2.6], 'Unit': 'Percent', 'StorageResolution': 60 }])
def test_put_metric_data_valid_single_datapoint(aws_client): client = MagicMock() aws_client.return_value = client client.put_metric_data.return_value = None time_stamp_1 = datetime.today() - timedelta(minutes=2) time_stamp_2 = datetime.today() put_metric_data( namespace="TestMetricNamespace", metric_data=[ { "MetricName": "MemoryUtilization", "Dimensions": [{ "Name": "InstanceId", "Value": "i-000000000000" }], "Timestamp": time_stamp_1, "Value": 85.568945236, "Unit": "Percent", "StorageResolution": 60, }, { "MetricName": "MemoryUtilization", "Dimensions": [{ "Name": "InstanceId", "Value": "i-000000000000" }], "Timestamp": time_stamp_2, "Value": 89.6854, "Unit": "Percent", "StorageResolution": 60, }, ], ) client.put_metric_data.assert_called_with( Namespace="TestMetricNamespace", MetricData=[ { "MetricName": "MemoryUtilization", "Dimensions": [{ "Name": "InstanceId", "Value": "i-000000000000" }], "Timestamp": time_stamp_1, "Value": 85.568945236, "Unit": "Percent", "StorageResolution": 60, }, { "MetricName": "MemoryUtilization", "Dimensions": [{ "Name": "InstanceId", "Value": "i-000000000000" }], "Timestamp": time_stamp_2, "Value": 89.6854, "Unit": "Percent", "StorageResolution": 60, }, ], )
def test_put_metric_data_valid_single_datapoint(aws_client): client = MagicMock() aws_client.return_value = client client.put_metric_data.return_value = None time_stamp_1 = datetime.today() - timedelta(minutes=2) time_stamp_2 = datetime.today() put_metric_data(namespace='TestMetricNamespace', metric_data=[{ 'MetricName': 'MemoryUtilization', 'Dimensions': [{ 'Name': 'InstanceId', 'Value': 'i-000000000000' }], 'Timestamp': time_stamp_1, 'Value': 85.568945236, 'Unit': 'Percent', 'StorageResolution': 60 }, { 'MetricName': 'MemoryUtilization', 'Dimensions': [{ 'Name': 'InstanceId', 'Value': 'i-000000000000' }], 'Timestamp': time_stamp_2, 'Value': 89.6854, 'Unit': 'Percent', 'StorageResolution': 60 }]) client.put_metric_data.assert_called_with(Namespace='TestMetricNamespace', MetricData=[{ 'MetricName': 'MemoryUtilization', 'Dimensions': [{ 'Name': 'InstanceId', 'Value': 'i-000000000000' }], 'Timestamp': time_stamp_1, 'Value': 85.568945236, 'Unit': 'Percent', 'StorageResolution': 60 }, { 'MetricName': 'MemoryUtilization', 'Dimensions': [{ 'Name': 'InstanceId', 'Value': 'i-000000000000' }], 'Timestamp': time_stamp_2, 'Value': 89.6854, 'Unit': 'Percent', 'StorageResolution': 60 }])