fix #115 - support toJson and toJSON (#116)

This commit is contained in:
Casey Lee 2020-02-28 15:20:31 -08:00 committed by GitHub
parent 45839d68ec
commit e9de6ca2c0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 2 deletions

View file

@ -166,14 +166,16 @@ func vmJoin(vm *otto.Otto) {
}
func vmToJSON(vm *otto.Otto) {
_ = vm.Set("toJSON", func(o interface{}) string {
toJSON := func(o interface{}) string {
rtn, err := json.MarshalIndent(o, "", " ")
if err != nil {
logrus.Errorf("Unable to marsal: %v", err)
return ""
}
return string(rtn)
})
}
_ = vm.Set("toJSON", toJSON)
_ = vm.Set("toJson", toJSON)
}
func (rc *RunContext) vmHashFiles() func(*otto.Otto) {

View file

@ -64,6 +64,7 @@ func TestEvaluate(t *testing.T) {
{"join(['hello','mona','the'],'octocat')", "hello mona the octocat", ""},
{"join('hello','mona')", "hello mona", ""},
{"toJSON({'foo':'bar'})", "{\n \"foo\": \"bar\"\n}", ""},
{"toJson({'foo':'bar'})", "{\n \"foo\": \"bar\"\n}", ""},
{"hashFiles('**/package-lock.json')", "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", ""},
{"success()", "true", ""},
{"failure()", "false", ""},