github.com/emmahsax/go-git-helper@v0.0.8-0.20240519163017-907b9de0fa52/internal/configfile/configfile_test.go (about) 1 package configfile 2 3 import ( 4 "fmt" 5 "os" 6 "testing" 7 ) 8 9 func Test_ConfigDir(t *testing.T) { 10 cf := NewConfigFile(false) 11 dir := cf.ConfigDir() 12 13 if dir == "" { 14 t.Errorf("Expected a directory, got an empty string") 15 } 16 } 17 18 func Test_ConfigDirExists(t *testing.T) { 19 cf := NewConfigFile(false) 20 21 _, err := os.Stat(cf.ConfigDir()) 22 if err != nil { 23 if os.IsNotExist(err) { 24 err := os.MkdirAll(cf.ConfigDir(), 0755) 25 if err != nil { 26 t.Fatal(err) 27 } 28 tempDir, err := os.MkdirTemp(cf.ConfigDir(), "") 29 if err != nil { 30 t.Fatal(err) 31 } 32 defer os.RemoveAll(cf.ConfigDir()) 33 defer os.RemoveAll(tempDir) 34 } 35 } 36 37 fmt.Println(cf.ConfigDir()) 38 39 if !cf.ConfigDirExists() { 40 t.Errorf("Expected ConfigDirExists to return true, got false") 41 } 42 } 43 44 func Test_ConfigFile(t *testing.T) { 45 cf := NewConfigFile(false) 46 file := cf.ConfigFile() 47 48 if file == "" { 49 t.Errorf("Expected a file, got an empty string") 50 } 51 } 52 53 func Test_ConfigFileExists(t *testing.T) { 54 cf := NewConfigFile(false) 55 56 _, err := os.Stat(cf.ConfigFile()) 57 if err != nil { 58 err := os.MkdirAll(cf.ConfigDir(), 0755) 59 if err != nil { 60 t.Fatal(err) 61 } 62 tempDir, err := os.MkdirTemp(cf.ConfigDir(), "") 63 if err != nil { 64 t.Fatal(err) 65 } 66 tempFile, err := os.Create(cf.ConfigFile()) 67 if err != nil { 68 t.Fatal(err) 69 } 70 defer os.RemoveAll(cf.ConfigDir()) 71 defer os.RemoveAll(tempDir) 72 defer os.Remove(tempFile.Name()) 73 } 74 75 if !cf.ConfigFileExists() { 76 t.Errorf("Expected ConfigFileExists to return true, got false") 77 } 78 }