Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(576)

Unified Diff: pkg/watcher/test/directory_watcher/shared.dart

Issue 812253002: Delete a bunch of packages that are now on GitHub. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Un-delete http Created 6 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: pkg/watcher/test/directory_watcher/shared.dart
diff --git a/pkg/watcher/test/directory_watcher/shared.dart b/pkg/watcher/test/directory_watcher/shared.dart
deleted file mode 100644
index 86324014bf173392cfd75233c5c93d1fa2567b75..0000000000000000000000000000000000000000
--- a/pkg/watcher/test/directory_watcher/shared.dart
+++ /dev/null
@@ -1,298 +0,0 @@
-// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
-// for details. All rights reserved. Use of this source code is governed by a
-// BSD-style license that can be found in the LICENSE file.
-
-import 'package:scheduled_test/scheduled_test.dart';
-import 'package:watcher/src/utils.dart';
-
-import '../utils.dart';
-
-void sharedTests() {
- test('does not notify for files that already exist when started', () {
- // Make some pre-existing files.
- writeFile("a.txt");
- writeFile("b.txt");
-
- startWatcher();
-
- // Change one after the watcher is running.
- writeFile("b.txt", contents: "modified");
-
- // We should get a modify event for the changed file, but no add events
- // for them before this.
- expectModifyEvent("b.txt");
- });
-
- test('notifies when a file is added', () {
- startWatcher();
- writeFile("file.txt");
- expectAddEvent("file.txt");
- });
-
- test('notifies when a file is modified', () {
- writeFile("file.txt");
- startWatcher();
- writeFile("file.txt", contents: "modified");
- expectModifyEvent("file.txt");
- });
-
- test('notifies when a file is removed', () {
- writeFile("file.txt");
- startWatcher();
- deleteFile("file.txt");
- expectRemoveEvent("file.txt");
- });
-
- test('notifies when a file is modified multiple times', () {
- writeFile("file.txt");
- startWatcher();
- writeFile("file.txt", contents: "modified");
- expectModifyEvent("file.txt");
- writeFile("file.txt", contents: "modified again");
- expectModifyEvent("file.txt");
- });
-
- test('notifies even if the file contents are unchanged', () {
- writeFile("a.txt", contents: "same");
- writeFile("b.txt", contents: "before");
- startWatcher();
-
- writeFile("a.txt", contents: "same");
- writeFile("b.txt", contents: "after");
- inAnyOrder([
- isModifyEvent("a.txt"),
- isModifyEvent("b.txt")
- ]);
- });
-
- test('when the watched directory is deleted, removes all files', () {
- writeFile("dir/a.txt");
- writeFile("dir/b.txt");
-
- startWatcher(dir: "dir");
-
- deleteDir("dir");
- inAnyOrder([
- isRemoveEvent("dir/a.txt"),
- isRemoveEvent("dir/b.txt")
- ]);
- });
-
- test('when the watched directory is moved, removes all files', () {
- writeFile("dir/a.txt");
- writeFile("dir/b.txt");
-
- startWatcher(dir: "dir");
-
- renameDir("dir", "moved_dir");
- createDir("dir");
- inAnyOrder([
- isRemoveEvent("dir/a.txt"),
- isRemoveEvent("dir/b.txt")
- ]);
- });
-
- group("moves", () {
- test('notifies when a file is moved within the watched directory', () {
- writeFile("old.txt");
- startWatcher();
- renameFile("old.txt", "new.txt");
-
- inAnyOrder([
- isAddEvent("new.txt"),
- isRemoveEvent("old.txt")
- ]);
- });
-
- test('notifies when a file is moved from outside the watched directory',
- () {
- writeFile("old.txt");
- createDir("dir");
- startWatcher(dir: "dir");
-
- renameFile("old.txt", "dir/new.txt");
- expectAddEvent("dir/new.txt");
- });
-
- test('notifies when a file is moved outside the watched directory', () {
- writeFile("dir/old.txt");
- startWatcher(dir: "dir");
-
- renameFile("dir/old.txt", "new.txt");
- expectRemoveEvent("dir/old.txt");
- });
- });
-
- // Most of the time, when multiple filesystem actions happen in sequence,
- // they'll be batched together and the watcher will see them all at once.
- // These tests verify that the watcher normalizes and combine these events
- // properly. However, very occasionally the events will be reported in
- // separate batches, and the watcher will report them as though they occurred
- // far apart in time, so each of these tests has a "backup case" to allow for
- // that as well.
- group("clustered changes", () {
- test("doesn't notify when a file is created and then immediately removed",
- () {
- startWatcher();
- writeFile("file.txt");
- deleteFile("file.txt");
-
- // Backup case.
- startClosingEventStream();
- allowEvents(() {
- expectAddEvent("file.txt");
- expectRemoveEvent("file.txt");
- });
- });
-
- test("reports a modification when a file is deleted and then immediately "
- "recreated", () {
- writeFile("file.txt");
- startWatcher();
-
- deleteFile("file.txt");
- writeFile("file.txt", contents: "re-created");
-
- allowEither(() {
- expectModifyEvent("file.txt");
- }, () {
- // Backup case.
- expectRemoveEvent("file.txt");
- expectAddEvent("file.txt");
- });
- });
-
- test("reports a modification when a file is moved and then immediately "
- "recreated", () {
- writeFile("old.txt");
- startWatcher();
-
- renameFile("old.txt", "new.txt");
- writeFile("old.txt", contents: "re-created");
-
- allowEither(() {
- inAnyOrder([
- isModifyEvent("old.txt"),
- isAddEvent("new.txt")
- ]);
- }, () {
- // Backup case.
- expectRemoveEvent("old.txt");
- expectAddEvent("new.txt");
- expectAddEvent("old.txt");
- });
- });
-
- test("reports a removal when a file is modified and then immediately "
- "removed", () {
- writeFile("file.txt");
- startWatcher();
-
- writeFile("file.txt", contents: "modified");
- deleteFile("file.txt");
-
- // Backup case.
- allowModifyEvent("file.txt");
-
- expectRemoveEvent("file.txt");
- });
-
- test("reports an add when a file is added and then immediately modified",
- () {
- startWatcher();
-
- writeFile("file.txt");
- writeFile("file.txt", contents: "modified");
-
- expectAddEvent("file.txt");
-
- // Backup case.
- startClosingEventStream();
- allowModifyEvent("file.txt");
- });
- });
-
- group("subdirectories", () {
- test('watches files in subdirectories', () {
- startWatcher();
- writeFile("a/b/c/d/file.txt");
- expectAddEvent("a/b/c/d/file.txt");
- });
-
- test('notifies when a subdirectory is moved within the watched directory '
- 'and then its contents are modified', () {
- writeFile("old/file.txt");
- startWatcher();
-
- renameDir("old", "new");
- inAnyOrder([
- isRemoveEvent("old/file.txt"),
- isAddEvent("new/file.txt")
- ]);
-
- writeFile("new/file.txt", contents: "modified");
- expectModifyEvent("new/file.txt");
- });
-
- test('emits events for many nested files added at once', () {
- withPermutations((i, j, k) =>
- writeFile("sub/sub-$i/sub-$j/file-$k.txt"));
-
- createDir("dir");
- startWatcher(dir: "dir");
- renameDir("sub", "dir/sub");
-
- inAnyOrder(withPermutations((i, j, k) =>
- isAddEvent("dir/sub/sub-$i/sub-$j/file-$k.txt")));
- });
-
- test('emits events for many nested files removed at once', () {
- withPermutations((i, j, k) =>
- writeFile("dir/sub/sub-$i/sub-$j/file-$k.txt"));
-
- createDir("dir");
- startWatcher(dir: "dir");
-
- // Rename the directory rather than deleting it because native watchers
- // report a rename as a single DELETE event for the directory, whereas
- // they report recursive deletion with DELETE events for every file in the
- // directory.
- renameDir("dir/sub", "sub");
-
- inAnyOrder(withPermutations((i, j, k) =>
- isRemoveEvent("dir/sub/sub-$i/sub-$j/file-$k.txt")));
- });
-
- test('emits events for many nested files moved at once', () {
- withPermutations((i, j, k) =>
- writeFile("dir/old/sub-$i/sub-$j/file-$k.txt"));
-
- createDir("dir");
- startWatcher(dir: "dir");
- renameDir("dir/old", "dir/new");
-
- inAnyOrder(unionAll(withPermutations((i, j, k) {
- return new Set.from([
- isRemoveEvent("dir/old/sub-$i/sub-$j/file-$k.txt"),
- isAddEvent("dir/new/sub-$i/sub-$j/file-$k.txt")
- ]);
- })));
- });
-
- test("emits events for many files added at once in a subdirectory with the "
- "same name as a removed file", () {
- writeFile("dir/sub");
- withPermutations((i, j, k) =>
- writeFile("old/sub-$i/sub-$j/file-$k.txt"));
- startWatcher(dir: "dir");
-
- deleteFile("dir/sub");
- renameDir("old", "dir/sub");
-
- var events = withPermutations((i, j, k) =>
- isAddEvent("dir/sub/sub-$i/sub-$j/file-$k.txt"));
- events.add(isRemoveEvent("dir/sub"));
- inAnyOrder(events);
- });
- });
-}
« no previous file with comments | « pkg/watcher/test/directory_watcher/polling_test.dart ('k') | pkg/watcher/test/directory_watcher/windows_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698