From 3ca05089eccb6c2e738c0a86725bd22695f5b7a7 Mon Sep 17 00:00:00 2001 From: Shulhan Date: Fri, 6 Oct 2023 13:59:51 +0700 Subject: all: pass the configuration directory parameter to NewCli Previously, the configuration directory initialized inside NewCli. This changes we make the NewCli accept the config directory so we can changes it during testing. --- cli.go | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) (limited to 'cli.go') diff --git a/cli.go b/cli.go index 3d1911b..491db69 100644 --- a/cli.go +++ b/cli.go @@ -30,22 +30,16 @@ type Cli struct { } // NewCli create and initialize new CLI for gotp program. -func NewCli() (cli *Cli, err error) { +func NewCli(configDir string) (cli *Cli, err error) { var ( logp = `NewCli` - userConfigDir string - cfgFile string + cfgFile string ) cli = &Cli{} - userConfigDir, err = os.UserConfigDir() - if err != nil { - return nil, fmt.Errorf(`%s: UserConfigDir: %w`, logp, err) - } - - cfgFile = filepath.Join(userConfigDir, configDir, configFile) + cfgFile = filepath.Join(configDir, configFile) cli.cfg, err = newConfig(cfgFile) if err != nil { -- cgit v1.3