Mercurial > hg
annotate tests/test-walkrepo.py @ 41801:9f53a4e2e193
tests: increase timeout for slow test
Test case `test-sparse-revlog.t` need some artifact (a bundle) build before it
can run. The artifact is expensive to build, but can be reused from one run to
the other. We are about to update that test to make the artifact building
automatic if `--allow-slow-tests` is passed. However, we need a bump the
timeout a bit to make sure the artifact building as time to finish.
We could maybe teach run-tests.py how to directly handle such artifacts.
However since there is only one of them for now, this seems premature.
There are also some room to speed up the bundle creation for
test-sparse-revlog.t
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Sun, 24 Feb 2019 19:56:40 +0100 |
parents | fa2423acb02f |
children | 2372284d9457 |
rev | line source |
---|---|
28676
a4803f35efba
py3: make test-walkrepo use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27300
diff
changeset
|
1 from __future__ import absolute_import, print_function |
27300
a8b2bf520a2a
tests: use absolute_import in test-walkrepo
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23532
diff
changeset
|
2 |
6341
63bdfcc3eaaf
test: Add tests for webdir symlinks and walkrepos.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
3 import os |
27300
a8b2bf520a2a
tests: use absolute_import in test-walkrepo
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23532
diff
changeset
|
4 |
a8b2bf520a2a
tests: use absolute_import in test-walkrepo
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23532
diff
changeset
|
5 from mercurial import ( |
a8b2bf520a2a
tests: use absolute_import in test-walkrepo
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23532
diff
changeset
|
6 hg, |
a8b2bf520a2a
tests: use absolute_import in test-walkrepo
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23532
diff
changeset
|
7 scmutil, |
28777
778d947f222e
tests: alias ui as uimod in test-walkrepo
Yuya Nishihara <yuya@tcha.org>
parents:
28676
diff
changeset
|
8 ui as uimod, |
27300
a8b2bf520a2a
tests: use absolute_import in test-walkrepo
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23532
diff
changeset
|
9 util, |
a8b2bf520a2a
tests: use absolute_import in test-walkrepo
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23532
diff
changeset
|
10 ) |
a8b2bf520a2a
tests: use absolute_import in test-walkrepo
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23532
diff
changeset
|
11 |
a8b2bf520a2a
tests: use absolute_import in test-walkrepo
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23532
diff
changeset
|
12 chdir = os.chdir |
a8b2bf520a2a
tests: use absolute_import in test-walkrepo
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23532
diff
changeset
|
13 mkdir = os.mkdir |
a8b2bf520a2a
tests: use absolute_import in test-walkrepo
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23532
diff
changeset
|
14 pjoin = os.path.join |
a8b2bf520a2a
tests: use absolute_import in test-walkrepo
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23532
diff
changeset
|
15 |
a8b2bf520a2a
tests: use absolute_import in test-walkrepo
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23532
diff
changeset
|
16 walkrepos = scmutil.walkrepos |
a8b2bf520a2a
tests: use absolute_import in test-walkrepo
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23532
diff
changeset
|
17 checklink = util.checklink |
6341
63bdfcc3eaaf
test: Add tests for webdir symlinks and walkrepos.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
18 |
30559
d83ca854fa21
ui: factor out ui.load() to create a ui without loading configs (API)
Yuya Nishihara <yuya@tcha.org>
parents:
28777
diff
changeset
|
19 u = uimod.ui.load() |
37878
fa2423acb02f
tests: port test-walkrepo.py to Python 3
Augie Fackler <augie@google.com>
parents:
30559
diff
changeset
|
20 sym = checklink(b'.') |
6341
63bdfcc3eaaf
test: Add tests for webdir symlinks and walkrepos.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
21 |
37878
fa2423acb02f
tests: port test-walkrepo.py to Python 3
Augie Fackler <augie@google.com>
parents:
30559
diff
changeset
|
22 hg.repository(u, b'top1', create=1) |
fa2423acb02f
tests: port test-walkrepo.py to Python 3
Augie Fackler <augie@google.com>
parents:
30559
diff
changeset
|
23 mkdir(b'subdir') |
fa2423acb02f
tests: port test-walkrepo.py to Python 3
Augie Fackler <augie@google.com>
parents:
30559
diff
changeset
|
24 chdir(b'subdir') |
fa2423acb02f
tests: port test-walkrepo.py to Python 3
Augie Fackler <augie@google.com>
parents:
30559
diff
changeset
|
25 hg.repository(u, b'sub1', create=1) |
fa2423acb02f
tests: port test-walkrepo.py to Python 3
Augie Fackler <augie@google.com>
parents:
30559
diff
changeset
|
26 mkdir(b'subsubdir') |
fa2423acb02f
tests: port test-walkrepo.py to Python 3
Augie Fackler <augie@google.com>
parents:
30559
diff
changeset
|
27 chdir(b'subsubdir') |
fa2423acb02f
tests: port test-walkrepo.py to Python 3
Augie Fackler <augie@google.com>
parents:
30559
diff
changeset
|
28 hg.repository(u, b'subsub1', create=1) |
6341
63bdfcc3eaaf
test: Add tests for webdir symlinks and walkrepos.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
29 chdir(os.path.pardir) |
63bdfcc3eaaf
test: Add tests for webdir symlinks and walkrepos.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
30 if sym: |
37878
fa2423acb02f
tests: port test-walkrepo.py to Python 3
Augie Fackler <augie@google.com>
parents:
30559
diff
changeset
|
31 os.symlink(os.path.pardir, b'circle') |
fa2423acb02f
tests: port test-walkrepo.py to Python 3
Augie Fackler <augie@google.com>
parents:
30559
diff
changeset
|
32 os.symlink(pjoin(b'subsubdir', b'subsub1'), b'subsub1') |
6341
63bdfcc3eaaf
test: Add tests for webdir symlinks and walkrepos.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
33 |
63bdfcc3eaaf
test: Add tests for webdir symlinks and walkrepos.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
34 def runtest(): |
37878
fa2423acb02f
tests: port test-walkrepo.py to Python 3
Augie Fackler <augie@google.com>
parents:
30559
diff
changeset
|
35 reposet = frozenset(walkrepos(b'.', followsym=True)) |
7494
85dc88630beb
util: disable walkrepo() recursive behaviour
Patrick Mezard <pmezard@gmail.com>
parents:
7201
diff
changeset
|
36 if sym and (len(reposet) != 3): |
28676
a4803f35efba
py3: make test-walkrepo use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27300
diff
changeset
|
37 print("reposet = %r" % (reposet,)) |
a4803f35efba
py3: make test-walkrepo use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27300
diff
changeset
|
38 print(("Found %d repositories when I should have found 3" |
a4803f35efba
py3: make test-walkrepo use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27300
diff
changeset
|
39 % (len(reposet),))) |
7494
85dc88630beb
util: disable walkrepo() recursive behaviour
Patrick Mezard <pmezard@gmail.com>
parents:
7201
diff
changeset
|
40 if (not sym) and (len(reposet) != 2): |
28676
a4803f35efba
py3: make test-walkrepo use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27300
diff
changeset
|
41 print("reposet = %r" % (reposet,)) |
a4803f35efba
py3: make test-walkrepo use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27300
diff
changeset
|
42 print(("Found %d repositories when I should have found 2" |
a4803f35efba
py3: make test-walkrepo use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27300
diff
changeset
|
43 % (len(reposet),))) |
37878
fa2423acb02f
tests: port test-walkrepo.py to Python 3
Augie Fackler <augie@google.com>
parents:
30559
diff
changeset
|
44 sub1set = frozenset((pjoin(b'.', b'sub1'), |
fa2423acb02f
tests: port test-walkrepo.py to Python 3
Augie Fackler <augie@google.com>
parents:
30559
diff
changeset
|
45 pjoin(b'.', b'circle', b'subdir', b'sub1'))) |
6341
63bdfcc3eaaf
test: Add tests for webdir symlinks and walkrepos.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
46 if len(sub1set & reposet) != 1: |
28676
a4803f35efba
py3: make test-walkrepo use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27300
diff
changeset
|
47 print("sub1set = %r" % (sub1set,)) |
a4803f35efba
py3: make test-walkrepo use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27300
diff
changeset
|
48 print("reposet = %r" % (reposet,)) |
a4803f35efba
py3: make test-walkrepo use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27300
diff
changeset
|
49 print("sub1set and reposet should have exactly one path in common.") |
37878
fa2423acb02f
tests: port test-walkrepo.py to Python 3
Augie Fackler <augie@google.com>
parents:
30559
diff
changeset
|
50 sub2set = frozenset((pjoin(b'.', b'subsub1'), |
fa2423acb02f
tests: port test-walkrepo.py to Python 3
Augie Fackler <augie@google.com>
parents:
30559
diff
changeset
|
51 pjoin(b'.', b'subsubdir', b'subsub1'))) |
6341
63bdfcc3eaaf
test: Add tests for webdir symlinks and walkrepos.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
52 if len(sub2set & reposet) != 1: |
28676
a4803f35efba
py3: make test-walkrepo use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27300
diff
changeset
|
53 print("sub2set = %r" % (sub2set,)) |
a4803f35efba
py3: make test-walkrepo use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27300
diff
changeset
|
54 print("reposet = %r" % (reposet,)) |
a4803f35efba
py3: make test-walkrepo use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27300
diff
changeset
|
55 print("sub2set and reposet should have exactly one path in common.") |
37878
fa2423acb02f
tests: port test-walkrepo.py to Python 3
Augie Fackler <augie@google.com>
parents:
30559
diff
changeset
|
56 sub3 = pjoin(b'.', b'circle', b'top1') |
16686
67964cda8701
cleanup: "not x in y" -> "x not in y"
Brodie Rao <brodie@sf.io>
parents:
16683
diff
changeset
|
57 if sym and sub3 not in reposet: |
28676
a4803f35efba
py3: make test-walkrepo use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27300
diff
changeset
|
58 print("reposet = %r" % (reposet,)) |
a4803f35efba
py3: make test-walkrepo use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27300
diff
changeset
|
59 print("Symbolic links are supported and %s is not in reposet" % (sub3,)) |
6341
63bdfcc3eaaf
test: Add tests for webdir symlinks and walkrepos.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
60 |
63bdfcc3eaaf
test: Add tests for webdir symlinks and walkrepos.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
61 runtest() |
63bdfcc3eaaf
test: Add tests for webdir symlinks and walkrepos.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
62 if sym: |
63bdfcc3eaaf
test: Add tests for webdir symlinks and walkrepos.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
63 # Simulate not having symlinks. |
63bdfcc3eaaf
test: Add tests for webdir symlinks and walkrepos.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
64 del os.path.samestat |
63bdfcc3eaaf
test: Add tests for webdir symlinks and walkrepos.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
65 sym = False |
63bdfcc3eaaf
test: Add tests for webdir symlinks and walkrepos.
Eric Hopper <hopper@omnifarious.org>
parents:
diff
changeset
|
66 runtest() |