Mercurial > hg
view tests/test-bookmarks.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 | 42cb14f20d76 |
children | 717c35d55fb3 |
line wrap: on
line source
% no bookmarks no bookmarks set % bookmark rev -1 % list bookmarks * X -1:000000000000 % bookmark X moved to rev 0 * X 0:f7b1eb17ad24 % look up bookmark changeset: 0:f7b1eb17ad24 tag: X tag: tip user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: 0 % second bookmark for rev 0 % bookmark rev -1 again % list bookmarks * X2 0:f7b1eb17ad24 * X 0:f7b1eb17ad24 Y -1:000000000000 % bookmarks X and X2 moved to rev 1, Y at rev -1 * X2 1:925d80f479bb * X 1:925d80f479bb Y -1:000000000000 % bookmark rev 0 again % bookmarks X and X2 moved to rev 2, Y at rev -1, Z at rev 0 * X2 2:0316ce92851d * X 2:0316ce92851d Z 0:f7b1eb17ad24 Y -1:000000000000 % rename nonexistent bookmark abort: a bookmark of this name does not exist % rename to existent bookmark abort: a bookmark of the same name already exists % force rename to existent bookmark % list bookmarks * X2 2:0316ce92851d * Y 2:0316ce92851d Z 0:f7b1eb17ad24 % rename without new name abort: new bookmark name required % delete without name abort: bookmark name required % delete nonexistent bookmark abort: a bookmark of this name does not exist % bookmark name with spaces should be stripped % list bookmarks * X2 2:0316ce92851d * Y 2:0316ce92851d Z 0:f7b1eb17ad24 * x y 2:0316ce92851d % look up stripped bookmark name changeset: 2:0316ce92851d tag: X2 tag: Y tag: tip tag: x y user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: 2 % reject bookmark name with newline abort: bookmark name cannot contain newlines % bookmark with existing name abort: a bookmark of the same name already exists % force bookmark with existing name % list bookmarks * X2 2:0316ce92851d * Y 2:0316ce92851d * Z 2:0316ce92851d * x y 2:0316ce92851d % revision but no bookmark name abort: bookmark name required