Mercurial > hg-stable
annotate tests/test-lfs-serve.t @ 35508:6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
A hook like this is how largefiles manages to do the same. Largefiles uses a
changegroup hook, but this uses pretxnchangegroup because that actually causes
the transaction to rollback in the unlikely event that writing the requirements
out fails. Sadly, the requires file itself isn't rolled back if a subsequent
hook fails, but that seems trivial.
Now that commit, changegroup and convert are covered, I don't think there's any
way to get an lfs repo without the requirement.
The grep exit code is blotted out of some test-lfs-serve.t tests now showing the
requirement, because run-tests.py doesn't support conditionalizing the exit
code.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Sat, 23 Dec 2017 23:51:40 -0500 |
parents | bbcd2e478391 |
children | 2526579a30e0 |
rev | line source |
---|---|
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
1 #testcases lfsremote-on lfsremote-off |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
2 #require serve |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
3 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
4 This test splits `hg serve` with and without using the extension into separate |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
5 tests cases. The tests are broken down as follows, where "LFS"/"No-LFS" |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
6 indicates whether or not there are commits that use an LFS file, and "D"/"E" |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
7 indicates whether or not the extension is loaded. The "X" cases are not tested |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
8 individually, because the lfs requirement causes the process to bail early if |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
9 the extension is disabled. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
10 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
11 . Server |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
12 . |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
13 . No-LFS LFS |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
14 . +----------------------------+ |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
15 . | || D | E | D | E | |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
16 . |---++=======================| |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
17 . C | D || N/A | #1 | X | #4 | |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
18 . l No +---++-----------------------| |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
19 . i LFS | E || #2 | #2 | X | #5 | |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
20 . e +---++-----------------------| |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
21 . n | D || X | X | X | X | |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
22 . t LFS |---++-----------------------| |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
23 . | E || #3 | #3 | X | #6 | |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
24 . |---++-----------------------+ |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
25 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
26 $ hg init server |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
27 $ SERVER_REQUIRES="$TESTTMP/server/.hg/requires" |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
28 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
29 Skip the experimental.changegroup3=True config. Failure to agree on this comes |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
30 first, and causes a "ValueError: no common changegroup version" or "abort: |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
31 HTTP Error 500: Internal Server Error", if the extension is only loaded on one |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
32 side. If that *is* enabled, the subsequent failure is "abort: missing processor |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
33 for flag '0x2000'!" if the extension is only loaded on one side (possibly also |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
34 masked by the Internal Server Error message). |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
35 $ cat >> $HGRCPATH <<EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
36 > [lfs] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
37 > url=file:$TESTTMP/dummy-remote/ |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
38 > threshold=10 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
39 > [web] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
40 > allow_push=* |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
41 > push_ssl=False |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
42 > EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
43 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
44 #if lfsremote-on |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
45 $ hg --config extensions.lfs= -R server \ |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
46 > serve -p $HGPORT -d --pid-file=hg.pid --errorlog=$TESTTMP/errors.log |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
47 #else |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
48 $ hg --config extensions.lfs=! -R server \ |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
49 > serve -p $HGPORT -d --pid-file=hg.pid --errorlog=$TESTTMP/errors.log |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
50 #endif |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
51 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
52 $ cat hg.pid >> $DAEMON_PIDS |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
53 $ hg clone -q http://localhost:$HGPORT client |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
54 $ grep 'lfs' client/.hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
55 [1] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
56 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
57 -------------------------------------------------------------------------------- |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
58 Case #1: client with non-lfs content and the extension disabled; server with |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
59 non-lfs content, and the extension enabled. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
60 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
61 $ cd client |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
62 $ echo 'non-lfs' > nonlfs.txt |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
63 $ hg ci -Aqm 'non-lfs' |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
64 $ grep 'lfs' .hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
65 [1] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
66 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
67 #if lfsremote-on |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
68 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
69 $ hg push -q |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
70 $ grep 'lfs' .hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
71 [1] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
72 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
73 TODO: fail more gracefully, or don't mandate changegroup3 for non-lfs repos. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
74 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
75 $ hg clone -q http://localhost:$HGPORT $TESTTMP/client1_clone |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
76 abort: HTTP Error 500: Internal Server Error |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
77 [255] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
78 $ grep 'lfs' $TESTTMP/client1_clone/.hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
79 grep: $TESTTMP/client1_clone/.hg/requires: $ENOENT$ |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
80 [2] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
81 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
82 TODO: fail more gracefully, or don't mandate changegroup3 for non-lfs repos. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
83 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
84 $ hg init $TESTTMP/client1_pull |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
85 $ hg -R $TESTTMP/client1_pull pull -q http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
86 abort: HTTP Error 500: Internal Server Error |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
87 [255] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
88 $ grep 'lfs' $TESTTMP/client1_pull/.hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
89 [1] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
90 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
91 $ hg identify http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
92 d437e1d24fbd |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
93 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
94 #endif |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
95 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
96 -------------------------------------------------------------------------------- |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
97 Case #2: client with non-lfs content and the extension enabled; server with |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
98 non-lfs content, and the extension state controlled by #testcases. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
99 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
100 $ cat >> $HGRCPATH <<EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
101 > [extensions] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
102 > lfs = |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
103 > EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
104 $ echo 'non-lfs' > nonlfs2.txt |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
105 $ hg ci -Aqm 'non-lfs file with lfs client' |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
106 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
107 TODO: fail more gracefully here |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
108 $ hg push -q 2>&1 | grep '^[A-Z]' || true |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
109 Traceback (most recent call last): (lfsremote-off !) |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
110 ValueError: no common changegroup version (lfsremote-off !) |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
111 $ grep 'lfs' .hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
112 [1] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
113 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
114 $ hg clone -q http://localhost:$HGPORT $TESTTMP/client2_clone |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
115 $ grep 'lfs' $TESTTMP/client2_clone/.hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
116 [1] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
117 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
118 $ hg init $TESTTMP/client2_pull |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
119 $ hg -R $TESTTMP/client2_pull pull -q http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
120 $ grep 'lfs' $TESTTMP/client2_pull/.hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
121 [1] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
122 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
123 XXX: The difference here is the push failed above when the extension isn't |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
124 enabled on the server. The extension shouldn't need to mess with changegroup |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
125 versions if there is no lfs content. But the requirement needs to be |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
126 consistently added before that can be ratcheted back. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
127 $ hg identify http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
128 1477875038c6 (lfsremote-on !) |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
129 000000000000 (lfsremote-off !) |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
130 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
131 -------------------------------------------------------------------------------- |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
132 Case #3: client with lfs content and the extension enabled; server with |
35508
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
133 non-lfs content, and the extension state controlled by #testcases. The server |
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
134 should have an 'lfs' requirement after it picks up its first commit with a blob. |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
135 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
136 $ echo 'this is a big lfs file' > lfs.bin |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
137 $ hg ci -Aqm 'lfs' |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
138 $ grep 'lfs' .hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
139 .hg/requires:lfs |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
140 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
141 TODO: fail more gracefully here |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
142 $ hg push -q 2>&1 | grep '^[A-Z]' || true |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
143 Traceback (most recent call last): (lfsremote-off !) |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
144 ValueError: no common changegroup version (lfsremote-off !) |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
145 $ grep 'lfs' .hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
146 .hg/requires:lfs |
35508
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
147 $TESTTMP/server/.hg/requires:lfs (lfsremote-on !) |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
148 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
149 $ hg clone -q http://localhost:$HGPORT $TESTTMP/client3_clone |
35508
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
150 $ grep 'lfs' $TESTTMP/client3_clone/.hg/requires $SERVER_REQUIRES || true |
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
151 $TESTTMP/client3_clone/.hg/requires:lfs (lfsremote-on !) |
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
152 $TESTTMP/server/.hg/requires:lfs (lfsremote-on !) |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
153 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
154 $ hg init $TESTTMP/client3_pull |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
155 $ hg -R $TESTTMP/client3_pull pull -q http://localhost:$HGPORT |
35508
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
156 $ grep 'lfs' $TESTTMP/client3_pull/.hg/requires $SERVER_REQUIRES || true |
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
157 $TESTTMP/client3_pull/.hg/requires:lfs (lfsremote-on !) |
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
158 $TESTTMP/server/.hg/requires:lfs (lfsremote-on !) |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
159 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
160 XXX: The difference here is the push failed above when the extension isn't |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
161 enabled on the server. The extension shouldn't need to mess with changegroup |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
162 versions if there is no lfs content. But the requirement needs to be |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
163 consistently added before that can be ratcheted back. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
164 $ hg identify http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
165 8374dc4052cb (lfsremote-on !) |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
166 000000000000 (lfsremote-off !) |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
167 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
168 Don't bother testing the lfsremote-off cases- the server won't be able |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
169 to launch if there's lfs content and the extension is disabled. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
170 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
171 #if lfsremote-on |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
172 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
173 -------------------------------------------------------------------------------- |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
174 Case #4: client with non-lfs content and the extension disabled; server with |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
175 lfs content, and the extension enabled. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
176 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
177 $ cat >> $HGRCPATH <<EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
178 > [extensions] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
179 > lfs = ! |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
180 > EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
181 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
182 $ hg init $TESTTMP/client4 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
183 $ cd $TESTTMP/client4 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
184 $ cat >> .hg/hgrc <<EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
185 > [paths] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
186 > default = http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
187 > EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
188 $ echo 'non-lfs' > nonlfs2.txt |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
189 $ hg ci -Aqm 'non-lfs' |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
190 $ grep 'lfs' .hg/requires $SERVER_REQUIRES |
35508
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
191 $TESTTMP/server/.hg/requires:lfs |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
192 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
193 $ hg push -q --force |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
194 warning: repository is unrelated |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
195 $ grep 'lfs' .hg/requires $SERVER_REQUIRES |
35508
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
196 $TESTTMP/server/.hg/requires:lfs |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
197 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
198 TODO: fail more gracefully. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
199 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
200 $ hg clone -q http://localhost:$HGPORT $TESTTMP/client4_clone |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
201 abort: HTTP Error 500: Internal Server Error |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
202 [255] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
203 $ grep 'lfs' $TESTTMP/client4_clone/.hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
204 grep: $TESTTMP/client4_clone/.hg/requires: $ENOENT$ |
35508
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
205 $TESTTMP/server/.hg/requires:lfs |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
206 [2] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
207 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
208 TODO: fail more gracefully. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
209 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
210 $ hg init $TESTTMP/client4_pull |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
211 $ hg -R $TESTTMP/client4_pull pull -q http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
212 abort: HTTP Error 500: Internal Server Error |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
213 [255] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
214 $ grep 'lfs' $TESTTMP/client4_pull/.hg/requires $SERVER_REQUIRES |
35508
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
215 $TESTTMP/server/.hg/requires:lfs |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
216 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
217 $ hg identify http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
218 03b080fa9d93 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
219 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
220 -------------------------------------------------------------------------------- |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
221 Case #5: client with non-lfs content and the extension enabled; server with |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
222 lfs content, and the extension enabled. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
223 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
224 $ cat >> $HGRCPATH <<EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
225 > [extensions] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
226 > lfs = |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
227 > EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
228 $ echo 'non-lfs' > nonlfs3.txt |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
229 $ hg ci -Aqm 'non-lfs file with lfs client' |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
230 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
231 $ hg push -q |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
232 $ grep 'lfs' .hg/requires $SERVER_REQUIRES |
35508
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
233 $TESTTMP/server/.hg/requires:lfs |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
234 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
235 $ hg clone -q http://localhost:$HGPORT $TESTTMP/client5_clone |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
236 $ grep 'lfs' $TESTTMP/client5_clone/.hg/requires $SERVER_REQUIRES |
35508
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
237 $TESTTMP/client5_clone/.hg/requires:lfs |
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
238 $TESTTMP/server/.hg/requires:lfs |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
239 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
240 $ hg init $TESTTMP/client5_pull |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
241 $ hg -R $TESTTMP/client5_pull pull -q http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
242 $ grep 'lfs' $TESTTMP/client5_pull/.hg/requires $SERVER_REQUIRES |
35508
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
243 $TESTTMP/client5_pull/.hg/requires:lfs |
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
244 $TESTTMP/server/.hg/requires:lfs |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
245 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
246 $ hg identify http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
247 c729025cc5e3 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
248 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
249 -------------------------------------------------------------------------------- |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
250 Case #6: client with lfs content and the extension enabled; server with |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
251 lfs content, and the extension enabled. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
252 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
253 $ echo 'this is another lfs file' > lfs2.txt |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
254 $ hg ci -Aqm 'lfs file with lfs client' |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
255 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
256 $ hg push -q |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
257 $ grep 'lfs' .hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
258 .hg/requires:lfs |
35508
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
259 $TESTTMP/server/.hg/requires:lfs |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
260 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
261 $ hg clone -q http://localhost:$HGPORT $TESTTMP/client6_clone |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
262 $ grep 'lfs' $TESTTMP/client6_clone/.hg/requires $SERVER_REQUIRES |
35508
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
263 $TESTTMP/client6_clone/.hg/requires:lfs |
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
264 $TESTTMP/server/.hg/requires:lfs |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
265 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
266 $ hg init $TESTTMP/client6_pull |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
267 $ hg -R $TESTTMP/client6_pull pull -q http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
268 $ grep 'lfs' $TESTTMP/client6_pull/.hg/requires $SERVER_REQUIRES |
35508
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
269 $TESTTMP/client6_pull/.hg/requires:lfs |
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35507
diff
changeset
|
270 $TESTTMP/server/.hg/requires:lfs |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
271 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
272 $ hg identify http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
273 d3b84d50eacb |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
274 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
275 -------------------------------------------------------------------------------- |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
276 Misc: process dies early if a requirement exists and the extension is disabled |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
277 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
278 $ hg --config extensions.lfs=! summary |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
279 abort: repository requires features unknown to this Mercurial: lfs! |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
280 (see https://mercurial-scm.org/wiki/MissingRequirement for more information) |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
281 [255] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
282 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
283 #endif |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
284 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
285 $ $PYTHON $TESTDIR/killdaemons.py $DAEMON_PIDS |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
286 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
287 #if lfsremote-on |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
288 $ cat $TESTTMP/errors.log | grep '^[A-Z]' |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
289 Traceback (most recent call last): |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
290 ValueError: no common changegroup version |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
291 Traceback (most recent call last): |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
292 ValueError: no common changegroup version |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
293 Traceback (most recent call last): |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
294 ValueError: no common changegroup version |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
295 Traceback (most recent call last): |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
296 ValueError: no common changegroup version |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
297 #else |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
298 $ cat $TESTTMP/errors.log |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
299 #endif |