|
|
@@ -132,6 +132,26 @@ func TestMacroEngine(t *testing.T) {
|
|
|
So(sql, ShouldEqual, fmt.Sprintf("select time_column >= %d AND time_column <= %d", from.Unix(), to.Unix()))
|
|
|
})
|
|
|
|
|
|
+ Convey("interpolate __unixEpochNanoFilter function", func() {
|
|
|
+ sql, err := engine.Interpolate(query, timeRange, "select $__unixEpochNanoFilter(time_column)")
|
|
|
+ So(err, ShouldBeNil)
|
|
|
+
|
|
|
+ So(sql, ShouldEqual, fmt.Sprintf("select time_column >= %d AND time_column <= %d", from.UnixNano(), to.UnixNano()))
|
|
|
+ })
|
|
|
+ Convey("interpolate __unixEpochNanoFrom function", func() {
|
|
|
+ sql, err := engine.Interpolate(query, timeRange, "select $__unixEpochNanoFrom()")
|
|
|
+ So(err, ShouldBeNil)
|
|
|
+
|
|
|
+ So(sql, ShouldEqual, fmt.Sprintf("select '%d'", from.UnixNano()))
|
|
|
+ })
|
|
|
+
|
|
|
+ Convey("interpolate __unixEpochNanoTo function", func() {
|
|
|
+ sql, err := engine.Interpolate(query, timeRange, "select $__unixEpochNanoTo()")
|
|
|
+ So(err, ShouldBeNil)
|
|
|
+
|
|
|
+ So(sql, ShouldEqual, fmt.Sprintf("select '%d'", to.UnixNano()))
|
|
|
+ })
|
|
|
+
|
|
|
Convey("interpolate __unixEpochGroup function", func() {
|
|
|
|
|
|
sql, err := engine.Interpolate(query, timeRange, "SELECT $__unixEpochGroup(time_column,'5m')")
|
|
|
@@ -163,6 +183,13 @@ func TestMacroEngine(t *testing.T) {
|
|
|
|
|
|
So(sql, ShouldEqual, fmt.Sprintf("select time_column >= %d AND time_column <= %d", from.Unix(), to.Unix()))
|
|
|
})
|
|
|
+
|
|
|
+ Convey("interpolate __unixEpochNanoFilter function", func() {
|
|
|
+ sql, err := engine.Interpolate(query, timeRange, "select $__unixEpochNanoFilter(time_column)")
|
|
|
+ So(err, ShouldBeNil)
|
|
|
+
|
|
|
+ So(sql, ShouldEqual, fmt.Sprintf("select time_column >= %d AND time_column <= %d", from.UnixNano(), to.UnixNano()))
|
|
|
+ })
|
|
|
})
|
|
|
|
|
|
Convey("Given a time range between 1960-02-01 07:00 and 1980-02-03 08:00", func() {
|
|
|
@@ -183,6 +210,13 @@ func TestMacroEngine(t *testing.T) {
|
|
|
|
|
|
So(sql, ShouldEqual, fmt.Sprintf("select time_column >= %d AND time_column <= %d", from.Unix(), to.Unix()))
|
|
|
})
|
|
|
+
|
|
|
+ Convey("interpolate __unixEpochNanoFilter function", func() {
|
|
|
+ sql, err := engine.Interpolate(query, timeRange, "select $__unixEpochNanoFilter(time_column)")
|
|
|
+ So(err, ShouldBeNil)
|
|
|
+
|
|
|
+ So(sql, ShouldEqual, fmt.Sprintf("select time_column >= %d AND time_column <= %d", from.UnixNano(), to.UnixNano()))
|
|
|
+ })
|
|
|
})
|
|
|
})
|
|
|
}
|