mirror of
https://github.com/mgechev/revive.git
synced 2024-11-28 08:49:11 +02:00
84 lines
1.8 KiB
Go
84 lines
1.8 KiB
Go
package cli
|
|
|
|
import (
|
|
"os"
|
|
"testing"
|
|
|
|
"github.com/spf13/afero"
|
|
)
|
|
|
|
func TestMain(m *testing.M) {
|
|
os.Unsetenv("HOME")
|
|
os.Unsetenv("XDG_CONFIG_HOME")
|
|
AppFs = afero.NewMemMapFs()
|
|
os.Exit(m.Run())
|
|
}
|
|
|
|
func TestXDGConfigDirIsPrefferedFirst(t *testing.T) {
|
|
t.Cleanup(func() {
|
|
// reset fs after test
|
|
AppFs = afero.NewMemMapFs()
|
|
})
|
|
|
|
xdgDirPath := "/tmp-iofs/xdg/config"
|
|
homeDirPath := "/tmp-iofs/home/tester"
|
|
AppFs.MkdirAll(xdgDirPath, 0755)
|
|
AppFs.MkdirAll(homeDirPath, 0755)
|
|
|
|
afero.WriteFile(AppFs, xdgDirPath+"/revive.toml", []byte("\n"), 0644)
|
|
t.Setenv("XDG_CONFIG_HOME", xdgDirPath)
|
|
|
|
afero.WriteFile(AppFs, homeDirPath+"/revive.toml", []byte("\n"), 0644)
|
|
t.Setenv("HOME", homeDirPath)
|
|
|
|
got := buildDefaultConfigPath()
|
|
want := xdgDirPath + "/revive.toml"
|
|
|
|
if got != want {
|
|
t.Errorf("got %q, wanted %q", got, want)
|
|
}
|
|
}
|
|
|
|
func TestHomeConfigDir(t *testing.T) {
|
|
|
|
homeDirPath := "/tmp-iofs/home/tester"
|
|
AppFs.MkdirAll(homeDirPath, 0755)
|
|
|
|
afero.WriteFile(AppFs, homeDirPath+"/revive.toml", []byte("\n"), 0644)
|
|
t.Setenv("HOME", homeDirPath)
|
|
|
|
got := buildDefaultConfigPath()
|
|
want := homeDirPath + "/revive.toml"
|
|
|
|
if got != want {
|
|
t.Errorf("got %q, wanted %q", got, want)
|
|
}
|
|
}
|
|
|
|
func TestXDGConfigDir(t *testing.T) {
|
|
xdgDirPath := "/tmp-iofs/xdg/config"
|
|
AppFs.MkdirAll(xdgDirPath, 0755)
|
|
|
|
afero.WriteFile(AppFs, xdgDirPath+"/revive.toml", []byte("\n"), 0644)
|
|
t.Setenv("XDG_CONFIG_HOME", xdgDirPath)
|
|
|
|
got := buildDefaultConfigPath()
|
|
want := xdgDirPath + "/revive.toml"
|
|
|
|
if got != want {
|
|
t.Errorf("got %q, wanted %q", got, want)
|
|
}
|
|
}
|
|
|
|
func TestXDGConfigDirNoFile(t *testing.T) {
|
|
xdgDirPath := "/tmp-iofs/xdg/config"
|
|
t.Setenv("XDG_CONFIG_HOME", xdgDirPath)
|
|
|
|
got := buildDefaultConfigPath()
|
|
want := xdgDirPath + "/revive.toml"
|
|
|
|
if got != want {
|
|
t.Errorf("got %q, wanted %q", got, want)
|
|
}
|
|
}
|