tests/test-lfs-serve.t
author Matt Harbison <matt_harbison@yahoo.com>
Thu, 31 May 2018 09:19:09 -0400
branchstable
changeset 38178 3790efb388ca
parent 37765 ab04972a33ef
child 38239 ead71b15efd5
permissions -rw-r--r--
lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902) There are only a handful of methods that access repo attributes that are applied in reposetup(). The `diff` test covers all of the commands that call scmutil.prefetchfiles(). Along the way, I saw that adding files and upgrading the repo format were also problems (also tested here). I don't think running `hg serve` through the commandserver is sane, but I conditionalized both the capabilities and the wsgirequest handler because it's trivially correct. It doesn't look like there has ever been a caller of candownload(), so there's no test for that path. The upload case isn't testable, because uploadblobs() bails if there are no pointers. The requirement should be added any time pointers are introduced, and that would force the extension to be loaded specifically for the repo. This covers `debuglfsupload`, the pre-push hook (which isn't set until the repo is promoted to LFS), and uploadblobsfromrevs(), which can be called by other extensions. I think readfromstore() and writetostore() are only reachable as a flag processor for revlog.REVIDX_EXTSTORED, and a requirement is added as soon as that is seen, so I don't think those are a problem.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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
38178
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    26
make command server magic visible
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    27
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    28
#if windows
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    29
  $ PYTHONPATH="$TESTDIR/../contrib;$PYTHONPATH"
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    30
#else
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    31
  $ PYTHONPATH="$TESTDIR/../contrib:$PYTHONPATH"
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    32
#endif
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    33
  $ export PYTHONPATH
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    34
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    35
  $ hg init server
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    36
  $ SERVER_REQUIRES="$TESTTMP/server/.hg/requires"
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    37
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    38
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
    39
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
    40
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
    41
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
    42
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
    43
masked by the Internal Server Error message).
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    44
  $ 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
    45
  > [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
    46
  > lfs.disableusercache = True
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    47
  > [lfs]
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    48
  > threshold=10
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    49
  > [web]
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    50
  > allow_push=*
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    51
  > push_ssl=False
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    52
  > EOF
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    53
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    54
#if lfsremote-on
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    55
  $ hg --config extensions.lfs= -R server \
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    56
  >    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
    57
#else
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    58
  $ hg --config extensions.lfs=! -R server \
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    59
  >    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
    60
#endif
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
  $ cat hg.pid >> $DAEMON_PIDS
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    63
  $ hg clone -q http://localhost:$HGPORT client
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    64
  $ grep 'lfs' client/.hg/requires $SERVER_REQUIRES
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    65
  [1]
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    66
38178
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    67
This trivial repo will force commandserver to load the extension, but not call
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    68
reposetup() on another repo actually being operated on.  This gives coverage
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    69
that wrapper functions are not assuming reposetup() was called.
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    70
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    71
  $ hg init $TESTTMP/cmdservelfs
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    72
  $ cat >> $TESTTMP/cmdservelfs/.hg/hgrc << EOF
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    73
  > [extensions]
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    74
  > lfs =
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    75
  > EOF
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    76
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
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
    79
non-lfs content, and the extension enabled.
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    80
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    81
  $ cd client
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    82
  $ echo 'non-lfs' > nonlfs.txt
38178
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    83
  >>> from __future__ import absolute_import
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    84
  >>> from hgclient import check, readchannel, runcommand
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    85
  >>> @check
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    86
  ... def diff(server):
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    87
  ...     readchannel(server)
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    88
  ...     # run an arbitrary command in the repo with the extension loaded
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    89
  ...     runcommand(server, ['id', '-R', '../cmdservelfs'])
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    90
  ...     # now run a command in a repo without the extension to ensure that
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    91
  ...     # files are added safely..
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    92
  ...     runcommand(server, ['ci', '-Aqm', 'non-lfs'])
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    93
  ...     # .. and that scmutil.prefetchfiles() safely no-ops..
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    94
  ...     runcommand(server, ['diff', '-r', '.~1'])
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    95
  ...     # .. and that debugupgraderepo safely no-ops.
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    96
  ...     runcommand(server, ['debugupgraderepo', '-q', '--run'])
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    97
  *** runcommand id -R ../cmdservelfs
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    98
  000000000000 tip
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
    99
  *** runcommand ci -Aqm non-lfs
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   100
  *** runcommand diff -r .~1
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   101
  diff -r 000000000000 nonlfs.txt
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   102
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   103
  +++ b/nonlfs.txt	Thu Jan 01 00:00:00 1970 +0000
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   104
  @@ -0,0 +1,1 @@
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   105
  +non-lfs
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   106
  *** runcommand debugupgraderepo -q --run
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   107
  upgrade will perform the following actions:
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   108
  
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   109
  requirements
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   110
     preserved: dotencode, fncache, generaldelta, revlogv1, store
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   111
  
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   112
  beginning upgrade...
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   113
  repository locked and read-only
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   114
  creating temporary repository to stage migrated data: * (glob)
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   115
  (it is safe to interrupt this process any time before data migration completes)
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   116
  migrating 3 total revisions (1 in filelogs, 1 in manifests, 1 in changelog)
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   117
  migrating 132 bytes in store; 129 bytes tracked data
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   118
  migrating 1 filelogs containing 1 revisions (9 bytes in store; 8 bytes tracked data)
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   119
  finished migrating 1 filelog revisions across 1 filelogs; change in size: 0 bytes
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   120
  migrating 1 manifests containing 1 revisions (53 bytes in store; 52 bytes tracked data)
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   121
  finished migrating 1 manifest revisions across 1 manifests; change in size: 0 bytes
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   122
  migrating changelog containing 1 revisions (70 bytes in store; 69 bytes tracked data)
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   123
  finished migrating 1 changelog revisions; change in size: 0 bytes
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   124
  finished migrating 3 total revisions; total change in store size: 0 bytes
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   125
  copying phaseroots
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   126
  data fully migrated to temporary repository
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   127
  marking source repository as being upgraded; clients will be unable to read from repository
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   128
  starting in-place swap of repository data
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   129
  replaced files will be backed up at * (glob)
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   130
  replacing store...
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   131
  store replacement complete; repository was inconsistent for *s (glob)
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   132
  finalizing requirements file and making repository readable again
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   133
  removing temporary repository * (glob)
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   134
  copy of old repository backed up at * (glob)
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   135
  the old repository will not be deleted; remove it to free up disk space once the upgraded repository is verified
3790efb388ca lfs: bypass wrapped functions when reposetup() hasn't been called (issue5902)
Matt Harbison <matt_harbison@yahoo.com>
parents: 37765
diff changeset
   136
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   137
  $ grep 'lfs' .hg/requires $SERVER_REQUIRES
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   138
  [1]
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
#if lfsremote-on
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   141
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   142
  $ hg push -q
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   143
  $ grep 'lfs' .hg/requires $SERVER_REQUIRES
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   144
  [1]
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   145
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   146
  $ 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
   147
  $ 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
   148
  [1]
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   149
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   150
  $ hg init $TESTTMP/client1_pull
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   151
  $ 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
   152
  $ 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
   153
  [1]
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   154
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   155
  $ hg identify http://localhost:$HGPORT
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   156
  d437e1d24fbd
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   157
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   158
#endif
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
--------------------------------------------------------------------------------
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   161
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
   162
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
   163
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   164
  $ cat >> $HGRCPATH <<EOF
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   165
  > [extensions]
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   166
  > lfs =
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   167
  > EOF
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   168
  $ echo 'non-lfs' > nonlfs2.txt
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   169
  $ 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
   170
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
   171
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
   172
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
   173
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
   174
  $ hg push -q
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   175
  $ grep 'lfs' .hg/requires $SERVER_REQUIRES
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   176
  [1]
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   177
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   178
  $ 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
   179
  $ 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
   180
  [1]
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   181
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   182
  $ hg init $TESTTMP/client2_pull
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   183
  $ 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
   184
  $ 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
   185
  [1]
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
  $ 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
   188
  1477875038c6
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   189
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   190
--------------------------------------------------------------------------------
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   191
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
   192
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
   193
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
   194
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   195
  $ 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
   196
  $ hg ci -Aqm 'lfs'
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   197
  $ grep 'lfs' .hg/requires $SERVER_REQUIRES
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   198
  .hg/requires:lfs
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   199
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
   200
#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
   201
  $ 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
   202
  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
   203
  (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
   204
  [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
   205
#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
   206
  $ 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
   207
#endif
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   208
  $ grep 'lfs' .hg/requires $SERVER_REQUIRES
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   209
  .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
   210
  $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
   211
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   212
  $ 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
   213
  $ 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
   214
  $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
   215
  $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
   216
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   217
  $ hg init $TESTTMP/client3_pull
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   218
  $ 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
   219
  $ 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
   220
  $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
   221
  $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
   222
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
   223
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
   224
enabled on the server.
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   225
  $ hg identify http://localhost:$HGPORT
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   226
  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
   227
  1477875038c6 (lfsremote-off !)
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
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
   230
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
   231
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   232
#if lfsremote-on
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   233
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
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
   236
lfs content, and the extension enabled.
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
  $ cat >> $HGRCPATH <<EOF
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   239
  > [extensions]
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   240
  > lfs = !
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   241
  > EOF
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   242
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   243
  $ hg init $TESTTMP/client4
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   244
  $ cd $TESTTMP/client4
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   245
  $ cat >> .hg/hgrc <<EOF
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   246
  > [paths]
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   247
  > default = http://localhost:$HGPORT
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   248
  > EOF
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   249
  $ echo 'non-lfs' > nonlfs2.txt
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   250
  $ hg ci -Aqm 'non-lfs'
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   251
  $ 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
   252
  $TESTTMP/server/.hg/requires:lfs
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   253
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   254
  $ hg push -q --force
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   255
  warning: repository is unrelated
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   256
  $ 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
   257
  $TESTTMP/server/.hg/requires:lfs
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   258
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   259
TODO: fail more gracefully.
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   260
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   261
  $ hg clone -q http://localhost:$HGPORT $TESTTMP/client4_clone
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   262
  abort: HTTP Error 500: Internal Server Error
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   263
  [255]
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   264
  $ 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
   265
  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
   266
  $TESTTMP/server/.hg/requires:lfs
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   267
  [2]
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   268
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   269
TODO: fail more gracefully.
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/client4_pull
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   272
  $ 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
   273
  abort: HTTP Error 500: Internal Server Error
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   274
  [255]
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   275
  $ 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
   276
  $TESTTMP/server/.hg/requires:lfs
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   277
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   278
  $ hg identify http://localhost:$HGPORT
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   279
  03b080fa9d93
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   280
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   281
--------------------------------------------------------------------------------
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   282
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
   283
lfs content, and the extension enabled.
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   284
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   285
  $ cat >> $HGRCPATH <<EOF
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   286
  > [extensions]
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   287
  > lfs =
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   288
  > EOF
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   289
  $ echo 'non-lfs' > nonlfs3.txt
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   290
  $ 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
   291
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   292
  $ hg push -q
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   293
  $ 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
   294
  $TESTTMP/server/.hg/requires:lfs
35503
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 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
   297
  $ 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
   298
  $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
   299
  $TESTTMP/server/.hg/requires:lfs
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   300
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   301
  $ hg init $TESTTMP/client5_pull
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   302
  $ 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
   303
  $ 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
   304
  $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
   305
  $TESTTMP/server/.hg/requires:lfs
35503
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
  $ hg identify http://localhost:$HGPORT
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   308
  c729025cc5e3
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   309
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
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
   312
lfs content, and the extension enabled.
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   313
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   314
  $ 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
   315
  $ 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
   316
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
   317
  $ 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
   318
  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
   319
  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
   320
  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
   321
  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
   322
  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
   323
  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
   324
  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
   325
  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
   326
  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
   327
       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
   328
       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
   329
       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
   330
  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
   331
  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
   332
  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
   333
  remote: added 1 changesets with 1 changes to 1 files
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   334
  $ grep 'lfs' .hg/requires $SERVER_REQUIRES
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   335
  .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
   336
  $TESTTMP/server/.hg/requires:lfs
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   337
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   338
  $ 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
   339
  $ 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
   340
  $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
   341
  $TESTTMP/server/.hg/requires:lfs
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   342
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   343
  $ 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
   344
  $ 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
   345
  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
   346
  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
   347
  adding changesets
be1cc65bdb1c lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents: 37562
diff changeset
   348
  adding manifests
be1cc65bdb1c lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents: 37562
diff changeset
   349
  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
   350
  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
   351
  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
   352
  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
   353
  resolving manifests
be1cc65bdb1c lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents: 37562
diff changeset
   354
  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
   355
  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
   356
  lfs: processed: a82f1c5cea0d40e3bb3a849686bb4e6ae47ca27e614de55c1ed0325698ef68de
37765
ab04972a33ef lfs: enable the final download count status message
Matt Harbison <matt_harbison@yahoo.com>
parents: 37764
diff changeset
   357
  lfs: downloaded 1 files (25 bytes)
37563
be1cc65bdb1c lfs: infer the blob store URL from an explicit pull source
Matt Harbison <matt_harbison@yahoo.com>
parents: 37562
diff changeset
   358
  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
   359
  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
   360
  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
   361
  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
   362
  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
   363
  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
   364
  1 other heads for branch "default"
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   365
  $ 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
   366
  $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
   367
  $TESTTMP/server/.hg/requires:lfs
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   368
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   369
  $ hg identify http://localhost:$HGPORT
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   370
  d3b84d50eacb
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   371
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   372
--------------------------------------------------------------------------------
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   373
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
   374
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   375
  $ hg --config extensions.lfs=! summary
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   376
  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
   377
  (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
   378
  [255]
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   379
37763
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   380
  $ echo 'this is an lfs file' > $TESTTMP/client6_clone/lfspair1.bin
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   381
  $ echo 'this is an lfs file too' > $TESTTMP/client6_clone/lfspair2.bin
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   382
  $ hg -R $TESTTMP/client6_clone ci -Aqm 'add lfs pair'
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   383
  $ hg -R $TESTTMP/client6_clone push -q
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   384
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   385
  $ hg clone -qU http://localhost:$HGPORT $TESTTMP/bulkfetch
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   386
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   387
Export will prefetch all needed files across all needed revisions
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   388
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   389
  $ hg -R $TESTTMP/bulkfetch -v export -r 0:tip -o all.export
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   390
  lfs: assuming remote store: http://localhost:$HGPORT/.git/info/lfs
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   391
  exporting patches:
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   392
  lfs: assuming remote store: http://localhost:$HGPORT/.git/info/lfs
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   393
  lfs: need to transfer 4 objects (92 bytes)
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   394
  lfs: downloading a82f1c5cea0d40e3bb3a849686bb4e6ae47ca27e614de55c1ed0325698ef68de (25 bytes)
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   395
  lfs: processed: a82f1c5cea0d40e3bb3a849686bb4e6ae47ca27e614de55c1ed0325698ef68de
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   396
  lfs: downloading bed80f00180ac404b843628ab56a1c1984d6145c391cd1628a7dd7d2598d71fc (23 bytes)
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   397
  lfs: processed: bed80f00180ac404b843628ab56a1c1984d6145c391cd1628a7dd7d2598d71fc
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   398
  lfs: downloading cf1b2787b74e66547d931b6ebe28ff63303e803cb2baa14a8f57c4383d875782 (20 bytes)
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   399
  lfs: processed: cf1b2787b74e66547d931b6ebe28ff63303e803cb2baa14a8f57c4383d875782
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   400
  lfs: downloading d96eda2c74b56e95cfb5ffb66b6503e198cc6fc4a09dc877de925feebc65786e (24 bytes)
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   401
  lfs: processed: d96eda2c74b56e95cfb5ffb66b6503e198cc6fc4a09dc877de925feebc65786e
37765
ab04972a33ef lfs: enable the final download count status message
Matt Harbison <matt_harbison@yahoo.com>
parents: 37764
diff changeset
   402
  lfs: downloaded 4 files (92 bytes)
37763
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   403
  all.export
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   404
  lfs: found bed80f00180ac404b843628ab56a1c1984d6145c391cd1628a7dd7d2598d71fc in the local lfs store
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   405
  lfs: found a82f1c5cea0d40e3bb3a849686bb4e6ae47ca27e614de55c1ed0325698ef68de in the local lfs store
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   406
  lfs: found cf1b2787b74e66547d931b6ebe28ff63303e803cb2baa14a8f57c4383d875782 in the local lfs store
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   407
  lfs: found d96eda2c74b56e95cfb5ffb66b6503e198cc6fc4a09dc877de925feebc65786e in the local lfs store
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   408
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   409
Export with selected files is used with `extdiff --patch`
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   410
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   411
  $ rm -r $TESTTMP/bulkfetch/.hg/store/lfs
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   412
  $ hg --config extensions.extdiff= \
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   413
  >    -R $TESTTMP/bulkfetch -v extdiff -r 2:tip --patch $TESTTMP/bulkfetch/lfs.bin
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   414
  lfs: assuming remote store: http://localhost:$HGPORT/.git/info/lfs
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   415
  lfs: assuming remote store: http://localhost:$HGPORT/.git/info/lfs
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   416
  lfs: downloading bed80f00180ac404b843628ab56a1c1984d6145c391cd1628a7dd7d2598d71fc (23 bytes)
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   417
  lfs: processed: bed80f00180ac404b843628ab56a1c1984d6145c391cd1628a7dd7d2598d71fc
37765
ab04972a33ef lfs: enable the final download count status message
Matt Harbison <matt_harbison@yahoo.com>
parents: 37764
diff changeset
   418
  lfs: downloaded 1 files (23 bytes)
37763
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   419
  */hg-8374dc4052cb.patch (glob)
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   420
  lfs: found bed80f00180ac404b843628ab56a1c1984d6145c391cd1628a7dd7d2598d71fc in the local lfs store
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   421
  */hg-9640b57e77b1.patch (glob)
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   422
  --- */hg-8374dc4052cb.patch	* (glob)
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   423
  +++ */hg-9640b57e77b1.patch	* (glob)
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   424
  @@ -2,12 +2,7 @@
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   425
   # User test
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   426
   # Date 0 0
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   427
   #      Thu Jan 01 00:00:00 1970 +0000
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   428
  -# Node ID 8374dc4052cbd388e79d9dc4ddb29784097aa354
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   429
  -# Parent  1477875038c60152e391238920a16381c627b487
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   430
  -lfs
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   431
  +# Node ID 9640b57e77b14c3a0144fb4478b6cc13e13ea0d1
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   432
  +# Parent  d3b84d50eacbd56638e11abce6b8616aaba54420
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   433
  +add lfs pair
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   434
   
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   435
  -diff -r 1477875038c6 -r 8374dc4052cb lfs.bin
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   436
  ---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   437
  -+++ b/lfs.bin	Thu Jan 01 00:00:00 1970 +0000
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   438
  -@@ -0,0 +1,1 @@
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   439
  -+this is a big lfs file
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   440
  cleaning up temp directory
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   441
  [1]
b54404d66f7e export: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37564
diff changeset
   442
37764
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   443
Diff will prefetch files
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   444
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   445
  $ rm -r $TESTTMP/bulkfetch/.hg/store/lfs
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   446
  $ hg -R $TESTTMP/bulkfetch -v diff -r 2:tip
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   447
  lfs: assuming remote store: http://localhost:$HGPORT/.git/info/lfs
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   448
  lfs: assuming remote store: http://localhost:$HGPORT/.git/info/lfs
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   449
  lfs: need to transfer 4 objects (92 bytes)
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   450
  lfs: downloading a82f1c5cea0d40e3bb3a849686bb4e6ae47ca27e614de55c1ed0325698ef68de (25 bytes)
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   451
  lfs: processed: a82f1c5cea0d40e3bb3a849686bb4e6ae47ca27e614de55c1ed0325698ef68de
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   452
  lfs: downloading bed80f00180ac404b843628ab56a1c1984d6145c391cd1628a7dd7d2598d71fc (23 bytes)
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   453
  lfs: processed: bed80f00180ac404b843628ab56a1c1984d6145c391cd1628a7dd7d2598d71fc
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   454
  lfs: downloading cf1b2787b74e66547d931b6ebe28ff63303e803cb2baa14a8f57c4383d875782 (20 bytes)
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   455
  lfs: processed: cf1b2787b74e66547d931b6ebe28ff63303e803cb2baa14a8f57c4383d875782
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   456
  lfs: downloading d96eda2c74b56e95cfb5ffb66b6503e198cc6fc4a09dc877de925feebc65786e (24 bytes)
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   457
  lfs: processed: d96eda2c74b56e95cfb5ffb66b6503e198cc6fc4a09dc877de925feebc65786e
37765
ab04972a33ef lfs: enable the final download count status message
Matt Harbison <matt_harbison@yahoo.com>
parents: 37764
diff changeset
   458
  lfs: downloaded 4 files (92 bytes)
37764
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   459
  lfs: found bed80f00180ac404b843628ab56a1c1984d6145c391cd1628a7dd7d2598d71fc in the local lfs store
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   460
  lfs: found a82f1c5cea0d40e3bb3a849686bb4e6ae47ca27e614de55c1ed0325698ef68de in the local lfs store
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   461
  lfs: found cf1b2787b74e66547d931b6ebe28ff63303e803cb2baa14a8f57c4383d875782 in the local lfs store
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   462
  lfs: found d96eda2c74b56e95cfb5ffb66b6503e198cc6fc4a09dc877de925feebc65786e in the local lfs store
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   463
  diff -r 8374dc4052cb -r 9640b57e77b1 lfs.bin
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   464
  --- a/lfs.bin	Thu Jan 01 00:00:00 1970 +0000
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   465
  +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   466
  @@ -1,1 +0,0 @@
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   467
  -this is a big lfs file
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   468
  diff -r 8374dc4052cb -r 9640b57e77b1 lfs2.txt
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   469
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   470
  +++ b/lfs2.txt	Thu Jan 01 00:00:00 1970 +0000
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   471
  @@ -0,0 +1,1 @@
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   472
  +this is another lfs file
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   473
  diff -r 8374dc4052cb -r 9640b57e77b1 lfspair1.bin
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   474
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   475
  +++ b/lfspair1.bin	Thu Jan 01 00:00:00 1970 +0000
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   476
  @@ -0,0 +1,1 @@
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   477
  +this is an lfs file
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   478
  diff -r 8374dc4052cb -r 9640b57e77b1 lfspair2.bin
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   479
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   480
  +++ b/lfspair2.bin	Thu Jan 01 00:00:00 1970 +0000
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   481
  @@ -0,0 +1,1 @@
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   482
  +this is an lfs file too
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   483
  diff -r 8374dc4052cb -r 9640b57e77b1 nonlfs.txt
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   484
  --- a/nonlfs.txt	Thu Jan 01 00:00:00 1970 +0000
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   485
  +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   486
  @@ -1,1 +0,0 @@
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   487
  -non-lfs
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   488
  diff -r 8374dc4052cb -r 9640b57e77b1 nonlfs3.txt
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   489
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   490
  +++ b/nonlfs3.txt	Thu Jan 01 00:00:00 1970 +0000
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   491
  @@ -0,0 +1,1 @@
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   492
  +non-lfs
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   493
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   494
Only the files required by diff are prefetched
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   495
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   496
  $ rm -r $TESTTMP/bulkfetch/.hg/store/lfs
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   497
  $ hg -R $TESTTMP/bulkfetch -v diff -r 2:tip $TESTTMP/bulkfetch/lfspair2.bin
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   498
  lfs: assuming remote store: http://localhost:$HGPORT/.git/info/lfs
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   499
  lfs: assuming remote store: http://localhost:$HGPORT/.git/info/lfs
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   500
  lfs: downloading d96eda2c74b56e95cfb5ffb66b6503e198cc6fc4a09dc877de925feebc65786e (24 bytes)
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   501
  lfs: processed: d96eda2c74b56e95cfb5ffb66b6503e198cc6fc4a09dc877de925feebc65786e
37765
ab04972a33ef lfs: enable the final download count status message
Matt Harbison <matt_harbison@yahoo.com>
parents: 37764
diff changeset
   502
  lfs: downloaded 1 files (24 bytes)
37764
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   503
  lfs: found d96eda2c74b56e95cfb5ffb66b6503e198cc6fc4a09dc877de925feebc65786e in the local lfs store
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   504
  diff -r 8374dc4052cb -r 9640b57e77b1 lfspair2.bin
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   505
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   506
  +++ b/lfspair2.bin	Thu Jan 01 00:00:00 1970 +0000
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   507
  @@ -0,0 +1,1 @@
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   508
  +this is an lfs file too
5e67c20915a7 diff: invoke the file prefetch hook
Matt Harbison <matt_harbison@yahoo.com>
parents: 37763
diff changeset
   509
35503
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   510
#endif
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   511
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   512
  $ $PYTHON $TESTDIR/killdaemons.py $DAEMON_PIDS
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   513
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   514
#if lfsremote-on
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   515
  $ cat $TESTTMP/errors.log | grep '^[A-Z]'
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   516
  Traceback (most recent call last):
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   517
  ValueError: no common changegroup version
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   518
  Traceback (most recent call last):
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   519
  ValueError: no common changegroup version
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   520
#else
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   521
  $ cat $TESTTMP/errors.log
bbcd2e478391 test-lfs: add tests covering http exchanges
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   522
#endif