|
|
|
@ -1,9 +1,13 @@ |
|
|
|
|
package cloudwatch |
|
|
|
|
|
|
|
|
|
import ( |
|
|
|
|
"context" |
|
|
|
|
"testing" |
|
|
|
|
"time" |
|
|
|
|
|
|
|
|
|
"github.com/grafana/grafana/pkg/models" |
|
|
|
|
"github.com/grafana/grafana/pkg/tsdb" |
|
|
|
|
|
|
|
|
|
"github.com/aws/aws-sdk-go/aws" |
|
|
|
|
"github.com/aws/aws-sdk-go/service/cloudwatch" |
|
|
|
|
"github.com/grafana/grafana/pkg/components/null" |
|
|
|
@ -14,6 +18,24 @@ import ( |
|
|
|
|
func TestCloudWatch(t *testing.T) { |
|
|
|
|
Convey("CloudWatch", t, func() { |
|
|
|
|
|
|
|
|
|
Convey("executeQuery", func() { |
|
|
|
|
e := &CloudWatchExecutor{ |
|
|
|
|
DataSource: &models.DataSource{ |
|
|
|
|
JsonData: simplejson.New(), |
|
|
|
|
}, |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
Convey("End time before start time should result in error", func() { |
|
|
|
|
_, err := e.executeQuery(context.Background(), &CloudWatchQuery{}, &tsdb.TsdbQuery{TimeRange: tsdb.NewTimeRange("now-1h", "now-2h")}) |
|
|
|
|
So(err.Error(), ShouldEqual, "Invalid time range: Start time must be before end time") |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
Convey("End time equals start time should result in error", func() { |
|
|
|
|
_, err := e.executeQuery(context.Background(), &CloudWatchQuery{}, &tsdb.TsdbQuery{TimeRange: tsdb.NewTimeRange("now-1h", "now-1h")}) |
|
|
|
|
So(err.Error(), ShouldEqual, "Invalid time range: Start time must be before end time") |
|
|
|
|
}) |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
Convey("can parse cloudwatch json model", func() { |
|
|
|
|
json := ` |
|
|
|
|
{ |
|
|
|
|