Skip to content

Commit 54836c6

Browse files
committed
Add tests
1 parent 0b0e647 commit 54836c6

File tree

1 file changed

+23
-1
lines changed

1 file changed

+23
-1
lines changed

src/hooks/useConfig.test.ts

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ Deno.test("useConfig", () => {
1212
assertEquals(config.UserAgent, "libpkgx")
1313
}
1414

15-
1615
const PKGX_PANTRY_PATH = Deno.build.os == 'windows' ? "C:\\foo;D:\\bar" : "/foo:/bar"
1716

1817
config = ConfigDefault({ PKGX_PANTRY_PATH, CI: "true" })
@@ -45,3 +44,26 @@ Deno.test("useConfig empty PKGX_PANTRY_PATH is ignored", () => {
4544
assertEquals(ConfigDefault({ PKGX_PANTRY_PATH: "" }).pantries, [])
4645
assertEquals(ConfigDefault({ PKGX_PANTRY_PATH: ` ${SEP} ${SEP}` }).pantries, [])
4746
})
47+
48+
Deno.test("pkgx^2 rules", () => {
49+
switch (Deno.build.os) {
50+
case 'windows':
51+
assertEquals(ConfigDefault({ XDG_DATA_HOME: "C:\\foo" }).data, Path.home().join("AppData/Local"));
52+
assertEquals(ConfigDefault().data, Path.home().join("AppData/Local"));
53+
54+
assertEquals(ConfigDefault({ XDG_CACHE_HOME: "C:\\foo" }).cache, Path.home().join("AppData/Local"));
55+
assertEquals(ConfigDefault().cache, Path.home().join("AppData/Local"));
56+
break;
57+
case 'darwin':
58+
assertEquals(ConfigDefault({ XDG_DATA_HOME: "/foo" }).data, Path.home().join("Library/Application Support/pkgx"));
59+
assertEquals(ConfigDefault().data, Path.home().join("Library/Application Support/pkgx"));
60+
61+
assertEquals(ConfigDefault({ XDG_CACHE_HOME: "/foo" }).cache, Path.home().join("Library/Caches/pkgx"));
62+
assertEquals(ConfigDefault().cache, Path.home().join("Library/Caches/pkgx"));
63+
break;
64+
case 'linux':
65+
assertEquals(ConfigDefault({ XDG_DATA_HOME: "/foo" }).data, new Path("/foo/pkgx"));
66+
assertEquals(ConfigDefault().data, Path.home().join(".local/share/pkgx"));
67+
break;
68+
}
69+
})

0 commit comments

Comments
 (0)