summaryrefslogtreecommitdiffstats
path: root/xpcom/tests/unit/test_home.js
diff options
context:
space:
mode:
Diffstat (limited to 'xpcom/tests/unit/test_home.js')
-rw-r--r--xpcom/tests/unit/test_home.js24
1 files changed, 24 insertions, 0 deletions
diff --git a/xpcom/tests/unit/test_home.js b/xpcom/tests/unit/test_home.js
new file mode 100644
index 000000000..61fa5b344
--- /dev/null
+++ b/xpcom/tests/unit/test_home.js
@@ -0,0 +1,24 @@
+var Ci = Components.interfaces;
+var Cc = Components.classes;
+
+const CWD = do_get_cwd();
+function checkOS(os) {
+ const nsILocalFile_ = "nsILocalFile" + os;
+ return nsILocalFile_ in Components.interfaces &&
+ CWD instanceof Components.interfaces[nsILocalFile_];
+}
+
+const isWin = checkOS("Win");
+
+function run_test() {
+ var envVar = isWin ? "USERPROFILE" : "HOME";
+
+ var dirSvc = Cc["@mozilla.org/file/directory_service;1"].getService(Ci.nsIProperties);
+ var homeDir = dirSvc.get("Home", Ci.nsIFile);
+
+ var env = Cc["@mozilla.org/process/environment;1"].getService(Ci.nsIEnvironment);
+ var expected = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);
+ expected.initWithPath(env.get(envVar));
+
+ do_check_eq(homeDir.path, expected.path);
+}