Files
tubestation/xpcom/tests/unit/test_bug364285-1.js
ISHIKAWA, Chiaki 9ee69e3ce0 Bug 1248252 - Improper outdated octal constant syntax in M-C tree. Use '0o' prefix. r=dao
Be warned. Do not attemp to change the .js "test" source code in ./js
They are meant to check

 - the outdated 0666 octal constant is still parsed correctly,
 - the outdated 0666 octal constant raises syntax error flag
   in strict mode, etc.

So leave them alone.
2016-02-15 08:57:00 +01:00

52 lines
1.4 KiB
JavaScript

var Ci = Components.interfaces;
var Cc = Components.classes;
var nameArray = [
"ascii", // ASCII
"fran\u00E7ais", // Latin-1
"\u0420\u0443\u0441\u0441\u043A\u0438\u0439", // Cyrillic
"\u65E5\u672C\u8A9E", // Japanese
"\u4E2D\u6587", // Chinese
"\uD55C\uAD6D\uC5B4", // Korean
"\uD801\uDC0F\uD801\uDC2D\uD801\uDC3B\uD801\uDC2B" // Deseret
];
function getTempDir()
{
var dirService = Cc["@mozilla.org/file/directory_service;1"]
.getService(Ci.nsIProperties);
return dirService.get("TmpD", Ci.nsILocalFile);
}
function create_file(fileName)
{
var outFile = getTempDir();
outFile.append(fileName);
outFile.createUnique(outFile.NORMAL_FILE_TYPE, 0o600);
var stream = Cc["@mozilla.org/network/file-output-stream;1"]
.createInstance(Ci.nsIFileOutputStream);
stream.init(outFile, 0x02 | 0x08 | 0x20, 0o600, 0);
stream.write("foo", 3);
stream.close();
do_check_eq(outFile.leafName.substr(0, fileName.length), fileName);
return outFile;
}
function test_create(fileName)
{
var file1 = create_file(fileName);
var file2 = create_file(fileName);
file1.remove(false);
file2.remove(false);
}
function run_test()
{
for (var i = 0; i < nameArray.length; ++i) {
test_create(nameArray[i]);
}
}