From 9c936cab4c2a3a2d2096810f97b9e241da783823 Mon Sep 17 00:00:00 2001 From: Max Date: Fri, 7 Jan 2022 15:57:19 +0800 Subject: [PATCH] + ENV --- helper/env.process.go | 22 ++++++++++++++++++++++ helper/env_test.go | 15 +++++++++++++++ helper/process.go | 3 +++ 3 files changed, 40 insertions(+) create mode 100644 helper/env.process.go create mode 100644 helper/env_test.go diff --git a/helper/env.process.go b/helper/env.process.go new file mode 100644 index 00000000..0035371e --- /dev/null +++ b/helper/env.process.go @@ -0,0 +1,22 @@ +package helper + +import ( + "os" + + "github.com/yaoapp/gou" +) + +// ProcessEnvGet xiang.helper.EnvGet 读取ENV +func ProcessEnvGet(process *gou.Process) interface{} { + process.ValidateArgNums(1) + name := process.ArgsString(0) + return os.Getenv(name) +} + +// ProcessEnvSet xiang.helper.EnvSet 设置ENV +func ProcessEnvSet(process *gou.Process) interface{} { + process.ValidateArgNums(2) + name := process.ArgsString(0) + value := process.ArgsString(1) + return os.Setenv(name, value) +} diff --git a/helper/env_test.go b/helper/env_test.go new file mode 100644 index 00000000..023137f2 --- /dev/null +++ b/helper/env_test.go @@ -0,0 +1,15 @@ +package helper + +import ( + "testing" + + "github.com/stretchr/testify/assert" + "github.com/yaoapp/gou" +) + +func TestProcessEnv(t *testing.T) { + err := gou.NewProcess("xiang.helper.EnvSet", "XIANG_UNIT_TEST", "FOO").Run() + assert.Nil(t, err) + test := gou.NewProcess("xiang.helper.EnvGet", "XIANG_UNIT_TEST").Run().(string) + assert.Equal(t, "FOO", test) +} diff --git a/helper/process.go b/helper/process.go index 2f415735..8d02b521 100644 --- a/helper/process.go +++ b/helper/process.go @@ -33,6 +33,9 @@ func init() { gou.RegisterProcessHandler("xiang.helper.Case", ProcessCase) gou.RegisterProcessHandler("xiang.helper.IF", ProcessIF) + gou.RegisterProcessHandler("xiang.helper.EnvSet", ProcessEnvSet) + gou.RegisterProcessHandler("xiang.helper.EnvGet", ProcessEnvGet) + gou.RegisterProcessHandler("xiang.helper.Print", ProcessPrint) }