Exemple #1
0
 def test_query_invalid_statistics(self, boto3, config, query_dict,
                                   response):
     query_dict.update({'statistics': 'foo'})
     query = CWDataSource.METRIC_QUERY_CLS(**query_dict)
     cw = CWDataSource(config)
     with pytest.raises(InvalidMetricQuery):
         datapoints = cw.datapoints(query)
Exemple #2
0
    def test_query_maxdatapoints(self, boto3, config, query_dict):
        query = CWDataSource.METRIC_QUERY_CLS(**query_dict)
        cw = CWDataSource(config)
        datapoints = cw.datapoints(query, maxdatapoints=100)

        boto3.session.Session.return_value.client.return_value.\
            get_metric_statistics.assert_called_with(
                Namespace='AWS/EC2', MetricName='CPUUtillization',
                StartTime=datetime.strptime(query.since, '%Y-%m-%dT%H:%M:%S'),
                EndTime=datetime.strptime(query.until, '%Y-%m-%dT%H:%M:%S'), Period=480,
                Dimensions=[{'Name': 'AutoScalingGroupName', 'Value': 'foo'}],
                Statistics=['Average']
            )
Exemple #3
0
    def test_query_maxdatapoints(self, boto3, config, query_dict):
        query = CWDataSource.METRIC_QUERY_CLS(**query_dict)
        cw = CWDataSource(config)
        datapoints = cw.datapoints(query, maxdatapoints=100)

        boto3.session.Session.return_value.client.return_value.get_metric_statistics.assert_called_with(
            Namespace="AWS/EC2",
            MetricName="CPUUtillization",
            StartTime=datetime.strptime(query.since, "%Y-%m-%dT%H:%M:%S"),
            EndTime=datetime.strptime(query.until, "%Y-%m-%dT%H:%M:%S"),
            Period=480,
            Dimensions=[{"Name": "AutoScalingGroupName", "Value": "foo"}],
            Statistics=["Average"],
        )
Exemple #4
0
    def test_query(self, boto3, config, query_dict, response):
        query = CWDataSource.METRIC_QUERY_CLS(**query_dict)
        boto3.session.Session.return_value.client.return_value.\
            get_metric_statistics.return_value = response
        cw = CWDataSource(config)
        datapoints = cw.datapoints(query)
        assert len(datapoints) == len(response['Datapoints'])
        for idx, i in enumerate(datapoints):
            assert i[0] == response['Datapoints'][idx]['Average']
            assert i[0] == response['Datapoints'][idx]['Average']

        boto3.session.Session.return_value.client.return_value.\
            get_metric_statistics.assert_called_with(
                Namespace='AWS/EC2', MetricName='CPUUtillization',
                StartTime=datetime.strptime(query.since, '%Y-%m-%dT%H:%M:%S'),
                EndTime=datetime.strptime(query.until, '%Y-%m-%dT%H:%M:%S'), Period=60,
                Dimensions=[{'Name': 'AutoScalingGroupName', 'Value': 'foo'}],
                Statistics=['Average']
            )
Exemple #5
0
    def test_query(self, boto3, config, query_dict, response):
        query = CWDataSource.METRIC_QUERY_CLS(**query_dict)
        boto3.session.Session.return_value.client.return_value.get_metric_statistics.return_value = response
        cw = CWDataSource(config)
        datapoints = cw.datapoints(query)
        assert len(datapoints) == len(response["Datapoints"])
        for idx, i in enumerate(datapoints):
            assert i[0] == response["Datapoints"][idx]["Average"]
            assert i[0] == response["Datapoints"][idx]["Average"]

        boto3.session.Session.return_value.client.return_value.get_metric_statistics.assert_called_with(
            Namespace="AWS/EC2",
            MetricName="CPUUtillization",
            StartTime=datetime.strptime(query.since, "%Y-%m-%dT%H:%M:%S"),
            EndTime=datetime.strptime(query.until, "%Y-%m-%dT%H:%M:%S"),
            Period=60,
            Dimensions=[{"Name": "AutoScalingGroupName", "Value": "foo"}],
            Statistics=["Average"],
        )
Exemple #6
0
 def test_query_invalid_statistics(self, boto3, config, query_dict, response):
     query_dict.update({"statistics": "foo"})
     query = CWDataSource.METRIC_QUERY_CLS(**query_dict)
     cw = CWDataSource(config)
     with pytest.raises(InvalidMetricQuery):
         datapoints = cw.datapoints(query)