diff options
author | wolfbeast <mcwerewolf@wolfbeast.com> | 2020-04-14 21:49:04 +0200 |
---|---|---|
committer | wolfbeast <mcwerewolf@wolfbeast.com> | 2020-04-14 21:49:04 +0200 |
commit | 39dac57259cff8b61db0b22cb2ad0a8adb02692e (patch) | |
tree | 52a026cc8c22793eb17fd0f5e22adce1ae08a1dd /toolkit/components/filewatcher/tests/xpcshell/test_shared_callback.js | |
parent | a1cce3b2b00bbd9f4983013ddd8934a7bccb9e99 (diff) | |
parent | c2d9ab62f3d097c9e0e00184cab1f546554f5eaa (diff) | |
download | UXP-39dac57259cff8b61db0b22cb2ad0a8adb02692e.tar UXP-39dac57259cff8b61db0b22cb2ad0a8adb02692e.tar.gz UXP-39dac57259cff8b61db0b22cb2ad0a8adb02692e.tar.lz UXP-39dac57259cff8b61db0b22cb2ad0a8adb02692e.tar.xz UXP-39dac57259cff8b61db0b22cb2ad0a8adb02692e.zip |
Merge branch 'redwood' into 28.9-platform
Diffstat (limited to 'toolkit/components/filewatcher/tests/xpcshell/test_shared_callback.js')
-rw-r--r-- | toolkit/components/filewatcher/tests/xpcshell/test_shared_callback.js | 62 |
1 files changed, 0 insertions, 62 deletions
diff --git a/toolkit/components/filewatcher/tests/xpcshell/test_shared_callback.js b/toolkit/components/filewatcher/tests/xpcshell/test_shared_callback.js deleted file mode 100644 index 482ba6b8b..000000000 --- a/toolkit/components/filewatcher/tests/xpcshell/test_shared_callback.js +++ /dev/null @@ -1,62 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - -"use strict"; - -function run_test() { - // Set up profile. We will use profile path create some test files. - do_get_profile(); - - // Start executing the tests. - run_next_test(); -} - -/** - * Test the watcher correctly handles two watches sharing the same - * change callback. - */ -add_task(function* test_watch_with_shared_callback() { - - // Create and watch two sub-directories of the profile directory so we don't - // catch notifications we're not interested in (i.e. "startupCache"). - let watchedDirs = - [ - OS.Path.join(OS.Constants.Path.profileDir, "filewatcher_playground"), - OS.Path.join(OS.Constants.Path.profileDir, "filewatcher_playground2") - ]; - - yield OS.File.makeDir(watchedDirs[0]); - yield OS.File.makeDir(watchedDirs[1]); - - let tempFileName = "test_filecreation.tmp"; - - // Instantiate and initialize the native watcher. - let watcher = makeWatcher(); - let deferred = Promise.defer(); - - // Watch both directories using the same callbacks. - yield promiseAddPath(watcher, watchedDirs[0], deferred.resolve, deferred.reject); - yield promiseAddPath(watcher, watchedDirs[1], deferred.resolve, deferred.reject); - - // Remove the watch for the first directory, but keep watching - // for changes in the second: we need to make sure the callback - // survives the removal of the first watch. - watcher.removePath(watchedDirs[0], deferred.resolve, deferred.reject); - - // Create a file within the watched directory. - let tmpFilePath = OS.Path.join(watchedDirs[1], tempFileName); - yield OS.File.writeAtomic(tmpFilePath, "some data"); - - // Wait until the watcher informs us that the file was created. - let changed = yield deferred.promise; - do_check_eq(changed, tmpFilePath); - - // Remove the watch and free the associated memory (we need to - // reuse 'deferred.resolve' and 'deferred.reject' to unregister). - watcher.removePath(watchedDirs[1], deferred.resolve, deferred.reject); - - // Remove the test directories and all of their content. - yield OS.File.removeDir(watchedDirs[0]); - yield OS.File.removeDir(watchedDirs[1]); -}); |