Skip to content

Commit

Permalink
os: add tests for UserCacheDir and UserConfigDir
Browse files Browse the repository at this point in the history
Adds basic test scenarios for UserCacheDir and
UserConfigDir.

Fixes golang#57638

Change-Id: Ieb86e95faff44287bfa13daa0cb26e7b5401373b
Reviewed-on: https://go-review.googlesource.com/c/go/+/520262
Run-TryBot: Bryan Mills <bcmills@google.com>
TryBot-Bypass: Bryan Mills <bcmills@google.com>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
Reviewed-by: Bryan Mills <bcmills@google.com>
Auto-Submit: Bryan Mills <bcmills@google.com>
joshkraft authored and gopherbot committed Aug 21, 2023
1 parent a7c3de7 commit e4a8fb0
Showing 2 changed files with 48 additions and 0 deletions.
1 change: 1 addition & 0 deletions misc/go_android_exec/main.go
Original file line number Diff line number Diff line change
@@ -204,6 +204,7 @@ func runMain() (int, error) {
`; export GOPROXY=` + os.Getenv("GOPROXY") +
`; export GOCACHE="` + deviceRoot + `/gocache"` +
`; export PATH="` + deviceGoroot + `/bin":$PATH` +
`; export HOME="` + deviceRoot + `/home"` +
`; cd "` + deviceCwd + `"` +
"; '" + deviceBin + "' " + strings.Join(os.Args[2:], " ")
code, err := adbRun(cmd)
47 changes: 47 additions & 0 deletions src/os/os_test.go
Original file line number Diff line number Diff line change
@@ -2823,6 +2823,53 @@ func TestDoubleCloseError(t *testing.T) {
t.Run("dir", testDoubleCloseError(sfdir))
}

func TestUserCacheDir(t *testing.T) {
t.Parallel()

dir, err := UserCacheDir()
if err != nil {
t.Skipf("skipping: %v", err)
}
if dir == "" {
t.Fatalf("UserCacheDir returned %q; want non-empty path or error", dir)
}

if err := MkdirAll(dir, 0777); err != nil {
t.Fatalf("could not create UserCacheDir: %v", err)
}
d, err := MkdirTemp(dir, "TestUserCacheDir")
if err != nil {
t.Fatalf("could not create a directory in UserCacheDir: %v", err)
}
if err := Remove(d); err != nil {
t.Fatal(err)
}
}

func TestUserConfigDir(t *testing.T) {
t.Parallel()

dir, err := UserConfigDir()
if err != nil {
t.Skipf("skipping: %v", err)
}
if dir == "" {
t.Fatalf("UserConfigDir returned %q; want non-empty path or error", dir)
}

if err := MkdirAll(dir, 0777); err != nil {
t.Fatalf("could not create UserConfigDir: %v", err)
}

d, err := MkdirTemp(dir, "TestUserConfigDir")
if err != nil {
t.Fatalf("could not create a directory in UserConfigDir: %v", err)
}
if err := Remove(d); err != nil {
t.Fatal(err)
}
}

func TestUserHomeDir(t *testing.T) {
t.Parallel()

0 comments on commit e4a8fb0

Please sign in to comment.