Mercurial > hg
view tests/test-commit.out @ 9116:f90bbf1ea09f
inotify: fix issue1375, add a test.
The biggest problem was the data structure, which did not allow changing
a file into a directory or vice versa. This problem is fixed by b55d44719b47.
The walk() method also had an issue in this case:
- we know 'path' as a directory. inotify server sleeps.
- 'path' is deleted
- 'path' is recreated as a file
- the server catches up here, and see the deletion. it instantiates a scan(),
which in its turn calls for walk(repo, path).
- walk() then assumes that 'path' is a directory and calls os.listdir on it,
which raises an OSError(errno.ENOTDIR)
Catch the error, and yield the file instead of the directory contents.
author | Nicolas Dumazet <nicdumz.commits@gmail.com> |
---|---|
date | Mon, 13 Jul 2009 16:49:05 +0200 |
parents | b9e0ddb04c5c |
children |
line wrap: on
line source
% commit date test abort: empty commit message abort: impossible time zone offset: 4444444 abort: invalid date: '1\t15.1' abort: invalid date: 'foo bar' abort: date exceeds 32 bits: 111111111111 % commit added file that has been deleted nothing changed abort: bar: file not found! adding dir/file dir/file committed changeset 2:d2a76177cb42 adding dir.file abort: dir: no match under directory! abort: bleh: no match under directory! abort: dir2: no match under directory! dir/file committed changeset 3:1cd62a2d8db5 abort: does-not-exist: No such file or directory abort: baz: file not tracked! abort: quux: file not tracked! dir/file committed changeset 4:49176991390e % partial subdir commit test adding bar/bar adding foo/foo % subdir log 1 changeset: 0:6ef3cb06bb80 user: test date: Mon Jan 12 13:46:40 1970 +0000 files: foo/foo description: commit-subdir-1 % subdir log 2 changeset: 1:f2e51572cf5a tag: tip user: test date: Mon Jan 12 13:46:41 1970 +0000 files: bar/bar description: commit-subdir-2 % full log changeset: 1:f2e51572cf5a tag: tip user: test date: Mon Jan 12 13:46:41 1970 +0000 files: bar/bar description: commit-subdir-2 changeset: 0:6ef3cb06bb80 user: test date: Mon Jan 12 13:46:40 1970 +0000 files: foo/foo description: commit-subdir-1 % dot and subdir commit test % full log changeset: 1:d9180e04fa8a tag: tip user: test date: Sat Jan 24 03:33:20 1970 +0000 files: foo/plain-file description: commit-foo-dot changeset: 0:80b572aaf098 user: test date: Mon Jan 12 13:46:40 1970 +0000 files: foo/plain-file description: commit-foo-subdir % subdir log changeset: 1:d9180e04fa8a tag: tip user: test date: Sat Jan 24 03:33:20 1970 +0000 summary: commit-foo-dot changeset: 0:80b572aaf098 user: test date: Mon Jan 12 13:46:40 1970 +0000 summary: commit-foo-subdir adding a 1 files updated, 0 files merged, 0 files removed, 0 files unresolved created new head merging a 0 files updated, 1 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) % should fail because we are specifying a file name abort: cannot partially commit a merge (do not specify files or patterns) % should fail because we are specifying a pattern abort: cannot partially commit a merge (do not specify files or patterns) % should succeed % test commit message content HG: Enter commit message. Lines beginning with 'HG:' are removed. HG: Leave message empty to abort commit. HG: -- HG: user: test HG: branch 'default' HG: added added HG: changed changed HG: removed removed abort: empty commit message