tenfourfox/testing/mochitest/tests/browser/browser_getTestFile.js
Cameron Kaiser c9b2922b70 hello FPR
2017-04-19 00:56:45 -07:00

45 lines
1.4 KiB
JavaScript

function test() {
let {Promise} = Components.utils.import("resource://gre/modules/Promise.jsm");
Components.utils.import("resource://gre/modules/osfile.jsm");
let decoder = new TextDecoder();
waitForExplicitFinish();
SimpleTest.doesThrow(function () {
getTestFilePath("/browser_getTestFile.js")
}, "getTestFilePath rejects absolute paths");
Promise.all([
OS.File.exists(getTestFilePath("browser_getTestFile.js"))
.then(function (exists) {
ok(exists, "getTestFilePath consider the path as being relative");
}),
OS.File.exists(getTestFilePath("./browser_getTestFile.js"))
.then(function (exists) {
ok(exists, "getTestFilePath also accepts explicit relative path");
}),
OS.File.exists(getTestFilePath("./browser_getTestFileTypo.xul"))
.then(function (exists) {
ok(!exists, "getTestFilePath do not throw if the file doesn't exists");
}),
OS.File.read(getTestFilePath("test-dir/test-file"))
.then(function (array) {
is(decoder.decode(array), "foo\n", "getTestFilePath can reach sub-folder files 1/2");
}),
OS.File.read(getTestFilePath("./test-dir/test-file"))
.then(function (array) {
is(decoder.decode(array), "foo\n", "getTestFilePath can reach sub-folder files 2/2");
})
]).then(function () {
finish();
}, function (error) {
ok(false, error);
finish();
});
}