Mercurial > hg
annotate tests/test-update-issue1456.t @ 18316:f36375576ed5
filecache: create an entry in _filecache when __set__ is called for a missing one
Preserve the invariant that if P is a filecached property on X then
P in X.__dict__ => P in X._filecache.
Previously, it was possible for a filecached property to become out of sync
with the filesystem if it was set before getting it first, since the initial
filecacheentry was created in __get__.
Old behaviour:
repo.prop = x
repo.invalidate() # prop has no entry in _filecache, it's not removed
# from __dict__
repo.prop # returns x like before without checking with the
# filesystem
New:
repo.prop = x # an empty entry is created in _filecache
repo.invalidate() # prop is removed from __dict__
repo.prop # recreates prop
author | Idan Kamara <idankk86@gmail.com> |
---|---|
date | Mon, 17 Dec 2012 15:25:45 +0200 |
parents | f2719b387380 |
children | 44bda93df90e |
rev | line source |
---|---|
15442
db0340f4b507
tests: use 'hghave execbit' for tests that manipulate x bit in file system
Mads Kiilerich <mads@kiilerich.com>
parents:
12316
diff
changeset
|
1 $ "$TESTDIR/hghave" execbit || exit 80 |
db0340f4b507
tests: use 'hghave execbit' for tests that manipulate x bit in file system
Mads Kiilerich <mads@kiilerich.com>
parents:
12316
diff
changeset
|
2 |
12279 | 3 $ rm -rf a |
4 $ hg init a | |
5 $ cd a | |
7569
89207edf3973
correctly update dirstate after update+mode change (issue1456)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
6 |
12279 | 7 $ echo foo > foo |
8 $ hg ci -qAm0 | |
9 $ chmod +x foo | |
10 $ hg ci -m1 | |
11 $ hg co -q 0 | |
12 $ echo dirty > foo | |
13 $ hg up -c | |
14 abort: uncommitted local changes | |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
15 [255] |
12279 | 16 $ hg up -q |
17 $ cat foo | |
18 dirty | |
19 $ hg st -A | |
20 M foo | |
7569
89207edf3973
correctly update dirstate after update+mode change (issue1456)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
21 |
12279 | 22 Validate update of standalone execute bit change: |
23 | |
24 $ hg up -C 0 | |
25 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
26 $ chmod -x foo | |
27 $ hg ci -m removeexec | |
28 nothing changed | |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
29 [1] |
12279 | 30 $ hg up -C 0 |
31 0 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
32 $ hg up | |
33 0 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
34 $ hg st | |
35 | |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
15442
diff
changeset
|
36 $ cd .. |