annotate tests/test-simple-update.t @ 39548:7ce9dea3a14a

localrepo: move repo creation logic out of localrepository.__init__ (API) It has long bothered me that local repository creation is handled as part of localrepository.__init__. Upcoming changes I want to make around how repositories are initialized and instantiated will make the continued existence of repository creation code in localrepository.__init__ even more awkward. localrepository instances are almost never constructed directly: instead, callers are supposed to go through hg.repository() to obtain a handle on a repository. And hg.repository() calls localrepo.instance() to return a new repo instance. This commit teaches localrepo.instance() to handle the create=True logic. Most of the code for repo construction has been moved to a standalone function. This allows extensions to monkeypatch the function to further customize freshly-created repositories. A few calls to localrepo.localrepository.__init__ that were passing create=True were converted to call localrepo.instance(). .. api:: local repo creation moved out of constructor ``localrepo.localrepository.__init__`` no longer accepts a ``create`` argument to create a new repository. New repository creation is now performed as part of ``localrepo.instance()`` and the bulk of the work is performed by ``localrepo.createrepository()``. Differential Revision: https://phab.mercurial-scm.org/D4534
author Gregory Szorc <gregory.szorc@gmail.com>
date Tue, 11 Sep 2018 13:46:59 -0700
parents f1186c292d03
children 5abc47d4ca6b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
13956
ffb5c09ba822 tests: remove redundant mkdir
Martin Geisler <mg@lazybytes.net>
parents: 12365
diff changeset
1 $ hg init test
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
2 $ cd test
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
3 $ echo foo>foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
4 $ hg addremove
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
5 adding foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
6 $ hg commit -m "1"
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
7
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
8 $ hg verify
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
9 checking changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
10 checking manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
11 crosschecking files in changesets and manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
12 checking files
39489
f1186c292d03 verify: make output less confusing (issue5924)
Meirambek Omyrzak <meirambek77@gmail.com>
parents: 38731
diff changeset
13 checked 1 changesets with 1 changes to 1 files
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
14
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
15 $ hg clone . ../branch
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
16 updating to branch default
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
17 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
18 $ cd ../branch
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
19 $ hg co
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
20 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
21 $ echo bar>>foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
22 $ hg commit -m "2"
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
23
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
24 $ cd ../test
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
25
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
26 $ hg pull ../branch
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
27 pulling from ../branch
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
28 searching for changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
29 adding changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
30 adding manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
31 adding file changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
32 added 1 changesets with 1 changes to 1 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 32940
diff changeset
33 new changesets 30aff43faee1
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
34 1 local changesets published
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
35 (run 'hg update' to get a working copy)
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
36
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
37 $ hg verify
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
38 checking changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
39 checking manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
40 crosschecking files in changesets and manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
41 checking files
39489
f1186c292d03 verify: make output less confusing (issue5924)
Meirambek Omyrzak <meirambek77@gmail.com>
parents: 38731
diff changeset
42 checked 2 changesets with 2 changes to 1 files
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
43
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
44 $ hg co
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
45 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
46
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
47 $ cat foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
48 foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
49 bar
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
50
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
51 $ hg manifest --debug
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
52 6f4310b00b9a147241b071a60c28a650827fb03d 644 foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 3736
diff changeset
53
13960
190e5f2043d9 update: fix check for no rev when a date is given
Idan Kamara <idankk86@gmail.com>
parents: 13956
diff changeset
54 update to rev 0 with a date
190e5f2043d9 update: fix check for no rev when a date is given
Idan Kamara <idankk86@gmail.com>
parents: 13956
diff changeset
55
190e5f2043d9 update: fix check for no rev when a date is given
Idan Kamara <idankk86@gmail.com>
parents: 13956
diff changeset
56 $ hg upd -d foo 0
190e5f2043d9 update: fix check for no rev when a date is given
Idan Kamara <idankk86@gmail.com>
parents: 13956
diff changeset
57 abort: you can't specify a revision and a date
190e5f2043d9 update: fix check for no rev when a date is given
Idan Kamara <idankk86@gmail.com>
parents: 13956
diff changeset
58 [255]
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 13960
diff changeset
59
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 13960
diff changeset
60 $ cd ..
31117
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
61
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
62 update with worker processes
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
63
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
64 #if no-windows
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
65
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
66 $ cat <<EOF > forceworker.py
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
67 > from mercurial import extensions, worker
38731
ef3838a47503 worker: ability to disable thread unsafe tasks
Gregory Szorc <gregory.szorc@gmail.com>
parents: 38250
diff changeset
68 > def nocost(orig, ui, costperop, nops, threadsafe=True):
31117
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
69 > return worker._numworkers(ui) > 1
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
70 > def uisetup(ui):
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
71 > extensions.wrapfunction(worker, 'worthwhile', nocost)
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
72 > EOF
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
73
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
74 $ hg init worker
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
75 $ cd worker
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
76 $ cat <<EOF >> .hg/hgrc
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
77 > [extensions]
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
78 > forceworker = $TESTTMP/forceworker.py
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
79 > [worker]
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
80 > numcpus = 4
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
81 > EOF
32940
75be14993fda cleanup: use $PYTHON to run python in many more tests
Augie Fackler <augie@google.com>
parents: 31118
diff changeset
82 $ for i in `$PYTHON $TESTDIR/seq.py 1 100`; do
31117
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
83 > echo $i > $i
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
84 > done
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
85 $ hg ci -qAm 'add 100 files'
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
86
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
87 $ hg update null
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
88 0 files updated, 0 files merged, 100 files removed, 0 files unresolved
31118
a91c62752d08 worker: flush messages written by child processes before exit
Yuya Nishihara <yuya@tcha.org>
parents: 31117
diff changeset
89 $ hg update -v | grep 100
a91c62752d08 worker: flush messages written by child processes before exit
Yuya Nishihara <yuya@tcha.org>
parents: 31117
diff changeset
90 getting 100
31117
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
91 100 files updated, 0 files merged, 0 files removed, 0 files unresolved
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
92
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
93 $ cd ..
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
94
92bca12328d1 worker: add basic test to ensure child processes are managed well
Yuya Nishihara <yuya@tcha.org>
parents: 16913
diff changeset
95 #endif