annotate tests/test-archive.t @ 44120:35cd52c4a5cc

py3: conditionalize test-flagprocessor.t on Python 3.8 For reasons I don't understand, Python 3.8 is outputting a different lint in the traceback than prior Pythons. The lines in question are: flagutil.addflagprocessor( REVIDX_NOOP, (noopdonothingread, noopdonothing, validatehash,) ) Python <3.8 prints the 2nd line but 3.8 the first line. Perhaps Python changed its traceback logic to always print the first line of a multiple line expression? Whatever the case, with this change, the test now passes on Python 3.8. Differential Revision: https://phab.mercurial-scm.org/D7945
author Gregory Szorc <gregory.szorc@gmail.com>
date Sat, 18 Jan 2020 10:12:41 -0800
parents 21e05aabef8c
children 862025f108c7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 19870
diff changeset
1 #require serve
15446
c5c9ca3719f9 tests: use 'hghave serve' to guard tests that requires serve daemon management
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
2
13956
ffb5c09ba822 tests: remove redundant mkdir
Martin Geisler <mg@lazybytes.net>
parents: 13149
diff changeset
3 $ hg init test
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
4 $ cd test
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
5 $ echo foo>foo
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
6 $ hg commit -Am 1 -d '1 0'
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
7 adding foo
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
8 $ echo bar>bar
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
9 $ hg commit -Am 2 -d '2 0'
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
10 adding bar
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
11 $ mkdir baz
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
12 $ echo bletch>baz/bletch
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
13 $ hg commit -Am 3 -d '1000000000 0'
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
14 adding baz/bletch
23231
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
15 $ hg init subrepo
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
16 $ touch subrepo/sub
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
17 $ hg -q -R subrepo ci -Am "init subrepo"
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
18 $ echo "subrepo = subrepo" > .hgsub
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
19 $ hg add .hgsub
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
20 $ hg ci -m "add subrepo"
34815
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
21
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
22 $ cat >> $HGRCPATH <<EOF
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
23 > [extensions]
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
24 > share =
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
25 > EOF
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
26
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
27 hg subrepos are shared when the parent repo is shared
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
28
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
29 $ cd ..
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
30 $ hg share test shared1
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
31 updating working directory
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
32 sharing subrepo subrepo from $TESTTMP/test/subrepo
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
33 5 files updated, 0 files merged, 0 files removed, 0 files unresolved
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
34 $ cat shared1/subrepo/.hg/sharedpath
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34899
diff changeset
35 $TESTTMP/test/subrepo/.hg (no-eol)
34815
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
36
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
37 hg subrepos are shared into existence on demand if the parent was shared
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
38
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
39 $ hg clone -qr 1 test clone1
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
40 $ hg share clone1 share2
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
41 updating working directory
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
42 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
43 $ hg -R clone1 -q pull
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
44 $ hg -R share2 update tip
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
45 sharing subrepo subrepo from $TESTTMP/test/subrepo
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
46 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
47 $ cat share2/subrepo/.hg/sharedpath
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34899
diff changeset
48 $TESTTMP/test/subrepo/.hg (no-eol)
34815
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
49 $ echo 'mod' > share2/subrepo/sub
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
50 $ hg -R share2 ci -Sqm 'subrepo mod'
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
51 $ hg -R clone1 update -C tip
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
52 cloning subrepo subrepo from $TESTTMP/test/subrepo
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
53 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
34879
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
54 $ find share2 | egrep 'sharedpath|00.+\.i' | sort
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
55 share2/.hg/sharedpath
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
56 share2/subrepo/.hg/sharedpath
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
57 $ hg -R share2 unshare
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
58 unsharing subrepo 'subrepo'
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
59 $ find share2 | egrep 'sharedpath|00.+\.i' | sort
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
60 share2/.hg/00changelog.i
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
61 share2/.hg/sharedpath.old
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
62 share2/.hg/store/00changelog.i
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
63 share2/.hg/store/00manifest.i
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
64 share2/subrepo/.hg/00changelog.i
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
65 share2/subrepo/.hg/sharedpath.old
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
66 share2/subrepo/.hg/store/00changelog.i
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
67 share2/subrepo/.hg/store/00manifest.i
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
68 $ hg -R share2/subrepo log -r tip -T compact
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
69 1[tip] 559dcc9bfa65 1970-01-01 00:00 +0000 test
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
70 subrepo mod
7d51a7792f52 subrepo: implement 'unshare' for Mercurial subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 34815
diff changeset
71
34815
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
72 $ rm -rf clone1
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
73
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
74 $ hg clone -qr 1 test clone1
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
75 $ hg share clone1 shared3
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
76 updating working directory
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
77 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
78 $ hg -R clone1 -q pull
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
79 $ hg -R shared3 archive --config ui.archivemeta=False -r tip -S archive
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
80 sharing subrepo subrepo from $TESTTMP/test/subrepo
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
81 $ cat shared3/subrepo/.hg/sharedpath
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34899
diff changeset
82 $TESTTMP/test/subrepo/.hg (no-eol)
34815
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
83 $ diff -r archive test
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
84 Only in test: .hg
34899
1e2dc50da17b tests: add some (?) output lines to catch "helpful" output from Solaris diff
Augie Fackler <augie@google.com>
parents: 34879
diff changeset
85 Common subdirectories: archive/baz and test/baz (?)
1e2dc50da17b tests: add some (?) output lines to catch "helpful" output from Solaris diff
Augie Fackler <augie@google.com>
parents: 34879
diff changeset
86 Common subdirectories: archive/subrepo and test/subrepo (?)
34815
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
87 Only in test/subrepo: .hg
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
88 [1]
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
89 $ rm -rf archive
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
90
68e0bcb90357 subrepo: share instead of clone if the parent repo is shared (issue5675) (BC)
Matt Harbison <matt_harbison@yahoo.com>
parents: 34654
diff changeset
91 $ cd test
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
92 $ echo "[web]" >> .hg/hgrc
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
93 $ echo "name = test-archive" >> .hg/hgrc
23232
a0ccb66f344d hgweb: fix a crash when using web.archivesubrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23231
diff changeset
94 $ echo "archivesubrepos = True" >> .hg/hgrc
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
95 $ cp .hg/hgrc .hg/hgrc-base
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
96 > test_archtype() {
38215
f715faeaceee config: rename allow_archive to allow-archive
David Demelier <markand@malikania.fr>
parents: 37009
diff changeset
97 > echo "allow-archive = $1" >> .hg/hgrc
34654
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
98 > test_archtype_run "$@"
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
99 > }
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
100 > test_archtype_deprecated() {
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
101 > echo "allow$1 = True" >> .hg/hgrc
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
102 > test_archtype_run "$@"
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
103 > }
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
104 > test_archtype_run() {
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
105 > hg serve -p $HGPORT -d --pid-file=hg.pid -E errors.log \
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
106 > --config extensions.blackbox= --config blackbox.track=develwarn
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
107 > cat hg.pid >> $DAEMON_PIDS
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
108 > echo % $1 allowed should give 200
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
109 > get-with-headers.py --bodyfile body localhost:$HGPORT "archive/tip.$2" -
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
110 > f --size --sha1 body
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
111 > echo % $3 and $4 disallowed should both give 403
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
112 > get-with-headers.py --bodyfile body localhost:$HGPORT "archive/tip.$3" -
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
113 > f --size --sha1 body
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
114 > get-with-headers.py --bodyfile body localhost:$HGPORT "archive/tip.$4" -
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
115 > f --size --sha1 body
25474
8c14f87bd0ae tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents: 25472
diff changeset
116 > killdaemons.py
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
117 > cat errors.log
34654
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
118 > hg blackbox --config extensions.blackbox= --config blackbox.track=
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
119 > cp .hg/hgrc-base .hg/hgrc
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
120 > }
1166
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
121
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
122 check http return codes
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
123
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
124 $ test_archtype gz tar.gz tar.bz2 zip
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
125 % gz allowed should give 200
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
126 200 Script output follows
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
127 content-disposition: attachment; filename=test-archive-1701ef1f1510.tar.gz
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
128 content-type: application/x-gzip
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
129 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
130 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
131 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
132 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
133
43071
830eacef67f8 tests: make tarball output conditional on Python version
Gregory Szorc <gregory.szorc@gmail.com>
parents: 42940
diff changeset
134 body: size=408, sha1=8fa06531bddecc365a9f5edb0f88b65974bfe505 (no-py38 !)
43107
5e9188f054d9 tests: use proper Python 3.8 feature
Gregory Szorc <gregory.szorc@gmail.com>
parents: 43071
diff changeset
135 body: size=506, sha1=70926a04cb8887d0bcccf5380488100a10222def (py38 !)
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
136 % tar.bz2 and zip disallowed should both give 403
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
137 403 Archive type not allowed: bz2
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
138 content-type: text/html; charset=ascii
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
139 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
140 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
141 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
142 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
143
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
144 body: size=1451, sha1=4c5cf0f574446c44feb7f88f4e0e2a56bd92c352
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
145 403 Archive type not allowed: zip
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
146 content-type: text/html; charset=ascii
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
147 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
148 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
149 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
150 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
151
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
152 body: size=1451, sha1=cbfa5574b337348bfd0564cc534474d002e7d6c7
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
153 $ test_archtype bz2 tar.bz2 zip tar.gz
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
154 % bz2 allowed should give 200
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
155 200 Script output follows
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
156 content-disposition: attachment; filename=test-archive-1701ef1f1510.tar.bz2
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
157 content-type: application/x-bzip2
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
158 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
159 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
160 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
161 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
162
43071
830eacef67f8 tests: make tarball output conditional on Python version
Gregory Szorc <gregory.szorc@gmail.com>
parents: 42940
diff changeset
163 body: size=426, sha1=8d87f5aba6e14f1bfea6c232985982c278b2fb0b (no-py38 !)
830eacef67f8 tests: make tarball output conditional on Python version
Gregory Szorc <gregory.szorc@gmail.com>
parents: 42940
diff changeset
164 body: size=506, sha1=1bd1f8e8d3701704bd4385038bd9c09b81c77f4e (py38 !)
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
165 % zip and tar.gz disallowed should both give 403
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
166 403 Archive type not allowed: zip
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
167 content-type: text/html; charset=ascii
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
168 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
169 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
170 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
171 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
172
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
173 body: size=1451, sha1=cbfa5574b337348bfd0564cc534474d002e7d6c7
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
174 403 Archive type not allowed: gz
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
175 content-type: text/html; charset=ascii
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
176 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
177 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
178 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
179 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
180
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
181 body: size=1450, sha1=71f0b12d59f85fdcfe8ff493e2dc66863f2f7734
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
182 $ test_archtype zip zip tar.gz tar.bz2
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
183 % zip allowed should give 200
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
184 200 Script output follows
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
185 content-disposition: attachment; filename=test-archive-1701ef1f1510.zip
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
186 content-type: application/zip
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
187 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
188 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
189 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
190 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
191
41316
8df3471931cc tests: add size and hash for Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents: 40305
diff changeset
192 body: size=(1377|1461|1489), sha1=(677b14d3d048778d5eb5552c14a67e6192068650|be6d3983aa13dfe930361b2569291cdedd02b537|1897e496871aa89ad685a92b936f5fa0d008b9e8) (re)
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
193 % tar.gz and tar.bz2 disallowed should both give 403
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
194 403 Archive type not allowed: gz
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
195 content-type: text/html; charset=ascii
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
196 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
197 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
198 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
199 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
200
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
201 body: size=1450, sha1=71f0b12d59f85fdcfe8ff493e2dc66863f2f7734
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
202 403 Archive type not allowed: bz2
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
203 content-type: text/html; charset=ascii
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
204 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
205 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
206 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
207 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
208
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
209 body: size=1451, sha1=4c5cf0f574446c44feb7f88f4e0e2a56bd92c352
7029
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
210
34654
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
211 check http return codes (with deprecated option)
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
212
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
213 $ test_archtype_deprecated gz tar.gz tar.bz2 zip
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
214 % gz allowed should give 200
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
215 200 Script output follows
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
216 content-disposition: attachment; filename=test-archive-1701ef1f1510.tar.gz
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
217 content-type: application/x-gzip
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
218 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
219 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
220 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
221 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
222
43071
830eacef67f8 tests: make tarball output conditional on Python version
Gregory Szorc <gregory.szorc@gmail.com>
parents: 42940
diff changeset
223 body: size=408, sha1=8fa06531bddecc365a9f5edb0f88b65974bfe505 (no-py38 !)
830eacef67f8 tests: make tarball output conditional on Python version
Gregory Szorc <gregory.szorc@gmail.com>
parents: 42940
diff changeset
224 body: size=506, sha1=70926a04cb8887d0bcccf5380488100a10222def (py38 !)
34654
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
225 % tar.bz2 and zip disallowed should both give 403
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
226 403 Archive type not allowed: bz2
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
227 content-type: text/html; charset=ascii
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
228 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
229 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
230 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
231 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
232
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
233 body: size=1451, sha1=4c5cf0f574446c44feb7f88f4e0e2a56bd92c352
34654
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
234 403 Archive type not allowed: zip
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
235 content-type: text/html; charset=ascii
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
236 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
237 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
238 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
239 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
240
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
241 body: size=1451, sha1=cbfa5574b337348bfd0564cc534474d002e7d6c7
34654
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
242 $ test_archtype_deprecated bz2 tar.bz2 zip tar.gz
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
243 % bz2 allowed should give 200
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
244 200 Script output follows
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
245 content-disposition: attachment; filename=test-archive-1701ef1f1510.tar.bz2
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
246 content-type: application/x-bzip2
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
247 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
248 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
249 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
250 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
251
43071
830eacef67f8 tests: make tarball output conditional on Python version
Gregory Szorc <gregory.szorc@gmail.com>
parents: 42940
diff changeset
252 body: size=426, sha1=8d87f5aba6e14f1bfea6c232985982c278b2fb0b (no-py38 !)
830eacef67f8 tests: make tarball output conditional on Python version
Gregory Szorc <gregory.szorc@gmail.com>
parents: 42940
diff changeset
253 body: size=506, sha1=1bd1f8e8d3701704bd4385038bd9c09b81c77f4e (py38 !)
34654
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
254 % zip and tar.gz disallowed should both give 403
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
255 403 Archive type not allowed: zip
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
256 content-type: text/html; charset=ascii
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
257 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
258 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
259 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
260 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
261
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
262 body: size=1451, sha1=cbfa5574b337348bfd0564cc534474d002e7d6c7
34654
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
263 403 Archive type not allowed: gz
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
264 content-type: text/html; charset=ascii
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
265 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
266 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
267 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
268 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
269
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
270 body: size=1450, sha1=71f0b12d59f85fdcfe8ff493e2dc66863f2f7734
34654
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
271 $ test_archtype_deprecated zip zip tar.gz tar.bz2
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
272 % zip allowed should give 200
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
273 200 Script output follows
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
274 content-disposition: attachment; filename=test-archive-1701ef1f1510.zip
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
275 content-type: application/zip
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
276 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
277 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
278 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
279 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
280
41316
8df3471931cc tests: add size and hash for Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents: 40305
diff changeset
281 body: size=(1377|1461|1489), sha1=(677b14d3d048778d5eb5552c14a67e6192068650|be6d3983aa13dfe930361b2569291cdedd02b537|1897e496871aa89ad685a92b936f5fa0d008b9e8) (re)
34654
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
282 % tar.gz and tar.bz2 disallowed should both give 403
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
283 403 Archive type not allowed: gz
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
284 content-type: text/html; charset=ascii
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
285 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
286 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
287 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
288 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
289
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
290 body: size=1450, sha1=71f0b12d59f85fdcfe8ff493e2dc66863f2f7734
34654
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
291 403 Archive type not allowed: bz2
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
292 content-type: text/html; charset=ascii
37008
16203c6079e7 tests: use $HTTP_DATE$ for Date header
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36874
diff changeset
293 date: $HTTP_DATE$
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
294 etag: W/"*" (glob)
37009
5890e5872f36 hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37008
diff changeset
295 server: testing stub value
36874
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
296 transfer-encoding: chunked
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
297
40193f977a8b tests: additional test coverage of archive web command
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35393
diff changeset
298 body: size=1451, sha1=4c5cf0f574446c44feb7f88f4e0e2a56bd92c352
34654
4182d2065e7a configitems: drop redundant default of web.allow<archtype>
Yuya Nishihara <yuya@tcha.org>
parents: 33944
diff changeset
299
38215
f715faeaceee config: rename allow_archive to allow-archive
David Demelier <markand@malikania.fr>
parents: 37009
diff changeset
300 $ echo "allow-archive = gz bz2 zip" >> .hg/hgrc
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
301 $ hg serve -p $HGPORT -d --pid-file=hg.pid -E errors.log
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
302 $ cat hg.pid >> $DAEMON_PIDS
7029
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
303
30747
4259df518223 hgweb: test the order of archive links
Anton Shestakov <av6@dwimlabs.net>
parents: 29562
diff changeset
304 check archive links' order
4259df518223 hgweb: test the order of archive links
Anton Shestakov <av6@dwimlabs.net>
parents: 29562
diff changeset
305
4259df518223 hgweb: test the order of archive links
Anton Shestakov <av6@dwimlabs.net>
parents: 29562
diff changeset
306 $ get-with-headers.py localhost:$HGPORT "?revcount=1" | grep '/archive/tip.'
4259df518223 hgweb: test the order of archive links
Anton Shestakov <av6@dwimlabs.net>
parents: 29562
diff changeset
307 <a href="/archive/tip.zip">zip</a>
4259df518223 hgweb: test the order of archive links
Anton Shestakov <av6@dwimlabs.net>
parents: 29562
diff changeset
308 <a href="/archive/tip.tar.gz">gz</a>
4259df518223 hgweb: test the order of archive links
Anton Shestakov <av6@dwimlabs.net>
parents: 29562
diff changeset
309 <a href="/archive/tip.tar.bz2">bz2</a>
4259df518223 hgweb: test the order of archive links
Anton Shestakov <av6@dwimlabs.net>
parents: 29562
diff changeset
310
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
311 invalid arch type should give 404
1166
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
312
25472
4d2b9b304ad0 tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents: 25125
diff changeset
313 $ get-with-headers.py localhost:$HGPORT "archive/tip.invalid" | head -n 1
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
314 404 Unsupported archive type: None
7029
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
315
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
316 $ TIP=`hg id -v | cut -f1 -d' '`
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
317 $ QTIP=`hg id -q`
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
318 $ cat > getarchive.py <<EOF
29179
ce1c6ab15807 tests: test-archive.t use absolute_import
timeless <timeless@mozdev.org>
parents: 29178
diff changeset
319 > from __future__ import absolute_import
ce1c6ab15807 tests: test-archive.t use absolute_import
timeless <timeless@mozdev.org>
parents: 29178
diff changeset
320 > import os
ce1c6ab15807 tests: test-archive.t use absolute_import
timeless <timeless@mozdev.org>
parents: 29178
diff changeset
321 > import sys
29183
6def44ab4769 tests: test-archive.t use mercurial.util for urllib compat
timeless <timeless@mozdev.org>
parents: 29182
diff changeset
322 > from mercurial import (
6def44ab4769 tests: test-archive.t use mercurial.util for urllib compat
timeless <timeless@mozdev.org>
parents: 29182
diff changeset
323 > util,
6def44ab4769 tests: test-archive.t use mercurial.util for urllib compat
timeless <timeless@mozdev.org>
parents: 29182
diff changeset
324 > )
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
325 > try:
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
326 > # Set stdout to binary mode for win32 platforms
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
327 > import msvcrt
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
328 > msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY)
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
329 > except ImportError:
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
330 > pass
18770
dcb6a99e82ff test-archive: gracefully handle HTTPErrors on get-with-headers
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 17743
diff changeset
331 > if len(sys.argv) <= 3:
dcb6a99e82ff test-archive: gracefully handle HTTPErrors on get-with-headers
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 17743
diff changeset
332 > node, archive = sys.argv[1:]
dcb6a99e82ff test-archive: gracefully handle HTTPErrors on get-with-headers
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 17743
diff changeset
333 > requeststr = 'cmd=archive;node=%s;type=%s' % (node, archive)
dcb6a99e82ff test-archive: gracefully handle HTTPErrors on get-with-headers
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 17743
diff changeset
334 > else:
dcb6a99e82ff test-archive: gracefully handle HTTPErrors on get-with-headers
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 17743
diff changeset
335 > node, archive, file = sys.argv[1:]
dcb6a99e82ff test-archive: gracefully handle HTTPErrors on get-with-headers
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 17743
diff changeset
336 > requeststr = 'cmd=archive;node=%s;type=%s;file=%s' % (node, archive, file)
dcb6a99e82ff test-archive: gracefully handle HTTPErrors on get-with-headers
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 17743
diff changeset
337 > try:
29182
6c0b1d964537 tests: test-archive.t use sys.stdout.buffer for binary output in py3
timeless <timeless@mozdev.org>
parents: 29179
diff changeset
338 > stdout = sys.stdout.buffer
6c0b1d964537 tests: test-archive.t use sys.stdout.buffer for binary output in py3
timeless <timeless@mozdev.org>
parents: 29179
diff changeset
339 > except AttributeError:
6c0b1d964537 tests: test-archive.t use sys.stdout.buffer for binary output in py3
timeless <timeless@mozdev.org>
parents: 29179
diff changeset
340 > stdout = sys.stdout
6c0b1d964537 tests: test-archive.t use sys.stdout.buffer for binary output in py3
timeless <timeless@mozdev.org>
parents: 29179
diff changeset
341 > try:
31008
636cf3f7620d tests: use LOCALIP
Jun Wu <quark@fb.com>
parents: 30844
diff changeset
342 > f = util.urlreq.urlopen('http://$LOCALIP:%s/?%s'
18770
dcb6a99e82ff test-archive: gracefully handle HTTPErrors on get-with-headers
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 17743
diff changeset
343 > % (os.environ['HGPORT'], requeststr))
29182
6c0b1d964537 tests: test-archive.t use sys.stdout.buffer for binary output in py3
timeless <timeless@mozdev.org>
parents: 29179
diff changeset
344 > stdout.write(f.read())
29183
6def44ab4769 tests: test-archive.t use mercurial.util for urllib compat
timeless <timeless@mozdev.org>
parents: 29182
diff changeset
345 > except util.urlerr.httperror as e:
18770
dcb6a99e82ff test-archive: gracefully handle HTTPErrors on get-with-headers
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 17743
diff changeset
346 > sys.stderr.write(str(e) + '\n')
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
347 > EOF
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38215
diff changeset
348 $ "$PYTHON" getarchive.py "$TIP" gz | gunzip | tar tf - 2>/dev/null
23231
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
349 test-archive-1701ef1f1510/.hg_archival.txt
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
350 test-archive-1701ef1f1510/.hgsub
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
351 test-archive-1701ef1f1510/.hgsubstate
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
352 test-archive-1701ef1f1510/bar
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
353 test-archive-1701ef1f1510/baz/bletch
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
354 test-archive-1701ef1f1510/foo
23232
a0ccb66f344d hgweb: fix a crash when using web.archivesubrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23231
diff changeset
355 test-archive-1701ef1f1510/subrepo/sub
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38215
diff changeset
356 $ "$PYTHON" getarchive.py "$TIP" bz2 | bunzip2 | tar tf - 2>/dev/null
23231
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
357 test-archive-1701ef1f1510/.hg_archival.txt
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
358 test-archive-1701ef1f1510/.hgsub
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
359 test-archive-1701ef1f1510/.hgsubstate
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
360 test-archive-1701ef1f1510/bar
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
361 test-archive-1701ef1f1510/baz/bletch
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
362 test-archive-1701ef1f1510/foo
23232
a0ccb66f344d hgweb: fix a crash when using web.archivesubrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23231
diff changeset
363 test-archive-1701ef1f1510/subrepo/sub
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38215
diff changeset
364 $ "$PYTHON" getarchive.py "$TIP" zip > archive.zip
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12339
diff changeset
365 $ unzip -t archive.zip
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
366 Archive: archive.zip
29562
cda10ff3175a tests: glob whitespace between path and OK in unzip(1) output
Augie Fackler <augie@google.com>
parents: 29183
diff changeset
367 testing: test-archive-1701ef1f1510/.hg_archival.txt*OK (glob)
cda10ff3175a tests: glob whitespace between path and OK in unzip(1) output
Augie Fackler <augie@google.com>
parents: 29183
diff changeset
368 testing: test-archive-1701ef1f1510/.hgsub*OK (glob)
cda10ff3175a tests: glob whitespace between path and OK in unzip(1) output
Augie Fackler <augie@google.com>
parents: 29183
diff changeset
369 testing: test-archive-1701ef1f1510/.hgsubstate*OK (glob)
cda10ff3175a tests: glob whitespace between path and OK in unzip(1) output
Augie Fackler <augie@google.com>
parents: 29183
diff changeset
370 testing: test-archive-1701ef1f1510/bar*OK (glob)
cda10ff3175a tests: glob whitespace between path and OK in unzip(1) output
Augie Fackler <augie@google.com>
parents: 29183
diff changeset
371 testing: test-archive-1701ef1f1510/baz/bletch*OK (glob)
cda10ff3175a tests: glob whitespace between path and OK in unzip(1) output
Augie Fackler <augie@google.com>
parents: 29183
diff changeset
372 testing: test-archive-1701ef1f1510/foo*OK (glob)
cda10ff3175a tests: glob whitespace between path and OK in unzip(1) output
Augie Fackler <augie@google.com>
parents: 29183
diff changeset
373 testing: test-archive-1701ef1f1510/subrepo/sub*OK (glob)
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
374 No errors detected in compressed data of archive.zip.
1166
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
375
18771
bb38f4f78104 hgweb: teach archive how to download a specific directory or file
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18770
diff changeset
376 test that we can download single directories and files
bb38f4f78104 hgweb: teach archive how to download a specific directory or file
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18770
diff changeset
377
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38215
diff changeset
378 $ "$PYTHON" getarchive.py "$TIP" gz baz | gunzip | tar tf - 2>/dev/null
23231
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
379 test-archive-1701ef1f1510/baz/bletch
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38215
diff changeset
380 $ "$PYTHON" getarchive.py "$TIP" gz foo | gunzip | tar tf - 2>/dev/null
23231
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
381 test-archive-1701ef1f1510/foo
18771
bb38f4f78104 hgweb: teach archive how to download a specific directory or file
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18770
diff changeset
382
18968
7d2a7f8e9da4 hgweb: respond HTTP_NOT_FOUND when an archive request does not match any files
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18967
diff changeset
383 test that we detect file patterns that match no files
7d2a7f8e9da4 hgweb: respond HTTP_NOT_FOUND when an archive request does not match any files
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18967
diff changeset
384
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38215
diff changeset
385 $ "$PYTHON" getarchive.py "$TIP" gz foobar
18968
7d2a7f8e9da4 hgweb: respond HTTP_NOT_FOUND when an archive request does not match any files
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18967
diff changeset
386 HTTP Error 404: file(s) not found: foobar
7d2a7f8e9da4 hgweb: respond HTTP_NOT_FOUND when an archive request does not match any files
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18967
diff changeset
387
18771
bb38f4f78104 hgweb: teach archive how to download a specific directory or file
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18770
diff changeset
388 test that we reject unsafe patterns
bb38f4f78104 hgweb: teach archive how to download a specific directory or file
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18770
diff changeset
389
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38215
diff changeset
390 $ "$PYTHON" getarchive.py "$TIP" gz relre:baz
18968
7d2a7f8e9da4 hgweb: respond HTTP_NOT_FOUND when an archive request does not match any files
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18967
diff changeset
391 HTTP Error 404: file(s) not found: relre:baz
18771
bb38f4f78104 hgweb: teach archive how to download a specific directory or file
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18770
diff changeset
392
25474
8c14f87bd0ae tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents: 25472
diff changeset
393 $ killdaemons.py
7344
58fd3c718ca4 tests: add killdaemons helper script
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
394
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
395 $ hg archive -t tar test.tar
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
396 $ tar tf test.tar
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
397 test/.hg_archival.txt
23231
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
398 test/.hgsub
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
399 test/.hgsubstate
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
400 test/bar
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
401 test/baz/bletch
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
402 test/foo
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
403
25125
bd625cd4e5e7 progress: get the extremely verbose output out of default debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23645
diff changeset
404 $ hg archive --debug -t tbz2 -X baz test.tar.bz2 --config progress.debug=true
23231
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
405 archiving: 0/4 files (0.00%)
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
406 archiving: .hgsub 1/4 files (25.00%)
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
407 archiving: .hgsubstate 2/4 files (50.00%)
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
408 archiving: bar 3/4 files (75.00%)
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
409 archiving: foo 4/4 files (100.00%)
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
410 $ bunzip2 -dc test.tar.bz2 | tar tf - 2>/dev/null
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
411 test/.hg_archival.txt
23231
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
412 test/.hgsub
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
413 test/.hgsubstate
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
414 test/bar
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
415 test/foo
2114
98cc126f9f3f update tests after changing archival code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1929
diff changeset
416
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
417 $ hg archive -t tgz -p %b-%h test-%h.tar.gz
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12339
diff changeset
418 $ gzip -dc test-$QTIP.tar.gz | tar tf - 2>/dev/null
23231
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
419 test-1701ef1f1510/.hg_archival.txt
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
420 test-1701ef1f1510/.hgsub
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
421 test-1701ef1f1510/.hgsubstate
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
422 test-1701ef1f1510/bar
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
423 test-1701ef1f1510/baz/bletch
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
424 test-1701ef1f1510/foo
2114
98cc126f9f3f update tests after changing archival code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1929
diff changeset
425
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
426 $ hg archive autodetected_test.tar
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
427 $ tar tf autodetected_test.tar
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
428 autodetected_test/.hg_archival.txt
23231
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
429 autodetected_test/.hgsub
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
430 autodetected_test/.hgsubstate
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
431 autodetected_test/bar
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
432 autodetected_test/baz/bletch
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
433 autodetected_test/foo
10650
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
434
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
435 The '-t' should override autodetection
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
436
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
437 $ hg archive -t tar autodetect_override_test.zip
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
438 $ tar tf autodetect_override_test.zip
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
439 autodetect_override_test.zip/.hg_archival.txt
23231
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
440 autodetect_override_test.zip/.hgsub
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
441 autodetect_override_test.zip/.hgsubstate
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
442 autodetect_override_test.zip/bar
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
443 autodetect_override_test.zip/baz/bletch
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
444 autodetect_override_test.zip/foo
10650
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
445
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
446 $ for ext in tar tar.gz tgz tar.bz2 tbz2 zip; do
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
447 > hg archive auto_test.$ext
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
448 > if [ -d auto_test.$ext ]; then
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
449 > echo "extension $ext was not autodetected."
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
450 > fi
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
451 > done
10650
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
452
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
453 $ cat > md5comp.py <<EOF
33874
3b1add641232 tests: update test-archive to always use hashlib
Augie Fackler <raf@durin42.com>
parents: 32940
diff changeset
454 > from __future__ import absolute_import, print_function
3b1add641232 tests: update test-archive to always use hashlib
Augie Fackler <raf@durin42.com>
parents: 32940
diff changeset
455 > import hashlib
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
456 > import sys
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
457 > f1, f2 = sys.argv[1:3]
33874
3b1add641232 tests: update test-archive to always use hashlib
Augie Fackler <raf@durin42.com>
parents: 32940
diff changeset
458 > h1 = hashlib.md5(open(f1, 'rb').read()).hexdigest()
3b1add641232 tests: update test-archive to always use hashlib
Augie Fackler <raf@durin42.com>
parents: 32940
diff changeset
459 > h2 = hashlib.md5(open(f2, 'rb').read()).hexdigest()
29177
df6b5c6d252a tests: test-archive.t use print_function
timeless <timeless@mozdev.org>
parents: 28597
diff changeset
460 > print(h1 == h2 or "md5 differ: " + repr((h1, h2)))
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
461 > EOF
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
462
13140
217ae7d5c8ee test-archive: whitespace cleanup
Martin Geisler <mg@aragost.com>
parents: 12398
diff changeset
463 archive name is stored in the archive, so create similar archives and
217ae7d5c8ee test-archive: whitespace cleanup
Martin Geisler <mg@aragost.com>
parents: 12398
diff changeset
464 rename them afterwards.
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
465
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
466 $ hg archive -t tgz tip.tar.gz
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
467 $ mv tip.tar.gz tip1.tar.gz
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
468 $ sleep 1
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
469 $ hg archive -t tgz tip.tar.gz
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
470 $ mv tip.tar.gz tip2.tar.gz
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38215
diff changeset
471 $ "$PYTHON" md5comp.py tip1.tar.gz tip2.tar.gz
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
472 True
4653
ca023b63ba1f archive: test md5 consistency
Brendan Cully <brendan@kublai.com>
parents: 2571
diff changeset
473
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
474 $ hg archive -t zip -p /illegal test.zip
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
475 abort: archive prefix contains illegal components
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 11853
diff changeset
476 [255]
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
477 $ hg archive -t zip -p very/../bad test.zip
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
478
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
479 $ hg archive --config ui.archivemeta=false -t zip -r 2 test.zip
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
480 $ unzip -t test.zip
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
481 Archive: test.zip
29562
cda10ff3175a tests: glob whitespace between path and OK in unzip(1) output
Augie Fackler <augie@google.com>
parents: 29183
diff changeset
482 testing: test/bar*OK (glob)
cda10ff3175a tests: glob whitespace between path and OK in unzip(1) output
Augie Fackler <augie@google.com>
parents: 29183
diff changeset
483 testing: test/baz/bletch*OK (glob)
cda10ff3175a tests: glob whitespace between path and OK in unzip(1) output
Augie Fackler <augie@google.com>
parents: 29183
diff changeset
484 testing: test/foo*OK (glob)
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
485 No errors detected in compressed data of test.zip.
4653
ca023b63ba1f archive: test md5 consistency
Brendan Cully <brendan@kublai.com>
parents: 2571
diff changeset
486
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12339
diff changeset
487 $ hg archive -t tar - | tar tf - 2>/dev/null
23231
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
488 test-1701ef1f1510/.hg_archival.txt
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
489 test-1701ef1f1510/.hgsub
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
490 test-1701ef1f1510/.hgsubstate
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
491 test-1701ef1f1510/bar
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
492 test-1701ef1f1510/baz/bletch
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
493 test-1701ef1f1510/foo
2114
98cc126f9f3f update tests after changing archival code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1929
diff changeset
494
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
495 $ hg archive -r 0 -t tar rev-%r.tar
19870
055d5b3f83b1 tests: fix void and invalid test in test-archive.t
Mads Kiilerich <madski@unity3d.com>
parents: 18968
diff changeset
496 $ [ -f rev-0.tar ]
2476
0f7e4a39d9af archive: make "hg archive -t XXX -" to write to stdout
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2187
diff changeset
497
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
498 test .hg_archival.txt
4863
6dc0094c0827 archive: abort on empty repository. Fixes #624.
Brendan Cully <brendan@kublai.com>
parents: 4805
diff changeset
499
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
500 $ hg archive ../test-tags
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
501 $ cat ../test-tags/.hg_archival.txt
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
502 repo: daa7f7c60e0a224faa4ff77ca41b2760562af264
23231
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
503 node: 1701ef1f151069b8747038e93b5186bb43a47504
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
504 branch: default
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
505 latesttag: null
23231
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
506 latesttagdistance: 4
23645
242d11819c6c archive: store number of changes since latest tag as well
Siddharth Agarwal <sid0@fb.com>
parents: 23232
diff changeset
507 changessincelatesttag: 4
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
508 $ hg tag -r 2 mytag
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
509 $ hg tag -r 2 anothertag
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
510 $ hg archive -r 2 ../test-lasttag
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
511 $ cat ../test-lasttag/.hg_archival.txt
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
512 repo: daa7f7c60e0a224faa4ff77ca41b2760562af264
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
513 node: 2c0277f05ed49d1c8328fb9ba92fba7a5ebcb33e
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
514 branch: default
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
515 tag: anothertag
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
516 tag: mytag
5061
a49f2a4d5ff7 archive: abort on empty repository. Fixes #624.
Brendan Cully <brendan@kublai.com>
parents: 4836
diff changeset
517
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
518 $ hg archive -t bogus test.bogus
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
519 abort: unknown archive type 'bogus'
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 11853
diff changeset
520 [255]
9614
58edd448da4f archive: add branch and tag informations to the .hg_archival.txt file
Gilles Moris <gilles.moris@free.fr>
parents: 8296
diff changeset
521
13143
c2e55c21db27 archive: add support for progress extension
Martin Geisler <mg@aragost.com>
parents: 13140
diff changeset
522 enable progress extension:
c2e55c21db27 archive: add support for progress extension
Martin Geisler <mg@aragost.com>
parents: 13140
diff changeset
523
c2e55c21db27 archive: add support for progress extension
Martin Geisler <mg@aragost.com>
parents: 13140
diff changeset
524 $ cp $HGRCPATH $HGRCPATH.no-progress
c2e55c21db27 archive: add support for progress extension
Martin Geisler <mg@aragost.com>
parents: 13140
diff changeset
525 $ cat >> $HGRCPATH <<EOF
c2e55c21db27 archive: add support for progress extension
Martin Geisler <mg@aragost.com>
parents: 13140
diff changeset
526 > [progress]
c2e55c21db27 archive: add support for progress extension
Martin Geisler <mg@aragost.com>
parents: 13140
diff changeset
527 > assume-tty = 1
13149
735dd8e8a208 progress using tests: disable time estimates to avoid flakiness
Augie Fackler <durin42@gmail.com>
parents: 13143
diff changeset
528 > format = topic bar number
13143
c2e55c21db27 archive: add support for progress extension
Martin Geisler <mg@aragost.com>
parents: 13140
diff changeset
529 > delay = 0
c2e55c21db27 archive: add support for progress extension
Martin Geisler <mg@aragost.com>
parents: 13140
diff changeset
530 > refresh = 0
c2e55c21db27 archive: add support for progress extension
Martin Geisler <mg@aragost.com>
parents: 13140
diff changeset
531 > width = 60
c2e55c21db27 archive: add support for progress extension
Martin Geisler <mg@aragost.com>
parents: 13140
diff changeset
532 > EOF
c2e55c21db27 archive: add support for progress extension
Martin Geisler <mg@aragost.com>
parents: 13140
diff changeset
533
17743
6047947afb6b tests: drop filtercr.py and use the very explicit '\r (no-eol) (esc)' markup
Mads Kiilerich <mads@kiilerich.com>
parents: 17629
diff changeset
534 $ hg archive ../with-progress
6047947afb6b tests: drop filtercr.py and use the very explicit '\r (no-eol) (esc)' markup
Mads Kiilerich <mads@kiilerich.com>
parents: 17629
diff changeset
535 \r (no-eol) (esc)
23231
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
536 archiving [ ] 0/6\r (no-eol) (esc)
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
537 archiving [======> ] 1/6\r (no-eol) (esc)
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
538 archiving [=============> ] 2/6\r (no-eol) (esc)
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
539 archiving [====================> ] 3/6\r (no-eol) (esc)
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
540 archiving [===========================> ] 4/6\r (no-eol) (esc)
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
541 archiving [==================================> ] 5/6\r (no-eol) (esc)
32dadb2637f4 tests: introduce a subrepository to test-archive.t
Matt Harbison <matt_harbison@yahoo.com>
parents: 22046
diff changeset
542 archiving [==========================================>] 6/6\r (no-eol) (esc)
17743
6047947afb6b tests: drop filtercr.py and use the very explicit '\r (no-eol) (esc)' markup
Mads Kiilerich <mads@kiilerich.com>
parents: 17629
diff changeset
543 \r (no-eol) (esc)
13143
c2e55c21db27 archive: add support for progress extension
Martin Geisler <mg@aragost.com>
parents: 13140
diff changeset
544
c2e55c21db27 archive: add support for progress extension
Martin Geisler <mg@aragost.com>
parents: 13140
diff changeset
545 cleanup after progress extension test:
c2e55c21db27 archive: add support for progress extension
Martin Geisler <mg@aragost.com>
parents: 13140
diff changeset
546
c2e55c21db27 archive: add support for progress extension
Martin Geisler <mg@aragost.com>
parents: 13140
diff changeset
547 $ cp $HGRCPATH.no-progress $HGRCPATH
c2e55c21db27 archive: add support for progress extension
Martin Geisler <mg@aragost.com>
parents: 13140
diff changeset
548
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
549 server errors
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
550
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
551 $ cat errors.log
6019
b70a530bdb93 cleanly abort on unknown archive type (issue966)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 5384
diff changeset
552
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
553 empty repo
5924
b8009718a211 better error reporting for hg serve errors in tests
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 5384
diff changeset
554
11853
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
555 $ hg init ../empty
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
556 $ cd ../empty
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
557 $ hg archive ../test-empty
afe19a1bf9d3 tests: unify test-archive
Martin Geisler <mg@lazybytes.net>
parents: 10650
diff changeset
558 abort: no working directory: please specify a revision
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 11853
diff changeset
559 [255]
13140
217ae7d5c8ee test-archive: whitespace cleanup
Martin Geisler <mg@aragost.com>
parents: 12398
diff changeset
560
12321
11db6fa2961e merge with stable
Martin Geisler <mg@aragost.com>
parents: 12319 12316
diff changeset
561 old file -- date clamped to 1980
5924
b8009718a211 better error reporting for hg serve errors in tests
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 5384
diff changeset
562
12368
9581d5efb6a5 tests: fix touch -t with RHEL
Matt Mackall <mpm@selenic.com>
parents: 12367
diff changeset
563 $ touch -t 197501010000 old
12321
11db6fa2961e merge with stable
Martin Geisler <mg@aragost.com>
parents: 12319 12316
diff changeset
564 $ hg add old
11db6fa2961e merge with stable
Martin Geisler <mg@aragost.com>
parents: 12319 12316
diff changeset
565 $ hg commit -m old
11db6fa2961e merge with stable
Martin Geisler <mg@aragost.com>
parents: 12319 12316
diff changeset
566 $ hg archive ../old.zip
30844
b3d2e8cce78c tests: work around FreeBSD's unzip having slightly different output
Augie Fackler <augie@google.com>
parents: 30747
diff changeset
567 $ unzip -l ../old.zip | grep -v -- ----- | egrep -v files$
12321
11db6fa2961e merge with stable
Martin Geisler <mg@aragost.com>
parents: 12319 12316
diff changeset
568 Archive: ../old.zip
12375
02990e22150b tests: require regexes in unified tests to be marked with " (re)"
Brodie Rao <brodie@bitheap.org>
parents: 12372
diff changeset
569 \s*Length.* (re)
23645
242d11819c6c archive: store number of changes since latest tag as well
Siddharth Agarwal <sid0@fb.com>
parents: 23232
diff changeset
570 *172*80*00:00*old/.hg_archival.txt (glob)
12376
97ffc68f71d3 tests: add glob matching for unified tests
Brodie Rao <brodie@bitheap.org>
parents: 12375
diff changeset
571 *0*80*00:00*old/old (glob)
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16350
diff changeset
572
42940
c04e0836f039 archive: add XZ support if built with Python 3
David Demelier <markand@malikania.fr>
parents: 41316
diff changeset
573 test xz support only available in Python 3.4
c04e0836f039 archive: add XZ support if built with Python 3
David Demelier <markand@malikania.fr>
parents: 41316
diff changeset
574
c04e0836f039 archive: add XZ support if built with Python 3
David Demelier <markand@malikania.fr>
parents: 41316
diff changeset
575 #if py3
c04e0836f039 archive: add XZ support if built with Python 3
David Demelier <markand@malikania.fr>
parents: 41316
diff changeset
576 $ hg archive ../archive.txz
43699
21e05aabef8c hghave: add a check for the `xz` compression utility
Matt Harbison <matt_harbison@yahoo.com>
parents: 43107
diff changeset
577 $ which xz >/dev/null && xz -l ../archive.txz | head -n1 || true
21e05aabef8c hghave: add a check for the `xz` compression utility
Matt Harbison <matt_harbison@yahoo.com>
parents: 43107
diff changeset
578 Strms Blocks Compressed Uncompressed Ratio Check Filename (xz !)
42940
c04e0836f039 archive: add XZ support if built with Python 3
David Demelier <markand@malikania.fr>
parents: 41316
diff changeset
579 $ rm -f ../archive.txz
c04e0836f039 archive: add XZ support if built with Python 3
David Demelier <markand@malikania.fr>
parents: 41316
diff changeset
580 #else
c04e0836f039 archive: add XZ support if built with Python 3
David Demelier <markand@malikania.fr>
parents: 41316
diff changeset
581 $ hg archive ../archive.txz
c04e0836f039 archive: add XZ support if built with Python 3
David Demelier <markand@malikania.fr>
parents: 41316
diff changeset
582 abort: xz compression is only available in Python 3
c04e0836f039 archive: add XZ support if built with Python 3
David Demelier <markand@malikania.fr>
parents: 41316
diff changeset
583 [255]
c04e0836f039 archive: add XZ support if built with Python 3
David Demelier <markand@malikania.fr>
parents: 41316
diff changeset
584 #endif
c04e0836f039 archive: add XZ support if built with Python 3
David Demelier <markand@malikania.fr>
parents: 41316
diff changeset
585
18967
88d1b59f6906 archive: raise error.Abort if the file pattern matches no files
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18771
diff changeset
586 show an error when a provided pattern matches no files
88d1b59f6906 archive: raise error.Abort if the file pattern matches no files
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18771
diff changeset
587
88d1b59f6906 archive: raise error.Abort if the file pattern matches no files
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18771
diff changeset
588 $ hg archive -I file_that_does_not_exist.foo ../empty.zip
88d1b59f6906 archive: raise error.Abort if the file pattern matches no files
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18771
diff changeset
589 abort: no files match the archive pattern
88d1b59f6906 archive: raise error.Abort if the file pattern matches no files
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18771
diff changeset
590 [255]
88d1b59f6906 archive: raise error.Abort if the file pattern matches no files
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18771
diff changeset
591
88d1b59f6906 archive: raise error.Abort if the file pattern matches no files
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18771
diff changeset
592 $ hg archive -X * ../empty.zip
88d1b59f6906 archive: raise error.Abort if the file pattern matches no files
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18771
diff changeset
593 abort: no files match the archive pattern
88d1b59f6906 archive: raise error.Abort if the file pattern matches no files
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18771
diff changeset
594 [255]
88d1b59f6906 archive: raise error.Abort if the file pattern matches no files
Angel Ezquerra <angel.ezquerra@gmail.com>
parents: 18771
diff changeset
595
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16350
diff changeset
596 $ cd ..
17628
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
597
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
598 issue3600: check whether "hg archive" can create archive files which
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
599 are extracted with expected timestamp, even though TZ is not
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
600 configured as GMT.
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
601
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
602 $ mkdir issue3600
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
603 $ cd issue3600
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
604
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
605 $ hg init repo
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
606 $ echo a > repo/a
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
607 $ hg -R repo add repo/a
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
608 $ hg -R repo commit -m '#0' -d '456789012 21600'
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
609 $ cat > show_mtime.py <<EOF
33944
74e53c21fd13 tests: update test-archive to pass our module import checker
Augie Fackler <raf@durin42.com>
parents: 33874
diff changeset
610 > from __future__ import absolute_import, print_function
74e53c21fd13 tests: update test-archive to pass our module import checker
Augie Fackler <raf@durin42.com>
parents: 33874
diff changeset
611 > import os
74e53c21fd13 tests: update test-archive to pass our module import checker
Augie Fackler <raf@durin42.com>
parents: 33874
diff changeset
612 > import sys
29177
df6b5c6d252a tests: test-archive.t use print_function
timeless <timeless@mozdev.org>
parents: 28597
diff changeset
613 > print(int(os.stat(sys.argv[1]).st_mtime))
17628
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
614 > EOF
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
615
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
616 $ hg -R repo archive --prefix tar-extracted archive.tar
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
617 $ (TZ=UTC-3; export TZ; tar xf archive.tar)
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38215
diff changeset
618 $ "$PYTHON" show_mtime.py tar-extracted/a
17628
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
619 456789012
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
620
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
621 $ hg -R repo archive --prefix zip-extracted archive.zip
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
622 $ (TZ=UTC-3; export TZ; unzip -q archive.zip)
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38215
diff changeset
623 $ "$PYTHON" show_mtime.py zip-extracted/a
17628
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
624 456789012
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
625
133d13e44544 archival: add "extended-timestamp" extra block for zip archives (issue3600)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 17017
diff changeset
626 $ cd ..