Mercurial > hg
annotate tests/test-lfs-serve.t @ 37562:e5cd8d1a094d
lfs: special case the null:// usercache instead of treating it as a url
The previous code worked on Windows, but not on Unix, and a pending patch's test
failed. The url being used was something like "/tmp/.../client1/null://",
courtesy of ui.configpath(). Looking at the doc comment, this seems like it's
maybe not the right function to call (why should a relative cache path be
expanded relative to the repo root or config file?), but largefiles has been
using it since 8b8dd13295db (Oct 2011). It was introduced in 1b591f9b7fd2 (Jan
2011) without comment or callers. A grep over the whole history shows that only
largefiles used it until lfs and infinitepush came along recently.
It looks like if the `if not os.path.isabs(v) or "://" not in v` in configpath()
is changed to an 'and', both Linux and Windows are happy. I'm guessing that
"://" is to pick off URLs, so that seems reasonable. But I'm not sure why it
isn't explicitly "file://", and I thought that "file://foo" is relative anyway.
(At least, there are doctests for file:///tmp in util.url.) There is no mention
of this setting in the help, but it is referenced on the wiki page for
largefiles. (There's no mention that this is intended to be a URL, and the
example uses an absolute path.)
I don't want this blocking the rest of the lfs server discovery stuff. It was
also wrong to allow a file:// URL here, but not in largefiles.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Wed, 11 Apr 2018 17:29:55 -0400 |
parents | 092eff6833a7 |
children | be1cc65bdb1c |
rev | line source |
---|---|
35503
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:
35506
diff
changeset
|
2 #require serve no-reposimplestore |
35503
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 |
35503
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 |
35505
2526579a30e0
lfs: allow non-lfs exchanges when the extension is only enabled on one side
Matt Harbison <matt_harbison@yahoo.com>
parents:
35504
diff
changeset
|
76 [1] |
35503
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 |
35505
2526579a30e0
lfs: allow non-lfs exchanges when the extension is only enabled on one side
Matt Harbison <matt_harbison@yahoo.com>
parents:
35504
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:
35504
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:
35504
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:
35504
diff
changeset
|
102 $ hg push -q |
35503
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 |
35505
2526579a30e0
lfs: allow non-lfs exchanges when the extension is only enabled on one side
Matt Harbison <matt_harbison@yahoo.com>
parents:
35504
diff
changeset
|
116 1477875038c6 |
35503
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 |
35504
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35503
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:
35503
diff
changeset
|
121 should have an 'lfs' requirement after it picks up its first commit with a blob. |
35503
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 |
35506
fa865878a849
lfs: show a friendly message when pushing lfs to a server without lfs enabled
Matt Harbison <matt_harbison@yahoo.com>
parents:
35505
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:
35505
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:
35505
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:
35505
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:
35505
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:
35505
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:
35505
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:
35505
diff
changeset
|
135 #endif |
35503
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 |
35504
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35503
diff
changeset
|
138 $TESTTMP/server/.hg/requires:lfs (lfsremote-on !) |
35503
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 |
35504
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35503
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:
35503
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:
35503
diff
changeset
|
143 $TESTTMP/server/.hg/requires:lfs (lfsremote-on !) |
35503
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 |
35504
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35503
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:
35503
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:
35503
diff
changeset
|
149 $TESTTMP/server/.hg/requires:lfs (lfsremote-on !) |
35503
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
150 |
35505
2526579a30e0
lfs: allow non-lfs exchanges when the extension is only enabled on one side
Matt Harbison <matt_harbison@yahoo.com>
parents:
35504
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:
35504
diff
changeset
|
152 enabled on the server. |
35503
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 !) |
35505
2526579a30e0
lfs: allow non-lfs exchanges when the extension is only enabled on one side
Matt Harbison <matt_harbison@yahoo.com>
parents:
35504
diff
changeset
|
155 1477875038c6 (lfsremote-off !) |
35503
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 |
35504
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35503
diff
changeset
|
180 $TESTTMP/server/.hg/requires:lfs |
35503
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 |
35504
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35503
diff
changeset
|
185 $TESTTMP/server/.hg/requires:lfs |
35503
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$ |
35504
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35503
diff
changeset
|
194 $TESTTMP/server/.hg/requires:lfs |
35503
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 |
35504
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35503
diff
changeset
|
204 $TESTTMP/server/.hg/requires:lfs |
35503
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 |
35504
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35503
diff
changeset
|
222 $TESTTMP/server/.hg/requires:lfs |
35503
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 |
35504
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35503
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:
35503
diff
changeset
|
227 $TESTTMP/server/.hg/requires:lfs |
35503
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 |
35504
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35503
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:
35503
diff
changeset
|
233 $TESTTMP/server/.hg/requires:lfs |
35503
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 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
245 $ hg push -q |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
246 $ grep 'lfs' .hg/requires $SERVER_REQUIRES |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
247 .hg/requires:lfs |
35504
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35503
diff
changeset
|
248 $TESTTMP/server/.hg/requires:lfs |
35503
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 $ 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
|
251 $ grep 'lfs' $TESTTMP/client6_clone/.hg/requires $SERVER_REQUIRES |
35504
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35503
diff
changeset
|
252 $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:
35503
diff
changeset
|
253 $TESTTMP/server/.hg/requires:lfs |
35503
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
254 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
255 $ hg init $TESTTMP/client6_pull |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
256 $ 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
|
257 $ grep 'lfs' $TESTTMP/client6_pull/.hg/requires $SERVER_REQUIRES |
35504
6bb940de4c4c
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs
Matt Harbison <matt_harbison@yahoo.com>
parents:
35503
diff
changeset
|
258 $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:
35503
diff
changeset
|
259 $TESTTMP/server/.hg/requires:lfs |
35503
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 identify http://localhost:$HGPORT |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
262 d3b84d50eacb |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
263 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
264 -------------------------------------------------------------------------------- |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
265 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
|
266 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
267 $ hg --config extensions.lfs=! summary |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
268 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
|
269 (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
|
270 [255] |
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 #endif |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
273 |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
274 $ $PYTHON $TESTDIR/killdaemons.py $DAEMON_PIDS |
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 #if lfsremote-on |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
277 $ cat $TESTTMP/errors.log | grep '^[A-Z]' |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
278 Traceback (most recent call last): |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
279 ValueError: no common changegroup version |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
280 Traceback (most recent call last): |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
281 ValueError: no common changegroup version |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
282 #else |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
283 $ cat $TESTTMP/errors.log |
bbcd2e478391
test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff
changeset
|
284 #endif |