Mercurial > hg
annotate tests/test-inherit-mode.t @ 38486:4c0683655599
namespaces: let namespaces override singlenode() definition
Some namespaces have multiple nodes per name (meaning that their
namemap() returns multiple nodes). One such namespace is the "topics"
namespace (from the evolve repo). We also have our own internal
namespace at Google (for review units) that has multiple nodes per
name. These namespaces may not want to use the default "pick highest
revnum" resolution that we currently use when resolving a name to a
single node. As an example, they may decide that `hg co <name>` should
check out a commit that's last in some sense even if an earlier commit
had just been amended and thus had a higher revnum [1]. This patch
gives the namespace the option to continue to return multiple nodes
and to override how the best node is picked. Allowing namespaces to
override that may also be useful as an optimization (it may be cheaper
for the namespace to find just that node).
I have been arguing (in D3715) for using all the nodes returned from
namemap() when resolving the symbol to a revset, so e.g. `hg log -r
stable` would resolve to *all* nodes on stable, not just the one with
the highest revnum (except that I don't actually think we should
change it for the branch namespace because of BC). Most people seem
opposed to that. If we decide not to do it, I think we can deprecate
the namemap() function in favor of the new singlenode() (I find it
weird to have namespaces, like the branch namespace, where namemap()
isn't nodemap()'s inverse). I therefore think this patch makes sense
regardless of what we decide on that issue.
[1] Actually, even the branch namespace would have wanted to override
singlenode() if it had supported multiple nodes. That's because
closes branch heads are mostly ignored, so "hg co default" will
not check out the highest-revnum node if that's a closed head.
Differential Revision: https://phab.mercurial-scm.org/D3852
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Tue, 26 Jun 2018 10:02:01 -0700 |
parents | 7542e97c7867 |
children | 0a57945aaf7f |
rev | line source |
---|---|
22046
7a9cbb315d84
tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents:
20185
diff
changeset
|
1 #require unix-permissions |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
2 |
22046
7a9cbb315d84
tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents:
20185
diff
changeset
|
3 test that new files created in .hg inherit the permissions from .hg/store |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
4 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
5 $ mkdir dir |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
6 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
7 just in case somebody has a strange $TMPDIR |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
8 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
9 $ chmod g-s dir |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
10 $ cd dir |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
11 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
12 $ cat >printmodes.py <<EOF |
33989
266192d4666b
tests: update test-inherit-mode to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33721
diff
changeset
|
13 > from __future__ import absolute_import, print_function |
266192d4666b
tests: update test-inherit-mode to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33721
diff
changeset
|
14 > import os |
266192d4666b
tests: update test-inherit-mode to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33721
diff
changeset
|
15 > import sys |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
16 > |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
17 > allnames = [] |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
18 > isdir = {} |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
19 > for root, dirs, files in os.walk(sys.argv[1]): |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
20 > for d in dirs: |
12743
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12096
diff
changeset
|
21 > name = os.path.join(root, d) |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12096
diff
changeset
|
22 > isdir[name] = 1 |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12096
diff
changeset
|
23 > allnames.append(name) |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
24 > for f in files: |
12743
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12096
diff
changeset
|
25 > name = os.path.join(root, f) |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12096
diff
changeset
|
26 > allnames.append(name) |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
27 > allnames.sort() |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
28 > for name in allnames: |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
29 > suffix = name in isdir and '/' or '' |
33989
266192d4666b
tests: update test-inherit-mode to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33721
diff
changeset
|
30 > print('%05o %s%s' % (os.lstat(name).st_mode & 0o7777, name, suffix)) |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
31 > EOF |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
32 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
33 $ cat >mode.py <<EOF |
33989
266192d4666b
tests: update test-inherit-mode to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33721
diff
changeset
|
34 > from __future__ import absolute_import, print_function |
266192d4666b
tests: update test-inherit-mode to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33721
diff
changeset
|
35 > import os |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
36 > import sys |
33721
24849d53697d
tests: clean up many print statements to be print functions instead
Augie Fackler <augie@google.com>
parents:
33427
diff
changeset
|
37 > print('%05o' % os.lstat(sys.argv[1]).st_mode) |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
38 > EOF |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
39 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
40 $ umask 077 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
41 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
42 $ hg init repo |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
43 $ cd repo |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
44 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
45 $ chmod 0770 .hg/store |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
46 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
47 before commit |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
48 store can be written by the group, other files cannot |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
49 store is setgid |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
50 |
32940
75be14993fda
cleanup: use $PYTHON to run python in many more tests
Augie Fackler <augie@google.com>
parents:
32268
diff
changeset
|
51 $ $PYTHON ../printmodes.py . |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
52 00700 ./.hg/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
53 00600 ./.hg/00changelog.i |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
54 00600 ./.hg/requires |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
55 00770 ./.hg/store/ |
6113
8ca25589e960
try to fix test-inherit-mode on HFS+
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
6073
diff
changeset
|
56 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
57 $ mkdir dir |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
58 $ touch foo dir/bar |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
59 $ hg ci -qAm 'add files' |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
60 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
61 after commit |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
62 working dir files can only be written by the owner |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
63 files created in .hg can be written by the group |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
64 (in particular, store/**, dirstate, branch cache file, undo files) |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
65 new directories are setgid |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
66 |
32940
75be14993fda
cleanup: use $PYTHON to run python in many more tests
Augie Fackler <augie@google.com>
parents:
32268
diff
changeset
|
67 $ $PYTHON ../printmodes.py . |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
68 00700 ./.hg/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
69 00600 ./.hg/00changelog.i |
15886
a5917346c72e
localrepo: update branchcache in a more reliable way
Mads Kiilerich <mads@kiilerich.com>
parents:
15483
diff
changeset
|
70 00770 ./.hg/cache/ |
20185
7d4219512823
branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents:
18382
diff
changeset
|
71 00660 ./.hg/cache/branch2-served |
23786
7d63398fbfd1
branchmap: use revbranchcache when updating branch map
Mads Kiilerich <madski@unity3d.com>
parents:
22080
diff
changeset
|
72 00660 ./.hg/cache/rbc-names-v1 |
7d63398fbfd1
branchmap: use revbranchcache when updating branch map
Mads Kiilerich <madski@unity3d.com>
parents:
22080
diff
changeset
|
73 00660 ./.hg/cache/rbc-revs-v1 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
74 00660 ./.hg/dirstate |
33427
1bdafe1111ce
tests: add extra output for fsmonitor at checking under .hg
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
32940
diff
changeset
|
75 00660 ./.hg/fsmonitor.state (fsmonitor !) |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
76 00660 ./.hg/last-message.txt |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
77 00600 ./.hg/requires |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
78 00770 ./.hg/store/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
79 00660 ./.hg/store/00changelog.i |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
80 00660 ./.hg/store/00manifest.i |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
81 00770 ./.hg/store/data/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
82 00770 ./.hg/store/data/dir/ |
37416
7542e97c7867
tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37415
diff
changeset
|
83 00660 ./.hg/store/data/dir/bar.i (reporevlogstore !) |
7542e97c7867
tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37415
diff
changeset
|
84 00660 ./.hg/store/data/foo.i (reporevlogstore !) |
7542e97c7867
tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37415
diff
changeset
|
85 00770 ./.hg/store/data/dir/bar/ (reposimplestore !) |
7542e97c7867
tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37415
diff
changeset
|
86 00660 ./.hg/store/data/dir/bar/b80de5d138758541c5f05265ad144ab9fa86d1db (reposimplestore !) |
7542e97c7867
tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37415
diff
changeset
|
87 00660 ./.hg/store/data/dir/bar/index (reposimplestore !) |
7542e97c7867
tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37415
diff
changeset
|
88 00770 ./.hg/store/data/foo/ (reposimplestore !) |
7542e97c7867
tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37415
diff
changeset
|
89 00660 ./.hg/store/data/foo/b80de5d138758541c5f05265ad144ab9fa86d1db (reposimplestore !) |
7542e97c7867
tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37415
diff
changeset
|
90 00660 ./.hg/store/data/foo/index (reposimplestore !) |
37415
c2c8962a9465
simplestore: use a custom store for the simple store repo
Gregory Szorc <gregory.szorc@gmail.com>
parents:
33989
diff
changeset
|
91 00660 ./.hg/store/fncache (repofncache !) |
15483
9ae766f2f452
phases: set new commit in 1-phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
15455
diff
changeset
|
92 00660 ./.hg/store/phaseroots |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
93 00660 ./.hg/store/undo |
23904
d251da5e0e84
transaction: include backup file in the "undo" transaction
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23786
diff
changeset
|
94 00660 ./.hg/store/undo.backupfiles |
15455
c6f87bdab2a1
phases: add rollback support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
14266
diff
changeset
|
95 00660 ./.hg/store/undo.phaseroots |
26998
4414d500604f
localrepo: put bookmark move following commit in one transaction
Laurent Charignon <lcharignon@fb.com>
parents:
23904
diff
changeset
|
96 00660 ./.hg/undo.backup.dirstate |
14266
89e7d35e0ef0
fix bookmarks rollback behavior
Alexander Solovyov <alexander@solovyov.net>
parents:
13272
diff
changeset
|
97 00660 ./.hg/undo.bookmarks |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
98 00660 ./.hg/undo.branch |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
99 00660 ./.hg/undo.desc |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
100 00660 ./.hg/undo.dirstate |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
101 00700 ./dir/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
102 00600 ./dir/bar |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
103 00600 ./foo |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
104 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
105 $ umask 007 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
106 $ hg init ../push |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
107 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
108 before push |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
109 group can write everything |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
110 |
32940
75be14993fda
cleanup: use $PYTHON to run python in many more tests
Augie Fackler <augie@google.com>
parents:
32268
diff
changeset
|
111 $ $PYTHON ../printmodes.py ../push |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
112 00770 ../push/.hg/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
113 00660 ../push/.hg/00changelog.i |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
114 00660 ../push/.hg/requires |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
115 00770 ../push/.hg/store/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
116 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
117 $ umask 077 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
118 $ hg -q push ../push |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
119 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
120 after push |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
121 group can still write everything |
6113
8ca25589e960
try to fix test-inherit-mode on HFS+
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
6073
diff
changeset
|
122 |
32940
75be14993fda
cleanup: use $PYTHON to run python in many more tests
Augie Fackler <augie@google.com>
parents:
32268
diff
changeset
|
123 $ $PYTHON ../printmodes.py ../push |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
124 00770 ../push/.hg/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
125 00660 ../push/.hg/00changelog.i |
13272
5ccdca7df211
move tags.cache and branchheads.cache to a collected cache folder .hg/cache/
jfh <jason@jasonfharris.com>
parents:
12743
diff
changeset
|
126 00770 ../push/.hg/cache/ |
20185
7d4219512823
branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents:
18382
diff
changeset
|
127 00660 ../push/.hg/cache/branch2-base |
29191
ad1ce3c7af72
localrepo: use dirstate savebackup instead of handling dirstate file manually
Mateusz Kwapich <mitrandir@fb.com>
parents:
26998
diff
changeset
|
128 00660 ../push/.hg/dirstate |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
129 00660 ../push/.hg/requires |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
130 00770 ../push/.hg/store/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
131 00660 ../push/.hg/store/00changelog.i |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
132 00660 ../push/.hg/store/00manifest.i |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
133 00770 ../push/.hg/store/data/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
134 00770 ../push/.hg/store/data/dir/ |
37416
7542e97c7867
tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37415
diff
changeset
|
135 00660 ../push/.hg/store/data/dir/bar.i (reporevlogstore !) |
7542e97c7867
tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37415
diff
changeset
|
136 00660 ../push/.hg/store/data/foo.i (reporevlogstore !) |
7542e97c7867
tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37415
diff
changeset
|
137 00770 ../push/.hg/store/data/dir/bar/ (reposimplestore !) |
7542e97c7867
tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37415
diff
changeset
|
138 00660 ../push/.hg/store/data/dir/bar/b80de5d138758541c5f05265ad144ab9fa86d1db (reposimplestore !) |
7542e97c7867
tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37415
diff
changeset
|
139 00660 ../push/.hg/store/data/dir/bar/index (reposimplestore !) |
7542e97c7867
tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37415
diff
changeset
|
140 00770 ../push/.hg/store/data/foo/ (reposimplestore !) |
7542e97c7867
tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37415
diff
changeset
|
141 00660 ../push/.hg/store/data/foo/b80de5d138758541c5f05265ad144ab9fa86d1db (reposimplestore !) |
7542e97c7867
tests: conditionalize tests for various repo features
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37415
diff
changeset
|
142 00660 ../push/.hg/store/data/foo/index (reposimplestore !) |
37415
c2c8962a9465
simplestore: use a custom store for the simple store repo
Gregory Szorc <gregory.szorc@gmail.com>
parents:
33989
diff
changeset
|
143 00660 ../push/.hg/store/fncache (repofncache !) |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
144 00660 ../push/.hg/store/undo |
23904
d251da5e0e84
transaction: include backup file in the "undo" transaction
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23786
diff
changeset
|
145 00660 ../push/.hg/store/undo.backupfiles |
15455
c6f87bdab2a1
phases: add rollback support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
14266
diff
changeset
|
146 00660 ../push/.hg/store/undo.phaseroots |
14266
89e7d35e0ef0
fix bookmarks rollback behavior
Alexander Solovyov <alexander@solovyov.net>
parents:
13272
diff
changeset
|
147 00660 ../push/.hg/undo.bookmarks |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
148 00660 ../push/.hg/undo.branch |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
149 00660 ../push/.hg/undo.desc |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
150 00660 ../push/.hg/undo.dirstate |
6113
8ca25589e960
try to fix test-inherit-mode on HFS+
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
6073
diff
changeset
|
151 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
152 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
153 Test that we don't lose the setgid bit when we call chmod. |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
154 Not all systems support setgid directories (e.g. HFS+), so |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
155 just check that directories have the same mode. |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
156 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
157 $ cd .. |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
158 $ hg init setgid |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
159 $ cd setgid |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
160 $ chmod g+rwx .hg/store |
16225
7cf8de5a82d8
tests: ignore the return code of chmod in test-inherit-mode
Javi Merino <cibervicho@gmail.com>
parents:
16025
diff
changeset
|
161 $ chmod g+s .hg/store 2> /dev/null || true |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
162 $ mkdir dir |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
163 $ touch dir/file |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
164 $ hg ci -qAm 'add dir/file' |
32940
75be14993fda
cleanup: use $PYTHON to run python in many more tests
Augie Fackler <augie@google.com>
parents:
32268
diff
changeset
|
165 $ storemode=`$PYTHON ../mode.py .hg/store` |
75be14993fda
cleanup: use $PYTHON to run python in many more tests
Augie Fackler <augie@google.com>
parents:
32268
diff
changeset
|
166 $ dirmode=`$PYTHON ../mode.py .hg/store/data/dir` |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
167 $ if [ "$storemode" != "$dirmode" ]; then |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
168 > echo "$storemode != $dirmode" |
16912
6ef3107c661e
tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents:
16225
diff
changeset
|
169 > fi |
6ef3107c661e
tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents:
16225
diff
changeset
|
170 $ cd .. |
6ef3107c661e
tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents:
16225
diff
changeset
|
171 |
6ef3107c661e
tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents:
16225
diff
changeset
|
172 $ cd .. # g-s dir |