diff options
author | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
---|---|---|
committer | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
commit | 5f8de423f190bbb79a62f804151bc24824fa32d8 (patch) | |
tree | 10027f336435511475e392454359edea8e25895d /toolkit/components/osfile/tests/xpcshell/test_osfile_async_bytes.js | |
parent | 49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff) | |
download | UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip |
Add m-esr52 at 52.6.0
Diffstat (limited to 'toolkit/components/osfile/tests/xpcshell/test_osfile_async_bytes.js')
-rw-r--r-- | toolkit/components/osfile/tests/xpcshell/test_osfile_async_bytes.js | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/toolkit/components/osfile/tests/xpcshell/test_osfile_async_bytes.js b/toolkit/components/osfile/tests/xpcshell/test_osfile_async_bytes.js new file mode 100644 index 000000000..68fa9152c --- /dev/null +++ b/toolkit/components/osfile/tests/xpcshell/test_osfile_async_bytes.js @@ -0,0 +1,39 @@ +"use strict"; + +Components.utils.import("resource://gre/modules/osfile.jsm"); +Components.utils.import("resource://gre/modules/Task.jsm"); + +function run_test() { + do_test_pending(); + run_next_test(); +} + +/** + * Test to ensure that {bytes:} in options to |write| is correctly + * preserved. + */ +add_task(function* test_bytes() { + let path = OS.Path.join(OS.Constants.Path.tmpDir, + "test_osfile_async_bytes.tmp"); + let file = yield OS.File.open(path, {trunc: true, read: true, write: true}); + try { + try { + // 1. Test write, by supplying {bytes:} options smaller than the actual + // buffer. + yield file.write(new Uint8Array(2048), {bytes: 1024}); + do_check_eq((yield file.stat()).size, 1024); + + // 2. Test that passing nullish values for |options| still works. + yield file.setPosition(0, OS.File.POS_END); + yield file.write(new Uint8Array(1024), null); + yield file.write(new Uint8Array(1024), undefined); + do_check_eq((yield file.stat()).size, 3072); + } finally { + yield file.close(); + } + } finally { + yield OS.File.remove(path); + } +}); + +add_task(do_test_finished); |