annotate tests/test-basic.t @ 35280:8e72f9152c4d

lfs: introduce a user level cache for lfs files This is the same mechanism in place for largefiles, and solves several problems working with multiple local repositories. The existing largefiles method is reused in place, because I suspect that there are other functions that can be shared. If we wait a bit to identify more before `hg cp lfutil.py ...`, the history will be easier to trace. The push between repo14 and repo15 in test-lfs.t arguably shouldn't be uploading any files with a local push. Maybe we can revisit that when `hg push` without 'lfs.url' can upload files to the push destination. Then it would be consistent for blobs in a local push to be linked to the local destination's cache. The cache property is added to run-tests.py, the same as the largefiles property, so that test generated files don't pollute the real location. Having files available locally broke a couple existing lfs-test-server tests, so the cache is cleared in a few places to force file download.
author Matt Harbison <matt_harbison@yahoo.com>
date Wed, 06 Dec 2017 22:56:15 -0500
parents 1f5bd3e1a7fe
children 4441705b7111
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11742
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
1 Create a repository:
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
2
20608
a3ca1d032926 config: make repo optional again
Matt Mackall <mpm@selenic.com>
parents: 17346
diff changeset
3 $ hg config
25290
8f88f768e24c devel: rename 'all' to 'all-warnings' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24751
diff changeset
4 devel.all-warnings=true
32410
f94d7e3e46a0 devel: activate default-date in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 31964
diff changeset
5 devel.default-date=0 0
33426
29653495cece tests: add extra output for fsmonitor at showconfig
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32940
diff changeset
6 extensions.fsmonitor= (fsmonitor !)
23388
42ed0780ec4b run-tests: set a default largefiles usercache in the default hgrc file
Matt Harbison <matt_harbison@yahoo.com>
parents: 23053
diff changeset
7 largefiles.usercache=$TESTTMP/.cache/largefiles (glob)
35280
8e72f9152c4d lfs: introduce a user level cache for lfs files
Matt Harbison <matt_harbison@yahoo.com>
parents: 34448
diff changeset
8 lfs.usercache=$TESTTMP/.cache/lfs (glob)
20608
a3ca1d032926 config: make repo optional again
Matt Mackall <mpm@selenic.com>
parents: 17346
diff changeset
9 ui.slash=True
a3ca1d032926 config: make repo optional again
Matt Mackall <mpm@selenic.com>
parents: 17346
diff changeset
10 ui.interactive=False
21918
10abc3a5c6b2 filemerge: use 'basic' as the default of '[ui] mergemarkers' for safety
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20608
diff changeset
11 ui.mergemarkers=detailed
23053
5ba11ab48fcf ui: separate option to show prompt echo, enabled only in tests (issue4417)
Yuya Nishihara <yuya@tcha.org>
parents: 21918
diff changeset
12 ui.promptecho=True
31009
161ab32b44a1 runtests: set web.address to localhost
Jun Wu <quark@fb.com>
parents: 30986
diff changeset
13 web.address=localhost
31010
09ec648cd2a9 runtests: always set web.ipv6
Jun Wu <quark@fb.com>
parents: 31009
diff changeset
14 web\.ipv6=(?:True|False) (re)
13956
ffb5c09ba822 tests: remove redundant mkdir
Martin Geisler <mg@lazybytes.net>
parents: 13568
diff changeset
15 $ hg init t
11742
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
16 $ cd t
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
17
31964
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
18 Prepare a changeset:
11742
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
19
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
20 $ echo a > a
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
21 $ hg add a
31964
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
22
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
23 $ hg status
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
24 A a
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
25
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
26 Writes to stdio succeed and fail appropriately
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
27
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
28 #if devfull
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
29 $ hg status 2>/dev/full
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
30 A a
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
31
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
32 $ hg status >/dev/full
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
33 abort: No space left on device
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
34 [255]
34448
1f5bd3e1a7fe test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 33426
diff changeset
35 #endif
31964
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
36
34448
1f5bd3e1a7fe test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 33426
diff changeset
37 #if devfull no-chg
31964
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
38 $ hg status >/dev/full 2>&1
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
39 [1]
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
40
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
41 $ hg status ENOENT 2>/dev/full
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
42 [1]
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
43 #endif
ebaada96aec3 stdio: add Linux-specific tests for error checking
Bryan O'Sullivan <bryano@fb.com>
parents: 31010
diff changeset
44
34448
1f5bd3e1a7fe test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 33426
diff changeset
45 #if devfull chg
1f5bd3e1a7fe test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 33426
diff changeset
46 $ hg status >/dev/full 2>&1
1f5bd3e1a7fe test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 33426
diff changeset
47 [255]
1f5bd3e1a7fe test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 33426
diff changeset
48
1f5bd3e1a7fe test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 33426
diff changeset
49 $ hg status ENOENT 2>/dev/full
1f5bd3e1a7fe test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 33426
diff changeset
50 [255]
1f5bd3e1a7fe test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 33426
diff changeset
51 #endif
1f5bd3e1a7fe test-basic: make test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 33426
diff changeset
52
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11742
diff changeset
53 $ hg commit -m test
11742
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
54
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
55 This command is ancient:
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
56
11742
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
57 $ hg history
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11742
diff changeset
58 changeset: 0:acb14030fe0a
11742
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
59 tag: tip
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
60 user: test
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11742
diff changeset
61 date: Thu Jan 01 00:00:00 1970 +0000
11742
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
62 summary: test
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
63
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
64
13568
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
65 Verify that updating to revision 0 via commands.update() works properly
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
66
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
67 $ cat <<EOF > update_to_rev0.py
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
68 > from mercurial import ui, hg, commands
30559
d83ca854fa21 ui: factor out ui.load() to create a ui without loading configs (API)
Yuya Nishihara <yuya@tcha.org>
parents: 30513
diff changeset
69 > myui = ui.ui.load()
13568
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
70 > repo = hg.repository(myui, path='.')
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
71 > commands.update(myui, repo, rev=0)
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
72 > EOF
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
73 $ hg up null
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
74 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
32940
75be14993fda cleanup: use $PYTHON to run python in many more tests
Augie Fackler <augie@google.com>
parents: 32414
diff changeset
75 $ $PYTHON ./update_to_rev0.py
13568
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
76 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
77 $ hg identify -n
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
78 0
17346
2944a6d35158 check-code: fix check for trailing whitespace on empty lines
Mads Kiilerich <mads@kiilerich.com>
parents: 16913
diff changeset
79
13568
0b79cf616e65 commands.update() now works properly with a revision of 0
Mark Drago <markdrago@gmail.com>
parents: 12156
diff changeset
80
11742
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
81 Poke around at hashes:
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
82
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
83 $ hg manifest --debug
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
84 b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 a
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
85
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
86 $ hg cat a
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
87 a
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
88
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
89 Verify should succeed:
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
90
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
91 $ hg verify
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
92 checking changesets
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
93 checking manifests
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
94 crosschecking files in changesets and manifests
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
95 checking files
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
96 1 files, 1 changesets, 1 total revisions
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
97
5dc8b3ee407b tests: unify test-basic
Matt Mackall <mpm@selenic.com>
parents: 3736
diff changeset
98 At the end...
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
99
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
100 $ cd ..