argo-cd/util/exec/exec_test.go
kshamajain99 7abfbe8178
fix: don't log certain fields (#5662)
* fix: support longer cookie

Signed-off-by: kshamajain99 <kshamajain99@gmail.com>

* merge conflicts

Signed-off-by: kshamajain99 <kshamajain99@gmail.com>

* fix: don't log certain fields

Signed-off-by: kshamajain99 <kshamajain99@gmail.com>
2021-03-02 18:38:16 -08:00

41 lines
1.1 KiB
Go

package exec
import (
"os"
"os/exec"
"regexp"
"testing"
"time"
"github.com/stretchr/testify/assert"
)
func Test_timeout(t *testing.T) {
defer func() { _ = os.Unsetenv("ARGOCD_EXEC_TIMEOUT") }()
t.Run("Default", func(t *testing.T) {
initTimeout()
assert.Equal(t, 90*time.Second, timeout)
})
t.Run("Default", func(t *testing.T) {
_ = os.Setenv("ARGOCD_EXEC_TIMEOUT", "1s")
initTimeout()
assert.Equal(t, 1*time.Second, timeout)
})
}
func TestRun(t *testing.T) {
out, err := Run(exec.Command("ls"))
assert.NoError(t, err)
assert.NotEmpty(t, out)
}
func TestHideUsernamePassword(t *testing.T) {
_, err := RunWithRedactor(exec.Command("helm registry login https://charts.bitnami.com/bitnami", "--username", "foo", "--password", "bar"), nil)
assert.NotEmpty(t, err)
var redactor = func(text string) string {
return regexp.MustCompile("(--username|--password) [^ ]*").ReplaceAllString(text, "$1 ******")
}
_, err = RunWithRedactor(exec.Command("helm registry login https://charts.bitnami.com/bitnami", "--username", "foo", "--password", "bar"), redactor)
assert.NotEmpty(t, err)
}