Mercurial > hg
annotate tests/test-inherit-mode.t @ 24545:9e0c67e84896
json: implement {tags} template
Tags is pretty easy to implement. Let's start there.
The output is slightly different from `hg tags -Tjson`. For reference,
the CLI has the following output:
[
{
"node": "e2049974f9a23176c2addb61d8f5b86e0d620490",
"rev": 29880,
"tag": "tip",
"type": ""
},
...
]
Our output has the format:
{
"node": "0aeb19ea57a6d223bacddda3871cb78f24b06510",
"tags": [
{
"node": "e2049974f9a23176c2addb61d8f5b86e0d620490",
"tag": "tag1",
"date": [1427775457.0, 25200]
},
...
]
}
"rev" is omitted because it isn't a reliable identifier. We shouldn't
be exposing them in web APIs and giving the impression it remotely
resembles a stable identifier. Perhaps we could one day hide this behind
a config option (it might be useful to expose when running servers
locally).
The "type" of the tag isn't defined because this information isn't yet
exposed to the hgweb templater (it could be in a follow-up) and because
it is questionable whether different types should be exposed at all.
(Should the web interface really be exposing "local" tags?)
We use an object for the outer type instead of Array for a few reasons.
First, it is extensible. If we ever need to throw more global properties
into the output, we can do that without breaking backwards compatibility
(property additions should be backwards compatible). Second, uniformity
in web APIs is nice. Having everything return objects seems much saner than
a mix of array and object. Third, there are security issues with arrays
in older browsers. The JSON web services world almost never uses arrays
as the main type for this reason.
Another possibly controversial part about this patch is how dates are
defined. While JSON has a Date type, it is based on the JavaScript Date
type, which is widely considered a pile of garbage. It is a non-starter
for this reason.
Many of Mercurial's built-in date filters drop seconds resolution. So
that's a non-starter as well, since we want the API to be lossless where
possible. rfc3339date, rfc822date, isodatesec, and date are all lossless.
However, they each require the client to perform string parsing on top of
JSON decoding. While date parsing libraries are pretty ubiquitous, some
languages don't have them out of the box. However, pretty much every
programming language can deal with UNIX timestamps (which are just
integers or floats). So, we choose to use Mercurial's internal date
representation, which in JSON is modeled as float seconds since UNIX
epoch and an integer timezone offset from UTC (keep in mind
JavaScript/JSON models all "Numbers" as double prevision floating point
numbers, so there isn't a difference between ints and floats in JSON).
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Tue, 31 Mar 2015 14:52:21 -0700 |
parents | d251da5e0e84 |
children | 4414d500604f |
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 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
13 > import os, sys |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
14 > |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
15 > allnames = [] |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
16 > isdir = {} |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
17 > 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
|
18 > 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
|
19 > 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
|
20 > isdir[name] = 1 |
4c4aeaab2339
check-code: add 'no tab indent' check for unified tests
Adrian Buehlmann <adrian@cadifra.com>
parents:
12096
diff
changeset
|
21 > allnames.append(name) |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
22 > 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
|
23 > 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
|
24 > allnames.append(name) |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
25 > allnames.sort() |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
26 > for name in allnames: |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
27 > suffix = name in isdir and '/' or '' |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
28 > print '%05o %s%s' % (os.lstat(name).st_mode & 07777, name, suffix) |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
29 > EOF |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
30 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
31 $ cat >mode.py <<EOF |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
32 > import sys |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
33 > import os |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
34 > print '%05o' % os.lstat(sys.argv[1]).st_mode |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
35 > EOF |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
36 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
37 $ umask 077 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
38 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
39 $ hg init repo |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
40 $ cd repo |
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 $ chmod 0770 .hg/store |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
43 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
44 before commit |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
45 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
|
46 store is setgid |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
47 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
48 $ python ../printmodes.py . |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
49 00700 ./.hg/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
50 00600 ./.hg/00changelog.i |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
51 00600 ./.hg/requires |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
52 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
|
53 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
54 $ mkdir dir |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
55 $ touch foo dir/bar |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
56 $ hg ci -qAm 'add files' |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
57 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
58 after commit |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
59 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
|
60 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
|
61 (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
|
62 new directories are setgid |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
63 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
64 $ python ../printmodes.py . |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
65 00700 ./.hg/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
66 00600 ./.hg/00changelog.i |
15886
a5917346c72e
localrepo: update branchcache in a more reliable way
Mads Kiilerich <mads@kiilerich.com>
parents:
15483
diff
changeset
|
67 00770 ./.hg/cache/ |
20185
7d4219512823
branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents:
18382
diff
changeset
|
68 00660 ./.hg/cache/branch2-served |
23786
7d63398fbfd1
branchmap: use revbranchcache when updating branch map
Mads Kiilerich <madski@unity3d.com>
parents:
22080
diff
changeset
|
69 00660 ./.hg/cache/rbc-names-v1 |
7d63398fbfd1
branchmap: use revbranchcache when updating branch map
Mads Kiilerich <madski@unity3d.com>
parents:
22080
diff
changeset
|
70 00660 ./.hg/cache/rbc-revs-v1 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
71 00660 ./.hg/dirstate |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
72 00660 ./.hg/last-message.txt |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
73 00600 ./.hg/requires |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
74 00770 ./.hg/store/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
75 00660 ./.hg/store/00changelog.i |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
76 00660 ./.hg/store/00manifest.i |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
77 00770 ./.hg/store/data/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
78 00770 ./.hg/store/data/dir/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
79 00660 ./.hg/store/data/dir/bar.i |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
80 00660 ./.hg/store/data/foo.i |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
81 00660 ./.hg/store/fncache |
15483
9ae766f2f452
phases: set new commit in 1-phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
15455
diff
changeset
|
82 00660 ./.hg/store/phaseroots |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
83 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
|
84 00660 ./.hg/store/undo.backupfiles |
15455
c6f87bdab2a1
phases: add rollback support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
14266
diff
changeset
|
85 00660 ./.hg/store/undo.phaseroots |
14266
89e7d35e0ef0
fix bookmarks rollback behavior
Alexander Solovyov <alexander@solovyov.net>
parents:
13272
diff
changeset
|
86 00660 ./.hg/undo.bookmarks |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
87 00660 ./.hg/undo.branch |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
88 00660 ./.hg/undo.desc |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
89 00660 ./.hg/undo.dirstate |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
90 00700 ./dir/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
91 00600 ./dir/bar |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
92 00600 ./foo |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
93 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
94 $ umask 007 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
95 $ hg init ../push |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
96 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
97 before push |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
98 group can write everything |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
99 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
100 $ python ../printmodes.py ../push |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
101 00770 ../push/.hg/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
102 00660 ../push/.hg/00changelog.i |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
103 00660 ../push/.hg/requires |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
104 00770 ../push/.hg/store/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
105 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
106 $ umask 077 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
107 $ hg -q push ../push |
6064
c608f67a87c0
add test-inherit-mode
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
108 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
109 after push |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
110 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
|
111 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
112 $ python ../printmodes.py ../push |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
113 00770 ../push/.hg/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
114 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
|
115 00770 ../push/.hg/cache/ |
20185
7d4219512823
branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents:
18382
diff
changeset
|
116 00660 ../push/.hg/cache/branch2-base |
23786
7d63398fbfd1
branchmap: use revbranchcache when updating branch map
Mads Kiilerich <madski@unity3d.com>
parents:
22080
diff
changeset
|
117 00660 ../push/.hg/cache/rbc-names-v1 |
7d63398fbfd1
branchmap: use revbranchcache when updating branch map
Mads Kiilerich <madski@unity3d.com>
parents:
22080
diff
changeset
|
118 00660 ../push/.hg/cache/rbc-revs-v1 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
119 00660 ../push/.hg/requires |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
120 00770 ../push/.hg/store/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
121 00660 ../push/.hg/store/00changelog.i |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
122 00660 ../push/.hg/store/00manifest.i |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
123 00770 ../push/.hg/store/data/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
124 00770 ../push/.hg/store/data/dir/ |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
125 00660 ../push/.hg/store/data/dir/bar.i |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
126 00660 ../push/.hg/store/data/foo.i |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
127 00660 ../push/.hg/store/fncache |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
128 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
|
129 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
|
130 00660 ../push/.hg/store/undo.phaseroots |
14266
89e7d35e0ef0
fix bookmarks rollback behavior
Alexander Solovyov <alexander@solovyov.net>
parents:
13272
diff
changeset
|
131 00660 ../push/.hg/undo.bookmarks |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
132 00660 ../push/.hg/undo.branch |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
133 00660 ../push/.hg/undo.desc |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
134 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
|
135 |
12096
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
136 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
137 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
|
138 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
|
139 just check that directories have the same mode. |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
140 |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
141 $ cd .. |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
142 $ hg init setgid |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
143 $ cd setgid |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
144 $ 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
|
145 $ 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
|
146 $ mkdir dir |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
147 $ touch dir/file |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
148 $ hg ci -qAm 'add dir/file' |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
149 $ storemode=`python ../mode.py .hg/store` |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
150 $ dirmode=`python ../mode.py .hg/store/data/dir` |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
151 $ if [ "$storemode" != "$dirmode" ]; then |
bb69460e9d2d
tests: unify test-inherit-mode
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
6301
diff
changeset
|
152 > 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
|
153 > fi |
6ef3107c661e
tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents:
16225
diff
changeset
|
154 $ cd .. |
6ef3107c661e
tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents:
16225
diff
changeset
|
155 |
6ef3107c661e
tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents:
16225
diff
changeset
|
156 $ cd .. # g-s dir |