зеркало из https://github.com/mozilla/pjs.git
39 строки
1.1 KiB
JavaScript
39 строки
1.1 KiB
JavaScript
const Ci = Components.interfaces;
|
|
const Cc = Components.classes;
|
|
const NS_OS_TEMP_DIR = "TmpD";
|
|
|
|
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");
|
|
const isOS2 = checkOS("OS2");
|
|
const isMac = checkOS("Mac");
|
|
const isUnix = !(isWin || isOS2 || isMac);
|
|
|
|
var hiddenUnixFile;
|
|
function createUNIXHiddenFile() {
|
|
var dirSvc = Cc["@mozilla.org/file/directory_service;1"].getService(Ci.nsIProperties);
|
|
var tmpDir = dirSvc.get(NS_OS_TEMP_DIR, Ci.nsIFile);
|
|
hiddenUnixFile = tmpDir.clone();
|
|
hiddenUnixFile.append(".foo");
|
|
// we don't care if this already exists because we don't care
|
|
// about the file's contents (just the name)
|
|
if (!hiddenUnixFile.exists())
|
|
hiddenUnixFile.create(Ci.nsIFile.NORMAL_FILE_TYPE, 0666);
|
|
return hiddenUnixFile.exists();
|
|
}
|
|
|
|
function run_test() {
|
|
// Skip this test on Windows
|
|
if (isWin || isOS2)
|
|
return;
|
|
|
|
do_check_true(createUNIXHiddenFile());
|
|
do_check_true(hiddenUnixFile.isHidden());
|
|
}
|
|
|