author | Gregory Szorc <gregory.szorc@gmail.com> |
Wed, 11 Apr 2018 17:51:40 -0700 | |
changeset 37642 | d959277ff1b5 |
parent 37564 | 31a4ea773369 |
child 37763 | b54404d66f7e |
permissions | -rw-r--r-- |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
1 |
#testcases lfsremote-on lfsremote-off |
37348
f4e84dfc06fd
tests: skip largefiles and lfs tests when using simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35510
diff
changeset
|
2 |
#require serve no-reposimplestore |
35507
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 |
37562
e5cd8d1a094d
lfs: special case the null:// usercache instead of treating it as a url
Matt Harbison <matt_harbison@yahoo.com>
parents:
37518
diff
changeset
|
36 |
> [experimental] |
e5cd8d1a094d
lfs: special case the null:// usercache instead of treating it as a url
Matt Harbison <matt_harbison@yahoo.com>
parents:
37518
diff
changeset
|
37 |
> lfs.disableusercache = True |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
38 |
> [lfs] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
39 |
> threshold=10 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
40 |
> [web] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
41 |
> allow_push=* |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
42 |
> push_ssl=False |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
43 |
> EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
44 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
45 |
#if lfsremote-on |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
46 |
$ hg --config extensions.lfs= -R server \ |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
47 |
> 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
|
48 |
#else |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
49 |
$ hg --config extensions.lfs=! -R server \ |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
50 |
> 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
|
51 |
#endif |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
52 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
53 |
$ cat hg.pid >> $DAEMON_PIDS |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
54 |
$ hg clone -q http://localhost:$HGPORT client |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
55 |
$ grep 'lfs' client/.hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
56 |
[1] |
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 |
-------------------------------------------------------------------------------- |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
59 |
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
|
60 |
non-lfs content, and the extension enabled. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
61 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
62 |
$ cd client |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
63 |
$ echo 'non-lfs' > nonlfs.txt |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
64 |
$ hg ci -Aqm 'non-lfs' |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
65 |
$ grep 'lfs' .hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
66 |
[1] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
67 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
68 |
#if lfsremote-on |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
69 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
70 |
$ hg push -q |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
71 |
$ grep 'lfs' .hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
72 |
[1] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
73 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
74 |
$ 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
|
75 |
$ grep 'lfs' $TESTTMP/client1_clone/.hg/requires $SERVER_REQUIRES |
35509
2526579a30e0
lfs: allow non-lfs exchanges when the extension is only enabled on one side
Matt Harbison <matt_harbison@yahoo.com>
parents:
35508
diff
changeset
|
76 |
[1] |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
77 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
78 |
$ hg init $TESTTMP/client1_pull |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
79 |
$ 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
|
80 |
$ 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
|
81 |
[1] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
82 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
83 |
$ hg identify http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
84 |
d437e1d24fbd |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
85 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
86 |
#endif |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
87 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
88 |
-------------------------------------------------------------------------------- |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
89 |
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
|
90 |
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
|
91 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
92 |
$ cat >> $HGRCPATH <<EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
93 |
> [extensions] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
94 |
> lfs = |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
95 |
> EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
96 |
$ echo 'non-lfs' > nonlfs2.txt |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
97 |
$ 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
|
98 |
|
35509
2526579a30e0
lfs: allow non-lfs exchanges when the extension is only enabled on one side
Matt Harbison <matt_harbison@yahoo.com>
parents:
35508
diff
changeset
|
99 |
Since no lfs content has been added yet, the push is allowed, even when the |
2526579a30e0
lfs: allow non-lfs exchanges when the extension is only enabled on one side
Matt Harbison <matt_harbison@yahoo.com>
parents:
35508
diff
changeset
|
100 |
extension is not enabled remotely. |
2526579a30e0
lfs: allow non-lfs exchanges when the extension is only enabled on one side
Matt Harbison <matt_harbison@yahoo.com>
parents:
35508
diff
changeset
|
101 |
|
2526579a30e0
lfs: allow non-lfs exchanges when the extension is only enabled on one side
Matt Harbison <matt_harbison@yahoo.com>
parents:
35508
diff
changeset
|
102 |
$ hg push -q |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
103 |
$ grep 'lfs' .hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
104 |
[1] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
105 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
106 |
$ 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
|
107 |
$ 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
|
108 |
[1] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
109 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
110 |
$ hg init $TESTTMP/client2_pull |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
111 |
$ 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
|
112 |
$ 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
|
113 |
[1] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
114 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
115 |
$ hg identify http://localhost:$HGPORT |
35509
2526579a30e0
lfs: allow non-lfs exchanges when the extension is only enabled on one side
Matt Harbison <matt_harbison@yahoo.com>
parents:
35508
diff
changeset
|
116 |
1477875038c6 |
35507
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 |
-------------------------------------------------------------------------------- |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
119 |
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
|
120 |
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
|
121 |
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
|
122 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
123 |
$ 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
|
124 |
$ hg ci -Aqm 'lfs' |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
125 |
$ grep 'lfs' .hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
126 |
.hg/requires:lfs |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
127 |
|
35510
fa865878a849
lfs: show a friendly message when pushing lfs to a server without lfs enabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
35509
diff
changeset
|
128 |
#if lfsremote-off |
fa865878a849
lfs: show a friendly message when pushing lfs to a server without lfs enabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
35509
diff
changeset
|
129 |
$ hg push -q |
fa865878a849
lfs: show a friendly message when pushing lfs to a server without lfs enabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
35509
diff
changeset
|
130 |
abort: required features are not supported in the destination: lfs |
fa865878a849
lfs: show a friendly message when pushing lfs to a server without lfs enabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
35509
diff
changeset
|
131 |
(enable the lfs extension on the server) |
fa865878a849
lfs: show a friendly message when pushing lfs to a server without lfs enabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
35509
diff
changeset
|
132 |
[255] |
fa865878a849
lfs: show a friendly message when pushing lfs to a server without lfs enabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
35509
diff
changeset
|
133 |
#else |
fa865878a849
lfs: show a friendly message when pushing lfs to a server without lfs enabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
35509
diff
changeset
|
134 |
$ hg push -q |
fa865878a849
lfs: show a friendly message when pushing lfs to a server without lfs enabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
35509
diff
changeset
|
135 |
#endif |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
136 |
$ grep 'lfs' .hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
137 |
.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
|
138 |
$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
|
139 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
140 |
$ 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
|
141 |
$ 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
|
142 |
$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
|
143 |
$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
|
144 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
145 |
$ hg init $TESTTMP/client3_pull |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
146 |
$ 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
|
147 |
$ 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
|
148 |
$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
|
149 |
$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
|
150 |
|
35509
2526579a30e0
lfs: allow non-lfs exchanges when the extension is only enabled on one side
Matt Harbison <matt_harbison@yahoo.com>
parents:
35508
diff
changeset
|
151 |
The difference here is the push failed above when the extension isn't |
2526579a30e0
lfs: allow non-lfs exchanges when the extension is only enabled on one side
Matt Harbison <matt_harbison@yahoo.com>
parents:
35508
diff
changeset
|
152 |
enabled on the server. |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
153 |
$ hg identify http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
154 |
8374dc4052cb (lfsremote-on !) |
35509
2526579a30e0
lfs: allow non-lfs exchanges when the extension is only enabled on one side
Matt Harbison <matt_harbison@yahoo.com>
parents:
35508
diff
changeset
|
155 |
1477875038c6 (lfsremote-off !) |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
156 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
157 |
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
|
158 |
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
|
159 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
160 |
#if lfsremote-on |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
161 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
162 |
-------------------------------------------------------------------------------- |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
163 |
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
|
164 |
lfs content, and the extension enabled. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
165 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
166 |
$ cat >> $HGRCPATH <<EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
167 |
> [extensions] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
168 |
> lfs = ! |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
169 |
> EOF |
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 |
$ hg init $TESTTMP/client4 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
172 |
$ cd $TESTTMP/client4 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
173 |
$ cat >> .hg/hgrc <<EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
174 |
> [paths] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
175 |
> default = http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
176 |
> EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
177 |
$ echo 'non-lfs' > nonlfs2.txt |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
178 |
$ hg ci -Aqm 'non-lfs' |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
179 |
$ 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
|
180 |
$TESTTMP/server/.hg/requires:lfs |
35507
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 push -q --force |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
183 |
warning: repository is unrelated |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
184 |
$ 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
|
185 |
$TESTTMP/server/.hg/requires:lfs |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
186 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
187 |
TODO: fail more gracefully. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
188 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
189 |
$ 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
|
190 |
abort: HTTP Error 500: Internal Server Error |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
191 |
[255] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
192 |
$ 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
|
193 |
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
|
194 |
$TESTTMP/server/.hg/requires:lfs |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
195 |
[2] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
196 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
197 |
TODO: fail more gracefully. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
198 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
199 |
$ hg init $TESTTMP/client4_pull |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
200 |
$ 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
|
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_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
|
204 |
$TESTTMP/server/.hg/requires:lfs |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
205 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
206 |
$ hg identify http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
207 |
03b080fa9d93 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
208 |
|
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 |
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
|
211 |
lfs content, and the extension enabled. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
212 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
213 |
$ cat >> $HGRCPATH <<EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
214 |
> [extensions] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
215 |
> lfs = |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
216 |
> EOF |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
217 |
$ echo 'non-lfs' > nonlfs3.txt |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
218 |
$ 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
|
219 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
220 |
$ hg push -q |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
221 |
$ 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
|
222 |
$TESTTMP/server/.hg/requires:lfs |
35507
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 |
$ 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
|
225 |
$ 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
|
226 |
$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
|
227 |
$TESTTMP/server/.hg/requires:lfs |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
228 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
229 |
$ hg init $TESTTMP/client5_pull |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
230 |
$ 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
|
231 |
$ 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
|
232 |
$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
|
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 identify http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
236 |
c729025cc5e3 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
237 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
238 |
-------------------------------------------------------------------------------- |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
239 |
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
|
240 |
lfs content, and the extension enabled. |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
241 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
242 |
$ 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
|
243 |
$ 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
|
244 |
|
37564
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
245 |
$ hg --config paths.default= push -v http://localhost:$HGPORT |
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
246 |
pushing to http://localhost:$HGPORT/ |
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
247 |
lfs: assuming remote store: http://localhost:$HGPORT/.git/info/lfs |
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
248 |
searching for changes |
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
249 |
remote has heads on branch 'default' that are not known locally: 8374dc4052cb |
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
250 |
lfs: uploading a82f1c5cea0d40e3bb3a849686bb4e6ae47ca27e614de55c1ed0325698ef68de (25 bytes) |
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
251 |
lfs: processed: a82f1c5cea0d40e3bb3a849686bb4e6ae47ca27e614de55c1ed0325698ef68de |
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
252 |
lfs: uploaded 1 files (25 bytes) |
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
253 |
1 changesets found |
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
254 |
uncompressed size of bundle content: |
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
255 |
206 (changelog) |
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
256 |
172 (manifests) |
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
257 |
275 lfs2.txt |
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
258 |
remote: adding changesets |
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
259 |
remote: adding manifests |
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
260 |
remote: adding file changes |
31a4ea773369
lfs: infer the blob store URL from an explicit push dest or default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
37563
diff
changeset
|
261 |
remote: added 1 changesets with 1 changes to 1 files |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
262 |
$ grep 'lfs' .hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
263 |
.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
|
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 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
|
267 |
$ 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
|
268 |
$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
|
269 |
$TESTTMP/server/.hg/requires:lfs |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
270 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
271 |
$ hg init $TESTTMP/client6_pull |
37563
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
272 |
$ hg -R $TESTTMP/client6_pull pull -u -v http://localhost:$HGPORT |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
273 |
pulling from http://localhost:$HGPORT/ |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
274 |
requesting all changes |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
275 |
adding changesets |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
276 |
adding manifests |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
277 |
adding file changes |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
278 |
added 6 changesets with 5 changes to 5 files (+1 heads) |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
279 |
calling hook pretxnchangegroup.lfs: hgext.lfs.checkrequireslfs |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
280 |
new changesets d437e1d24fbd:d3b84d50eacb |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
281 |
resolving manifests |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
282 |
lfs: assuming remote store: http://localhost:$HGPORT/.git/info/lfs |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
283 |
lfs: downloading a82f1c5cea0d40e3bb3a849686bb4e6ae47ca27e614de55c1ed0325698ef68de (25 bytes) |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
284 |
lfs: processed: a82f1c5cea0d40e3bb3a849686bb4e6ae47ca27e614de55c1ed0325698ef68de |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
285 |
getting lfs2.txt |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
286 |
lfs: found a82f1c5cea0d40e3bb3a849686bb4e6ae47ca27e614de55c1ed0325698ef68de in the local lfs store |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
287 |
getting nonlfs2.txt |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
288 |
getting nonlfs3.txt |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
289 |
3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
290 |
updated to "d3b84d50eacb: lfs file with lfs client" |
be1cc65bdb1c
lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents:
37562
diff
changeset
|
291 |
1 other heads for branch "default" |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
292 |
$ 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
|
293 |
$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
|
294 |
$TESTTMP/server/.hg/requires:lfs |
35507
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
295 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
296 |
$ hg identify http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
297 |
d3b84d50eacb |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
298 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
299 |
-------------------------------------------------------------------------------- |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
300 |
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
|
301 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
302 |
$ hg --config extensions.lfs=! summary |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
303 |
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
|
304 |
(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
|
305 |
[255] |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
306 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
307 |
#endif |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
308 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
309 |
$ $PYTHON $TESTDIR/killdaemons.py $DAEMON_PIDS |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
310 |
|
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
311 |
#if lfsremote-on |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
312 |
$ cat $TESTTMP/errors.log | grep '^[A-Z]' |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
313 |
Traceback (most recent call last): |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
314 |
ValueError: no common changegroup version |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
315 |
Traceback (most recent call last): |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
316 |
ValueError: no common changegroup version |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
317 |
#else |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
318 |
$ cat $TESTTMP/errors.log |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
319 |
#endif |