зеркало из https://github.com/mozilla/gecko-dev.git
30 строки
1008 B
JavaScript
30 строки
1008 B
JavaScript
|
const Cc = Components.classes;
|
||
|
const Ci = Components.interfaces;
|
||
|
|
||
|
function run_test() {
|
||
|
// skip this test on Windows
|
||
|
var isWindows = ("@mozilla.org/windows-registry-key;1" in Components.classes);
|
||
|
if (!isWindows) {
|
||
|
var testDir = __LOCATION__.parent;
|
||
|
// create a test file, then symlink it, then check that we think it's a symlink
|
||
|
var targetFile = testDir.clone();
|
||
|
targetFile.append("target.txt");
|
||
|
if (!targetFile.exists())
|
||
|
targetFile.create(Ci.nsIFile.NORMAL_FILE_TYPE, 0644);
|
||
|
|
||
|
var link = testDir.clone();
|
||
|
link.append("link");
|
||
|
if (link.exists())
|
||
|
link.remove(false);
|
||
|
|
||
|
var ln = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);
|
||
|
ln.initWithPath("/bin/ln");
|
||
|
var process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
|
||
|
process.init(ln);
|
||
|
var args = ["-s", targetFile.path, link.path];
|
||
|
var result = process.run(true, args, args.length);
|
||
|
do_check_eq(result, 0);
|
||
|
do_check_true(link.isSymlink());
|
||
|
}
|
||
|
}
|