gitlink-cli/cmd/config/config_test.go

33 lines
649 B
Go

package config
import (
"bytes"
"strings"
"testing"
"github.com/gitlink-org/gitlink-cli/internal/i18n"
)
func TestConfigSetUsesCommandOutputAndI18n(t *testing.T) {
t.Setenv("GITLINK_CONFIG_DIR", t.TempDir())
tr, err := i18n.New(i18n.Options{Locale: "zh-CN"})
if err != nil {
t.Fatal(err)
}
cmd := NewConfigCmd(tr)
cmd.SetArgs([]string{"set", "lang", "zh-CN"})
var out bytes.Buffer
cmd.SetOut(&out)
cmd.SetErr(&out)
if err := cmd.Execute(); err != nil {
t.Fatal(err)
}
output := out.String()
if !strings.Contains(output, "已设置 lang = zh-CN") {
t.Fatalf("expected localized config set output, got:\n%s", output)
}
}