| |
1 function test() { |
| |
2 let {Promise} = Components.utils.import("resource://gre/modules/Promise.jsm"); |
| |
3 Components.utils.import("resource://gre/modules/osfile.jsm"); |
| |
4 let decoder = new TextDecoder(); |
| |
5 |
| |
6 waitForExplicitFinish(); |
| |
7 |
| |
8 SimpleTest.doesThrow(function () { |
| |
9 getTestFilePath("/browser_getTestFile.js") |
| |
10 }, "getTestFilePath rejects absolute paths"); |
| |
11 |
| |
12 Promise.all([ |
| |
13 OS.File.exists(getTestFilePath("browser_getTestFile.js")) |
| |
14 .then(function (exists) { |
| |
15 ok(exists, "getTestFilePath consider the path as being relative"); |
| |
16 }), |
| |
17 |
| |
18 OS.File.exists(getTestFilePath("./browser_getTestFile.js")) |
| |
19 .then(function (exists) { |
| |
20 ok(exists, "getTestFilePath also accepts explicit relative path"); |
| |
21 }), |
| |
22 |
| |
23 OS.File.exists(getTestFilePath("./browser_getTestFileTypo.xul")) |
| |
24 .then(function (exists) { |
| |
25 ok(!exists, "getTestFilePath do not throw if the file doesn't exists"); |
| |
26 }), |
| |
27 |
| |
28 OS.File.read(getTestFilePath("test-dir/test-file")) |
| |
29 .then(function (array) { |
| |
30 is(decoder.decode(array), "foo\n", "getTestFilePath can reach sub-folder files 1/2"); |
| |
31 }), |
| |
32 |
| |
33 OS.File.read(getTestFilePath("./test-dir/test-file")) |
| |
34 .then(function (array) { |
| |
35 is(decoder.decode(array), "foo\n", "getTestFilePath can reach sub-folder files 2/2"); |
| |
36 }) |
| |
37 |
| |
38 ]).then(function () { |
| |
39 finish(); |
| |
40 }, function (error) { |
| |
41 ok(false, error); |
| |
42 finish(); |
| |
43 }); |
| |
44 } |