Mercurial > hg
annotate tests/test-propertycache.py @ 40417:49c7b701fdc2 stable
phase: add an archived phase
This phase allows for hidden changesets in the "user space". It differs from
the "internal" phase which is intended for internal by-product only. There
have been discussions at the 4.8 sprint to use such phase to speedup cleanup
after history rewriting operation.
Shipping it in the same release as the 'internal-phase' groups the associated
`requires` entry. The important bit is to have support for this phase in the
earliest version of mercurial possible. Adding the UI to manipulate this new
phase later seems fine.
The current plan for archived usage and user interface are as follow. On a
repository with internal-phase on and evolution off:
* history rewriting command set rewritten changeset in the archived phase.
(This mean updating the cleanupnodes method).
* keep `hg unbundle .hg/strip-backup/X.hg` as a way to restore changeset for
now
(backup bundle need to contains phase data)
* [maybe] add a `hg strip --soft` advance flag
(a light way to expose the feature without getting in the way of a better
UI)
Mercurial 4.8 freeze is too close to get the above in by then.
We don't introduce a new repository `requirement` as we reuse the one
introduced with the 'archived' phase during the 4.8 cycle.
author | Boris Feld <boris.feld@octobus.net> |
---|---|
date | Wed, 17 Oct 2018 14:47:01 +0200 |
parents | e5d74742d00e |
children | 2372284d9457 |
rev | line source |
---|---|
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
1 """test behavior of propertycache and unfiltered propertycache |
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
2 |
19951
d51c4d85ec23
spelling: random spell checker fixes
Mads Kiilerich <madski@unity3d.com>
parents:
19878
diff
changeset
|
3 The repoview overlay is quite complex. We test the behavior of |
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
4 property cache of both localrepo and repoview to prevent |
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
5 regression.""" |
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
6 |
28762
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
7 from __future__ import absolute_import, print_function |
28755
84673a7c54af
py3: use absolute_import in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
21024
diff
changeset
|
8 import os |
84673a7c54af
py3: use absolute_import in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
21024
diff
changeset
|
9 import subprocess |
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
10 |
28839
de7802c3a1df
tests: import mercurial modules by name in test-propertycache
Yuya Nishihara <yuya@tcha.org>
parents:
28838
diff
changeset
|
11 from mercurial import ( |
de7802c3a1df
tests: import mercurial modules by name in test-propertycache
Yuya Nishihara <yuya@tcha.org>
parents:
28838
diff
changeset
|
12 hg, |
de7802c3a1df
tests: import mercurial modules by name in test-propertycache
Yuya Nishihara <yuya@tcha.org>
parents:
28838
diff
changeset
|
13 localrepo, |
40297
d33611280add
py3: fix test-propertycache.py
Mark Thomas <mbthomas@fb.com>
parents:
30559
diff
changeset
|
14 pycompat, |
28839
de7802c3a1df
tests: import mercurial modules by name in test-propertycache
Yuya Nishihara <yuya@tcha.org>
parents:
28838
diff
changeset
|
15 ui as uimod, |
de7802c3a1df
tests: import mercurial modules by name in test-propertycache
Yuya Nishihara <yuya@tcha.org>
parents:
28838
diff
changeset
|
16 util, |
de7802c3a1df
tests: import mercurial modules by name in test-propertycache
Yuya Nishihara <yuya@tcha.org>
parents:
28838
diff
changeset
|
17 ) |
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
18 |
40347
e5d74742d00e
py3: fix test-propertycache.py on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
40297
diff
changeset
|
19 from mercurial.utils import ( |
e5d74742d00e
py3: fix test-propertycache.py on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
40297
diff
changeset
|
20 procutil, |
e5d74742d00e
py3: fix test-propertycache.py on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
40297
diff
changeset
|
21 ) |
e5d74742d00e
py3: fix test-propertycache.py on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
40297
diff
changeset
|
22 |
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
23 # create some special property cache that trace they call |
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
24 |
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
25 calllog = [] |
28839
de7802c3a1df
tests: import mercurial modules by name in test-propertycache
Yuya Nishihara <yuya@tcha.org>
parents:
28838
diff
changeset
|
26 @util.propertycache |
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
27 def testcachedfoobar(repo): |
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
28 name = repo.filtername |
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
29 if name is None: |
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
30 name = '' |
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
31 val = len(name) |
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
32 calllog.append(val) |
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
33 return val |
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
34 |
19846
9789670992d6
repoview: have unfilteredpropertycache using the underlying cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19845
diff
changeset
|
35 unficalllog = [] |
28839
de7802c3a1df
tests: import mercurial modules by name in test-propertycache
Yuya Nishihara <yuya@tcha.org>
parents:
28838
diff
changeset
|
36 @localrepo.unfilteredpropertycache |
19846
9789670992d6
repoview: have unfilteredpropertycache using the underlying cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19845
diff
changeset
|
37 def testcachedunfifoobar(repo): |
9789670992d6
repoview: have unfilteredpropertycache using the underlying cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19845
diff
changeset
|
38 name = repo.filtername |
9789670992d6
repoview: have unfilteredpropertycache using the underlying cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19845
diff
changeset
|
39 if name is None: |
9789670992d6
repoview: have unfilteredpropertycache using the underlying cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19845
diff
changeset
|
40 name = '' |
9789670992d6
repoview: have unfilteredpropertycache using the underlying cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19845
diff
changeset
|
41 val = 100 + len(name) |
9789670992d6
repoview: have unfilteredpropertycache using the underlying cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19845
diff
changeset
|
42 unficalllog.append(val) |
9789670992d6
repoview: have unfilteredpropertycache using the underlying cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19845
diff
changeset
|
43 return val |
9789670992d6
repoview: have unfilteredpropertycache using the underlying cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19845
diff
changeset
|
44 |
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
45 #plug them on repo |
28839
de7802c3a1df
tests: import mercurial modules by name in test-propertycache
Yuya Nishihara <yuya@tcha.org>
parents:
28838
diff
changeset
|
46 localrepo.localrepository.testcachedfoobar = testcachedfoobar |
de7802c3a1df
tests: import mercurial modules by name in test-propertycache
Yuya Nishihara <yuya@tcha.org>
parents:
28838
diff
changeset
|
47 localrepo.localrepository.testcachedunfifoobar = testcachedunfifoobar |
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
48 |
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
49 |
21024
7731a2281cf0
spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents:
19951
diff
changeset
|
50 # Create an empty repo and instantiate it. It is important to run |
7731a2281cf0
spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents:
19951
diff
changeset
|
51 # these tests on the real object to detect regression. |
40297
d33611280add
py3: fix test-propertycache.py
Mark Thomas <mbthomas@fb.com>
parents:
30559
diff
changeset
|
52 repopath = pycompat.fsencode(os.path.join(os.environ['TESTTMP'], 'repo')) |
40347
e5d74742d00e
py3: fix test-propertycache.py on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
40297
diff
changeset
|
53 assert subprocess.call(pycompat.rapply(procutil.tonativestr, |
e5d74742d00e
py3: fix test-propertycache.py on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
40297
diff
changeset
|
54 [b'hg', b'init', repopath])) == 0 |
e5d74742d00e
py3: fix test-propertycache.py on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
40297
diff
changeset
|
55 |
30559
d83ca854fa21
ui: factor out ui.load() to create a ui without loading configs (API)
Yuya Nishihara <yuya@tcha.org>
parents:
28839
diff
changeset
|
56 ui = uimod.ui.load() |
28839
de7802c3a1df
tests: import mercurial modules by name in test-propertycache
Yuya Nishihara <yuya@tcha.org>
parents:
28838
diff
changeset
|
57 repo = hg.repository(ui, path=repopath).unfiltered() |
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
58 |
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
59 |
28762
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
60 print('') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
61 print('=== property cache ===') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
62 print('') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
63 print('calllog:', calllog) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
64 print('cached value (unfiltered):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
65 vars(repo).get('testcachedfoobar', 'NOCACHE')) |
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
66 |
28762
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
67 print('') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
68 print('= first access on unfiltered, should do a call') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
69 print('access:', repo.testcachedfoobar) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
70 print('calllog:', calllog) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
71 print('cached value (unfiltered):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
72 vars(repo).get('testcachedfoobar', 'NOCACHE')) |
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
73 |
28762
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
74 print('') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
75 print('= second access on unfiltered, should not do call') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
76 print('access', repo.testcachedfoobar) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
77 print('calllog:', calllog) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
78 print('cached value (unfiltered):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
79 vars(repo).get('testcachedfoobar', 'NOCACHE')) |
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
80 |
28762
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
81 print('') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
82 print('= first access on "visible" view, should do a call') |
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
83 visibleview = repo.filtered('visible') |
28762
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
84 print('cached value ("visible" view):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
85 vars(visibleview).get('testcachedfoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
86 print('access:', visibleview.testcachedfoobar) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
87 print('calllog:', calllog) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
88 print('cached value (unfiltered):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
89 vars(repo).get('testcachedfoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
90 print('cached value ("visible" view):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
91 vars(visibleview).get('testcachedfoobar', 'NOCACHE')) |
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
92 |
28762
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
93 print('') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
94 print('= second access on "visible view", should not do call') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
95 print('access:', visibleview.testcachedfoobar) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
96 print('calllog:', calllog) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
97 print('cached value (unfiltered):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
98 vars(repo).get('testcachedfoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
99 print('cached value ("visible" view):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
100 vars(visibleview).get('testcachedfoobar', 'NOCACHE')) |
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
101 |
28762
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
102 print('') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
103 print('= no effect on other view') |
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
104 immutableview = repo.filtered('immutable') |
28762
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
105 print('cached value ("immutable" view):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
106 vars(immutableview).get('testcachedfoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
107 print('access:', immutableview.testcachedfoobar) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
108 print('calllog:', calllog) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
109 print('cached value (unfiltered):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
110 vars(repo).get('testcachedfoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
111 print('cached value ("visible" view):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
112 vars(visibleview).get('testcachedfoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
113 print('cached value ("immutable" view):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
114 vars(immutableview).get('testcachedfoobar', 'NOCACHE')) |
19845
a1237a4b437d
repoview: make propertycache.setcache compatible with repoview
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
115 |
19846
9789670992d6
repoview: have unfilteredpropertycache using the underlying cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19845
diff
changeset
|
116 # unfiltered property cache test |
28762
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
117 print('') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
118 print('') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
119 print('=== unfiltered property cache ===') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
120 print('') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
121 print('unficalllog:', unficalllog) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
122 print('cached value (unfiltered): ', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
123 vars(repo).get('testcachedunfifoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
124 print('cached value ("visible" view): ', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
125 vars(visibleview).get('testcachedunfifoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
126 print('cached value ("immutable" view):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
127 vars(immutableview).get('testcachedunfifoobar', 'NOCACHE')) |
19846
9789670992d6
repoview: have unfilteredpropertycache using the underlying cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19845
diff
changeset
|
128 |
28762
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
129 print('') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
130 print('= first access on unfiltered, should do a call') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
131 print('access (unfiltered):', repo.testcachedunfifoobar) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
132 print('unficalllog:', unficalllog) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
133 print('cached value (unfiltered): ', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
134 vars(repo).get('testcachedunfifoobar', 'NOCACHE')) |
19846
9789670992d6
repoview: have unfilteredpropertycache using the underlying cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19845
diff
changeset
|
135 |
28762
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
136 print('') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
137 print('= second access on unfiltered, should not do call') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
138 print('access (unfiltered):', repo.testcachedunfifoobar) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
139 print('unficalllog:', unficalllog) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
140 print('cached value (unfiltered): ', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
141 vars(repo).get('testcachedunfifoobar', 'NOCACHE')) |
19846
9789670992d6
repoview: have unfilteredpropertycache using the underlying cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19845
diff
changeset
|
142 |
28762
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
143 print('') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
144 print('= access on view should use the unfiltered cache') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
145 print('access (unfiltered): ', repo.testcachedunfifoobar) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
146 print('access ("visible" view): ', visibleview.testcachedunfifoobar) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
147 print('access ("immutable" view):', immutableview.testcachedunfifoobar) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
148 print('unficalllog:', unficalllog) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
149 print('cached value (unfiltered): ', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
150 vars(repo).get('testcachedunfifoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
151 print('cached value ("visible" view): ', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
152 vars(visibleview).get('testcachedunfifoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
153 print('cached value ("immutable" view):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
154 vars(immutableview).get('testcachedunfifoobar', 'NOCACHE')) |
19846
9789670992d6
repoview: have unfilteredpropertycache using the underlying cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19845
diff
changeset
|
155 |
28762
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
156 print('') |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
157 print('= even if we clear the unfiltered cache') |
19846
9789670992d6
repoview: have unfilteredpropertycache using the underlying cache
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19845
diff
changeset
|
158 del repo.__dict__['testcachedunfifoobar'] |
28762
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
159 print('cached value (unfiltered): ', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
160 vars(repo).get('testcachedunfifoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
161 print('cached value ("visible" view): ', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
162 vars(visibleview).get('testcachedunfifoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
163 print('cached value ("immutable" view):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
164 vars(immutableview).get('testcachedunfifoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
165 print('unficalllog:', unficalllog) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
166 print('access ("visible" view): ', visibleview.testcachedunfifoobar) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
167 print('unficalllog:', unficalllog) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
168 print('cached value (unfiltered): ', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
169 vars(repo).get('testcachedunfifoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
170 print('cached value ("visible" view): ', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
171 vars(visibleview).get('testcachedunfifoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
172 print('cached value ("immutable" view):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
173 vars(immutableview).get('testcachedunfifoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
174 print('access ("immutable" view):', immutableview.testcachedunfifoobar) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
175 print('unficalllog:', unficalllog) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
176 print('cached value (unfiltered): ', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
177 vars(repo).get('testcachedunfifoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
178 print('cached value ("visible" view): ', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
179 vars(visibleview).get('testcachedunfifoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
180 print('cached value ("immutable" view):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
181 vars(immutableview).get('testcachedunfifoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
182 print('access (unfiltered): ', repo.testcachedunfifoobar) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
183 print('unficalllog:', unficalllog) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
184 print('cached value (unfiltered): ', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
185 vars(repo).get('testcachedunfifoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
186 print('cached value ("visible" view): ', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
187 vars(visibleview).get('testcachedunfifoobar', 'NOCACHE')) |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
188 print('cached value ("immutable" view):', |
61ba04ae6a2f
py3: use print_function in test-propertycache.py
Robert Stanca <robert.stanca7@gmail.com>
parents:
28755
diff
changeset
|
189 vars(immutableview).get('testcachedunfifoobar', 'NOCACHE')) |