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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
3 $ rm -rf a
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
4 $ hg init a
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
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
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
7 $ echo foo > foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
8 $ hg ci -qAm0
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
9 $ chmod +x foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
10 $ hg ci -m1
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
11 $ hg co -q 0
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
12 $ echo dirty > foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
13 $ hg up -c
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
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
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
16 $ hg up -q
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
17 $ cat foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
18 dirty
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
19 $ hg st -A
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
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
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
22 Validate update of standalone execute bit change:
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
23
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
24 $ hg up -C 0
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
25 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
26 $ chmod -x foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
27 $ hg ci -m removeexec
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
28 nothing changed
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12279
diff changeset
29 [1]
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
30 $ hg up -C 0
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
31 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
32 $ hg up
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
33 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
34 $ hg st
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 8855
diff changeset
35
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 15442
diff changeset
36 $ cd ..