ref: 35abd179e2e9d2dc25706e1922f4084bbad92533
parent: 8d8fa7222f11f4003fa43c0914e9f66d276016a4
author: Bjørn Erik Pedersen <[email protected]>
date: Fri Nov 20 06:53:25 EST 2015
Add time.Time support in ge, gt, le, lt Fixes #1593
--- a/tpl/template_funcs.go
+++ b/tpl/template_funcs.go
@@ -112,6 +112,11 @@
str := av.String()
leftStr = &str
}
+ case reflect.Struct:
+ switch av.Type() {
+ case timeType:
+ left = float64(timeUnix(av))
+ }
}
bv := reflect.ValueOf(b)
@@ -129,7 +134,11 @@
str := bv.String()
rightStr = &str
}
-
+ case reflect.Struct:
+ switch bv.Type() {
+ case timeType:
+ right = float64(timeUnix(bv))
+ }
}
switch {
--- a/tpl/template_funcs_test.go
+++ b/tpl/template_funcs_test.go
@@ -5,6 +5,7 @@
"encoding/base64"
"errors"
"fmt"
+ "github.com/spf13/cast"
"html/template"
"path"
"reflect"
@@ -81,6 +82,9 @@
{"8", "5", 1},
{"5", "0001", 1},
{[]int{100, 99}, []int{1, 2, 3, 4}, -1},
+ {cast.ToTime("2015-11-20"), cast.ToTime("2015-11-20"), 0},
+ {cast.ToTime("2015-11-19"), cast.ToTime("2015-11-20"), -1},
+ {cast.ToTime("2015-11-20"), cast.ToTime("2015-11-19"), 1},
} {
result := funcUnderTest(this.left, this.right)
success := false