def test_metrics_rewrite_simple(): clause = { "type": "metrics", "name": "CPUUtilization", "days": 4, "period": 86400, "value": 30, "op": "less-than", } expected = ( 'resource.get_metrics(' '{"MetricName": "CPUUtilization", "Statistic": "Average", ' '"StartTime": now - duration("4d"), "EndTime": now, "Period": duration("1d")})' '.exists(m, m < 30)') assert C7N_Rewriter.type_metrics_rewrite(sentinel.resource, clause) == expected
def test_metrics_rewrite_missing_value(): clause = { "type": "metrics", "name": "RequestCount", "statistics": "Sum", "days": 7, "value": 7, "op": "less-than", "missing-value": 0, } expected = ( 'resource.get_metrics(' '{"MetricName": "RequestCount", "Statistic": "Sum", ' '"StartTime": now - duration("7d"), "EndTime": now, "Period": duration("7d")})' '.map(m, m == null ? 0 : m)' '.exists(m, m < 7)') assert C7N_Rewriter.type_metrics_rewrite(sentinel.resource, clause) == expected