|
|
|
|
@ -5,6 +5,7 @@ import (
|
|
|
|
|
"strconv"
|
|
|
|
|
"testing"
|
|
|
|
|
"time"
|
|
|
|
|
"encoding/json"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func TestConfigTemplateProcess_timestamp(t *testing.T) {
|
|
|
|
|
@ -47,6 +48,39 @@ func TestConfigTemplateProcess_user(t *testing.T) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func TestJsonTemplateProcess_user(t *testing.T) {
|
|
|
|
|
tpl, err := NewConfigTemplate()
|
|
|
|
|
if err != nil {
|
|
|
|
|
t.Fatalf("err: %s", err)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
tpl.UserVars["foo"] = "bar"
|
|
|
|
|
jsonData := make(map[string]interface{})
|
|
|
|
|
jsonData["key"] = map[string]string{
|
|
|
|
|
"key1": "{{user `foo`}}",
|
|
|
|
|
}
|
|
|
|
|
jsonBytes, err := json.MarshalIndent(jsonData, "", " ")
|
|
|
|
|
if err != nil {
|
|
|
|
|
t.Fatalf("err: %s", err)
|
|
|
|
|
}
|
|
|
|
|
var jsonString = string(jsonBytes)
|
|
|
|
|
|
|
|
|
|
jsonString, err = tpl.Process(jsonString, nil)
|
|
|
|
|
if err != nil {
|
|
|
|
|
t.Fatalf("err: %s", err)
|
|
|
|
|
}
|
|
|
|
|
var dat map[string]map[string]interface{}
|
|
|
|
|
if err := json.Unmarshal([]byte(jsonString), &dat); err != nil {
|
|
|
|
|
t.Fatalf("err: %s", err)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if dat["key"]["key1"] != "bar" {
|
|
|
|
|
t.Fatalf("found %s instead", dat["key"]["key1"])
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func TestConfigTemplateValidate(t *testing.T) {
|
|
|
|
|
tpl, err := NewConfigTemplate()
|
|
|
|
|
if err != nil {
|
|
|
|
|
|