@ -22,7 +22,7 @@ func TestInfluxdbQueryBuilder(t *testing.T) {
tag2 := & Tag { Key : "hostname" , Value : "server2" , Operator : "=" , Condition : "OR" }
queryContext := & tsdb . QueryContext {
TimeRange : tsdb . NewTimeRange ( "now- 5m" , "now" ) ,
TimeRange : tsdb . NewTimeRange ( "5m" , "now" ) ,
}
Convey ( "can build simple query" , func ( ) {
@ -32,7 +32,6 @@ func TestInfluxdbQueryBuilder(t *testing.T) {
Policy : "policy" ,
GroupBy : [ ] * QueryPart { groupBy1 , groupBy2 } ,
Interval : "10s" ,
TimeRange : tsdb . TimeRange { From : "5m" } ,
}
rawQuery , err := builder . Build ( query , queryContext )
@ -47,23 +46,24 @@ func TestInfluxdbQueryBuilder(t *testing.T) {
GroupBy : [ ] * QueryPart { groupBy1 } ,
Tags : [ ] * Tag { tag1 , tag2 } ,
Interval : "5s" ,
TimeRange : tsdb . TimeRange { From : "1h" , To : "now-1m" } ,
}
rawQuery , err := builder . Build ( query , queryContext )
So ( err , ShouldBeNil )
So ( rawQuery , ShouldEqual , ` SELECT mean("value") FROM "cpu" WHERE "hostname" = 'server1' OR "hostname" = 'server2' AND time > now() - 1h and time < now() - 1 m GROUP BY time(10s) ` )
So ( rawQuery , ShouldEqual , ` SELECT mean("value") FROM "cpu" WHERE "hostname" = 'server1' OR "hostname" = 'server2' AND time > now() - 5 m GROUP BY time(10s) ` )
} )
Convey ( "can render time range" , func ( ) {
query := Query { }
Convey ( "render from: 2h to now-1h" , func ( ) {
query := Query { TimeRange : tsdb . TimeRange { From : "2h" , To : "now-1h" } }
So ( renderTimeFilter ( & query ) , ShouldEqual , "time > now() - 2h and time < now() - 1h" )
query := Query { }
queryContext := & tsdb . QueryContext { TimeRange : tsdb . NewTimeRange ( "2h" , "now-1h" ) }
So ( renderTimeFilter ( & query , queryContext ) , ShouldEqual , "time > now() - 2h and time < now() - 1h" )
} )
Convey ( "render from: 10m" , func ( ) {
query := Query { TimeRange : tsdb . TimeRange { From : "10m" } }
So ( renderTimeFilter ( & query ) , ShouldEqual , "time > now() - 10m" )
queryContext := & tsdb . QueryContext { TimeRange : tsdb . NewTimeRange ( "10m" , "now" ) }
So ( renderTimeFilter ( & query , queryContext ) , ShouldEqual , "time > now() - 10m" )
} )
} )
} )