author | Pierre-Yves David <pierre-yves.david@octobus.net> |
Thu, 14 Jan 2021 11:46:30 +0100 | |
changeset 46266 | e8b0c519dfb3 |
parent 45771 | f90a5c211251 |
child 48369 | 35f1ecd84bd0 |
permissions | -rw-r--r-- |
37421
9984488550ea
tests: disable test-audit-path.t with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37101
diff
changeset
|
1 |
The simple store doesn't escape paths robustly and can't store paths |
9984488550ea
tests: disable test-audit-path.t with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37101
diff
changeset
|
2 |
with periods, etc. So much of this test fails with it. |
9984488550ea
tests: disable test-audit-path.t with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37101
diff
changeset
|
3 |
#require no-reposimplestore |
9984488550ea
tests: disable test-audit-path.t with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37101
diff
changeset
|
4 |
|
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
5 |
$ hg init |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
6 |
|
16908
6a997aacba5d
tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
16350
diff
changeset
|
7 |
audit of .hg |
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
8 |
|
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
9 |
$ hg add .hg/00changelog.i |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
34942
diff
changeset
|
10 |
abort: path contains illegal component: .hg/00changelog.i |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
11855
diff
changeset
|
11 |
[255] |
5158
d316124ebbea
Make audit_path more stringent.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
12 |
|
16908
6a997aacba5d
tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
16350
diff
changeset
|
13 |
#if symlink |
6a997aacba5d
tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
16350
diff
changeset
|
14 |
|
6a997aacba5d
tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
16350
diff
changeset
|
15 |
Symlinks |
6a997aacba5d
tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
16350
diff
changeset
|
16 |
|
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
17 |
$ mkdir a |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
18 |
$ echo a > a/a |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
19 |
$ hg ci -Ama |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
20 |
adding a/a |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
21 |
$ ln -s a b |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
22 |
$ echo b > a/b |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
23 |
$ hg add b/b |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
34942
diff
changeset
|
24 |
abort: path 'b/b' traverses symbolic link 'b' |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
11855
diff
changeset
|
25 |
[255] |
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
26 |
$ hg add b |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
27 |
|
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
28 |
should still fail - maybe |
5158
d316124ebbea
Make audit_path more stringent.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
29 |
|
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
30 |
$ hg add b/b |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
34942
diff
changeset
|
31 |
abort: path 'b/b' traverses symbolic link 'b' |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
11855
diff
changeset
|
32 |
[255] |
5158
d316124ebbea
Make audit_path more stringent.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
33 |
|
27234
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
34 |
$ hg commit -m 'add symlink b' |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
35 |
|
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
36 |
|
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
37 |
Test symlink traversing when accessing history: |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
38 |
----------------------------------------------- |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
39 |
|
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
40 |
(build a changeset where the path exists as a directory) |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
41 |
|
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
42 |
$ hg up 0 |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
43 |
0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
44 |
$ mkdir b |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
45 |
$ echo c > b/a |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
46 |
$ hg add b/a |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
47 |
$ hg ci -m 'add directory b' |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
48 |
created new head |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
49 |
|
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
50 |
Test that hg cat does not do anything wrong the working copy has 'b' as directory |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
51 |
|
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
52 |
$ hg cat b/a |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
53 |
c |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
54 |
$ hg cat -r "desc(directory)" b/a |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
55 |
c |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
56 |
$ hg cat -r "desc(symlink)" b/a |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
57 |
b/a: no such file in rev bc151a1f53bd |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
58 |
[1] |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
59 |
|
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
60 |
Test that hg cat does not do anything wrong the working copy has 'b' as a symlink (issue4749) |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
61 |
|
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
62 |
$ hg up 'desc(symlink)' |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
63 |
1 files updated, 0 files merged, 1 files removed, 0 files unresolved |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
64 |
$ hg cat b/a |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
65 |
b/a: no such file in rev bc151a1f53bd |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
66 |
[1] |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
67 |
$ hg cat -r "desc(directory)" b/a |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
68 |
c |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
69 |
$ hg cat -r "desc(symlink)" b/a |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
70 |
b/a: no such file in rev bc151a1f53bd |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
71 |
[1] |
15c6eb0a51bd
context: use a the nofsauditor when matching file in history (issue4749)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
18506
diff
changeset
|
72 |
|
16908
6a997aacba5d
tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
16350
diff
changeset
|
73 |
#endif |
6a997aacba5d
tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
16350
diff
changeset
|
74 |
|
6a997aacba5d
tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
16350
diff
changeset
|
75 |
|
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
76 |
unbundle tampered bundle |
5158
d316124ebbea
Make audit_path more stringent.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
77 |
|
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
78 |
$ hg init target |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
79 |
$ cd target |
16350
4f795f5fbb0b
tests: make tests work if directory contains special characters
Thomas Arendsen Hein <thomas@intevation.de>
parents:
15521
diff
changeset
|
80 |
$ hg unbundle "$TESTDIR/bundles/tampered.hg" |
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
81 |
adding changesets |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
82 |
adding manifests |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
83 |
adding file changes |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
84 |
added 5 changesets with 6 changes to 6 files (+4 heads) |
39480
89630d0b3e23
phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents:
37421
diff
changeset
|
85 |
new changesets b7da9bf6b037:fc1393d727bc (5 drafts) |
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
86 |
(run 'hg heads' to see heads, 'hg merge' to merge) |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
87 |
|
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
88 |
attack .hg/test |
7554
11a4eb81fb4f
test-audit-path: add more tests (issue 1450)
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
5158
diff
changeset
|
89 |
|
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
90 |
$ hg manifest -r0 |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
91 |
.hg/test |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
92 |
$ hg update -Cr0 |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
34942
diff
changeset
|
93 |
abort: path contains illegal component: .hg/test |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
11855
diff
changeset
|
94 |
[255] |
7554
11a4eb81fb4f
test-audit-path: add more tests (issue 1450)
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
5158
diff
changeset
|
95 |
|
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
96 |
attack foo/.hg/test |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
97 |
|
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
98 |
$ hg manifest -r1 |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
99 |
foo/.hg/test |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
100 |
$ hg update -Cr1 |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
34942
diff
changeset
|
101 |
abort: path 'foo/.hg/test' is inside nested repo 'foo' |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
11855
diff
changeset
|
102 |
[255] |
7554
11a4eb81fb4f
test-audit-path: add more tests (issue 1450)
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
5158
diff
changeset
|
103 |
|
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
104 |
attack back/test where back symlinks to .. |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
105 |
|
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
106 |
$ hg manifest -r2 |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
107 |
back |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
108 |
back/test |
16908
6a997aacba5d
tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
16350
diff
changeset
|
109 |
#if symlink |
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
110 |
$ hg update -Cr2 |
34942
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34833
diff
changeset
|
111 |
abort: path 'back/test' traverses symbolic link 'back' |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
11855
diff
changeset
|
112 |
[255] |
16908
6a997aacba5d
tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
16350
diff
changeset
|
113 |
#else |
6a997aacba5d
tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
16350
diff
changeset
|
114 |
('back' will be a file and cause some other system specific error) |
6a997aacba5d
tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
16350
diff
changeset
|
115 |
$ hg update -Cr2 |
37101
656ac240f392
context: skip path conflicts by default when clearing unknown file (issue5776)
Matt Harbison <matt_harbison@yahoo.com>
parents:
35393
diff
changeset
|
116 |
abort: $TESTTMP/target/back/test: $ENOTDIR$ |
16908
6a997aacba5d
tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
16350
diff
changeset
|
117 |
[255] |
6a997aacba5d
tests: convert some 'hghave symlink' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
16350
diff
changeset
|
118 |
#endif |
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
119 |
|
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
120 |
attack ../test |
7554
11a4eb81fb4f
test-audit-path: add more tests (issue 1450)
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
5158
diff
changeset
|
121 |
|
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
122 |
$ hg manifest -r3 |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
123 |
../test |
34832
d6009d1488e8
tests: add test demonstrating regression in path audit
Mark Thomas <mbthomas@fb.com>
parents:
34689
diff
changeset
|
124 |
$ mkdir ../test |
d6009d1488e8
tests: add test demonstrating regression in path audit
Mark Thomas <mbthomas@fb.com>
parents:
34689
diff
changeset
|
125 |
$ echo data > ../test/file |
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
126 |
$ hg update -Cr3 |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
34942
diff
changeset
|
127 |
abort: path contains illegal component: ../test |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
11855
diff
changeset
|
128 |
[255] |
34832
d6009d1488e8
tests: add test demonstrating regression in path audit
Mark Thomas <mbthomas@fb.com>
parents:
34689
diff
changeset
|
129 |
$ cat ../test/file |
34833
07bbb208a924
context: audit paths before clearing unknown files and dirs
Mark Thomas <mbthomas@fb.com>
parents:
34832
diff
changeset
|
130 |
data |
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
131 |
|
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
132 |
attack /tmp/test |
7554
11a4eb81fb4f
test-audit-path: add more tests (issue 1450)
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
5158
diff
changeset
|
133 |
|
11855
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
134 |
$ hg manifest -r4 |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
135 |
/tmp/test |
054b0d9c3f0c
tests: unify test-audit-path
Martin Geisler <mg@lazybytes.net>
parents:
7681
diff
changeset
|
136 |
$ hg update -Cr4 |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
34942
diff
changeset
|
137 |
abort: path contains illegal component: /tmp/test |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
11855
diff
changeset
|
138 |
[255] |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
16908
diff
changeset
|
139 |
|
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
16908
diff
changeset
|
140 |
$ cd .. |
33632
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
141 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
142 |
Test symlink traversal on merge: |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
143 |
-------------------------------- |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
144 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
145 |
#if symlink |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
146 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
147 |
set up symlink hell |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
148 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
149 |
$ mkdir merge-symlink-out |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
150 |
$ hg init merge-symlink |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
151 |
$ cd merge-symlink |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
152 |
$ touch base |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
153 |
$ hg commit -qAm base |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
154 |
$ ln -s ../merge-symlink-out a |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
155 |
$ hg commit -qAm 'symlink a -> ../merge-symlink-out' |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
156 |
$ hg up -q 0 |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
157 |
$ mkdir a |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
158 |
$ touch a/poisoned |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
159 |
$ hg commit -qAm 'file a/poisoned' |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
160 |
$ hg log -G -T '{rev}: {desc}\n' |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
161 |
@ 2: file a/poisoned |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
162 |
| |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
163 |
| o 1: symlink a -> ../merge-symlink-out |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
164 |
|/ |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
165 |
o 0: base |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
166 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
167 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
168 |
try trivial merge |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
169 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
170 |
$ hg up -qC 1 |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
171 |
$ hg merge 2 |
34942
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34833
diff
changeset
|
172 |
abort: path 'a/poisoned' traverses symbolic link 'a' |
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34833
diff
changeset
|
173 |
[255] |
33632
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
174 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
175 |
try rebase onto other revision: cache of audited paths should be discarded, |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
176 |
and the rebase should fail (issue5628) |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
177 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
178 |
$ hg up -qC 2 |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
179 |
$ hg rebase -s 2 -d 1 --config extensions.rebase= |
45771
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
39480
diff
changeset
|
180 |
rebasing 2:e73c21d6b244 tip "file a/poisoned" |
34942
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34833
diff
changeset
|
181 |
abort: path 'a/poisoned' traverses symbolic link 'a' |
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34833
diff
changeset
|
182 |
[255] |
33632
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
183 |
$ ls ../merge-symlink-out |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
184 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
185 |
$ cd .. |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
186 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
187 |
Test symlink traversal on update: |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
188 |
--------------------------------- |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
189 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
190 |
$ mkdir update-symlink-out |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
191 |
$ hg init update-symlink |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
192 |
$ cd update-symlink |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
193 |
$ ln -s ../update-symlink-out a |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
194 |
$ hg commit -qAm 'symlink a -> ../update-symlink-out' |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
195 |
$ hg rm a |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
196 |
$ mkdir a && touch a/b |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
197 |
$ hg ci -qAm 'file a/b' a/b |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
198 |
$ hg up -qC 0 |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
199 |
$ hg rm a |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
200 |
$ mkdir a && touch a/c |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
201 |
$ hg ci -qAm 'rm a, file a/c' |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
202 |
$ hg log -G -T '{rev}: {desc}\n' |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
203 |
@ 2: rm a, file a/c |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
204 |
| |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
205 |
| o 1: file a/b |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
206 |
|/ |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
207 |
o 0: symlink a -> ../update-symlink-out |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
208 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
209 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
210 |
try linear update where symlink already exists: |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
211 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
212 |
$ hg up -qC 0 |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
213 |
$ hg up 1 |
34942
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34833
diff
changeset
|
214 |
abort: path 'a/b' traverses symbolic link 'a' |
33632
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
215 |
[255] |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
216 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
217 |
try linear update including symlinked directory and its content: paths are |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
218 |
audited first by calculateupdates(), where no symlink is created so both |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
219 |
'a' and 'a/b' are taken as good paths. still applyupdates() should fail. |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
220 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
221 |
$ hg up -qC null |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
222 |
$ hg up 1 |
34942
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34833
diff
changeset
|
223 |
abort: path 'a/b' traverses symbolic link 'a' |
33633
20bac46f7744
pathauditor: disable cache of audited paths by default (issue5628)
Yuya Nishihara <yuya@tcha.org>
parents:
33632
diff
changeset
|
224 |
[255] |
33632
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
225 |
$ ls ../update-symlink-out |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
226 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
227 |
try branch update replacing directory with symlink, and its content: the |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
228 |
path 'a' is audited as a directory first, which should be audited again as |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
229 |
a symlink. |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
230 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
231 |
$ rm -f a |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
232 |
$ hg up -qC 2 |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
233 |
$ hg up 1 |
34942
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34833
diff
changeset
|
234 |
abort: path 'a/b' traverses symbolic link 'a' |
33633
20bac46f7744
pathauditor: disable cache of audited paths by default (issue5628)
Yuya Nishihara <yuya@tcha.org>
parents:
33632
diff
changeset
|
235 |
[255] |
33632
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
236 |
$ ls ../update-symlink-out |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
237 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
238 |
$ cd .. |
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
239 |
|
0134d839444b
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
27234
diff
changeset
|
240 |
#endif |