tests/test-largefiles-misc.t
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
Mon, 07 Jul 2014 18:45:46 +0900
changeset 21882 12019e6aa8a2
parent 21881 6f332778f904
child 21883 87aa279f7073
permissions -rw-r--r--
largefiles: show also how many data entities are outgoing at "hg summary" Before this patch, "hg summary --large" shows how many largefiles are changed or added in outgoing revisions only in the point of the view of filenames. For example, according to the number of outgoing largefiles shown in "hg summary" output, users should expect that the former below costs much more to upload outgoing largefiles than the latter. - outgoing revisions add a hundred largefiles, but all of them refer the same data entity in this case, only one data entity is outgoing, even though "hg summary" says that a hundred largefiles are outgoing. - a hundred outgoing revisions change only one largefile with distinct data in this case, a hundred data entities are outgoing, even though "hg summary" says that only one largefile is outgoing. But the latter costs much more than the former, in fact. This patch shows also how many data entities are outgoing at "hg summary" by counting number of unique hash values for outgoing largefiles. This patch introduces "_getoutgoings" to centralize the logic (de-duplication, too) into it for convenience of subsequent patches, even though it is not required in "hg summary" case.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
21424
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     1
This file contains testcases that tend to be related to special cases or less
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     2
common commands affecting largefile.
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     3
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     4
Each sections should be independent of each others.
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     5
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     6
  $ USERCACHE="$TESTTMP/cache"; export USERCACHE
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     7
  $ mkdir "${USERCACHE}"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     8
  $ cat >> $HGRCPATH <<EOF
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     9
  > [extensions]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    10
  > largefiles=
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    11
  > purge=
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    12
  > rebase=
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    13
  > transplant=
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    14
  > [phases]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    15
  > publish=False
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    16
  > [largefiles]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    17
  > minsize=2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    18
  > patterns=glob:**.dat
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    19
  > usercache=${USERCACHE}
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    20
  > [hooks]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    21
  > precommit=sh -c "echo \\"Invoking status precommit hook\\"; hg status"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    22
  > EOF
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    23
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    24
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    25
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    26
Test copies and moves from a directory other than root (issue3516)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    27
=========================================================================
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    28
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    29
  $ hg init lf_cpmv
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    30
  $ cd lf_cpmv
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    31
  $ mkdir dira
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    32
  $ mkdir dira/dirb
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    33
  $ touch dira/dirb/largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    34
  $ hg add --large dira/dirb/largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    35
  $ hg commit -m "added"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    36
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    37
  A dira/dirb/largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    38
  $ cd dira
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    39
  $ hg cp dirb/largefile foo/largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    40
  $ hg ci -m "deep copy"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    41
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    42
  A dira/foo/largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    43
  $ find . | sort
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    44
  .
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    45
  ./dirb
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    46
  ./dirb/largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    47
  ./foo
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    48
  ./foo/largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    49
  $ hg mv foo/largefile baz/largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    50
  $ hg ci -m "moved"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    51
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    52
  A dira/baz/largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    53
  R dira/foo/largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    54
  $ find . | sort
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    55
  .
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    56
  ./baz
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    57
  ./baz/largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    58
  ./dirb
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    59
  ./dirb/largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    60
  $ cd ..
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    61
  $ hg mv dira dirc
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    62
  moving .hglf/dira/baz/largefile to .hglf/dirc/baz/largefile (glob)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    63
  moving .hglf/dira/dirb/largefile to .hglf/dirc/dirb/largefile (glob)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    64
  $ find * | sort
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    65
  dirc
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    66
  dirc/baz
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    67
  dirc/baz/largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    68
  dirc/dirb
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    69
  dirc/dirb/largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    70
  $ hg up -qC
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    71
  $ cd ..
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    72
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    73
Clone a local repository owned by another user
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    74
===================================================
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    75
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    76
#if unix-permissions
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    77
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    78
We have to simulate that here by setting $HOME and removing write permissions
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    79
  $ ORIGHOME="$HOME"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    80
  $ mkdir alice
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    81
  $ HOME="`pwd`/alice"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    82
  $ cd alice
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    83
  $ hg init pubrepo
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    84
  $ cd pubrepo
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    85
  $ dd if=/dev/zero bs=1k count=11k > a-large-file 2> /dev/null
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    86
  $ hg add --large a-large-file
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    87
  $ hg commit -m "Add a large file"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    88
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    89
  A a-large-file
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    90
  $ cd ..
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    91
  $ chmod -R a-w pubrepo
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    92
  $ cd ..
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    93
  $ mkdir bob
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    94
  $ HOME="`pwd`/bob"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    95
  $ cd bob
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    96
  $ hg clone --pull ../alice/pubrepo pubrepo
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    97
  requesting all changes
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    98
  adding changesets
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    99
  adding manifests
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   100
  adding file changes
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   101
  added 1 changesets with 1 changes to 1 files
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   102
  updating to branch default
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   103
  getting changed largefiles
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   104
  1 largefiles updated, 0 removed
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   105
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   106
  $ cd ..
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   107
  $ chmod -R u+w alice/pubrepo
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   108
  $ HOME="$ORIGHOME"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   109
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   110
#endif
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   111
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   112
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   113
Symlink to a large largefile should behave the same as a symlink to a normal file
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   114
=====================================================================================
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   115
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   116
#if symlink
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   117
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   118
  $ hg init largesymlink
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   119
  $ cd largesymlink
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   120
  $ dd if=/dev/zero bs=1k count=10k of=largefile 2>/dev/null
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   121
  $ hg add --large largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   122
  $ hg commit -m "commit a large file"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   123
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   124
  A largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   125
  $ ln -s largefile largelink
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   126
  $ hg add largelink
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   127
  $ hg commit -m "commit a large symlink"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   128
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   129
  A largelink
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   130
  $ rm -f largelink
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   131
  $ hg up >/dev/null
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   132
  $ test -f largelink
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   133
  [1]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   134
  $ test -L largelink
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   135
  [1]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   136
  $ rm -f largelink # make next part of the test independent of the previous
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   137
  $ hg up -C >/dev/null
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   138
  $ test -f largelink
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   139
  $ test -L largelink
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   140
  $ cd ..
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   141
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   142
#endif
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   143
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   144
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   145
test for pattern matching on 'hg status':
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   146
==============================================
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   147
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   148
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   149
to boost performance, largefiles checks whether specified patterns are
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   150
related to largefiles in working directory (NOT to STANDIN) or not.
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   151
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   152
  $ hg init statusmatch
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   153
  $ cd statusmatch
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   154
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   155
  $ mkdir -p a/b/c/d
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   156
  $ echo normal > a/b/c/d/e.normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   157
  $ hg add a/b/c/d/e.normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   158
  $ echo large > a/b/c/d/e.large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   159
  $ hg add --large a/b/c/d/e.large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   160
  $ mkdir -p a/b/c/x
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   161
  $ echo normal > a/b/c/x/y.normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   162
  $ hg add a/b/c/x/y.normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   163
  $ hg commit -m 'add files'
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   164
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   165
  A a/b/c/d/e.large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   166
  A a/b/c/d/e.normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   167
  A a/b/c/x/y.normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   168
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   169
(1) no pattern: no performance boost
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   170
  $ hg status -A
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   171
  C a/b/c/d/e.large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   172
  C a/b/c/d/e.normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   173
  C a/b/c/x/y.normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   174
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   175
(2) pattern not related to largefiles: performance boost
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   176
  $ hg status -A a/b/c/x
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   177
  C a/b/c/x/y.normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   178
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   179
(3) pattern related to largefiles: no performance boost
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   180
  $ hg status -A a/b/c/d
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   181
  C a/b/c/d/e.large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   182
  C a/b/c/d/e.normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   183
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   184
(4) pattern related to STANDIN (not to largefiles): performance boost
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   185
  $ hg status -A .hglf/a
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   186
  C .hglf/a/b/c/d/e.large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   187
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   188
(5) mixed case: no performance boost
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   189
  $ hg status -A a/b/c/x a/b/c/d
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   190
  C a/b/c/d/e.large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   191
  C a/b/c/d/e.normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   192
  C a/b/c/x/y.normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   193
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   194
verify that largefiles doesn't break filesets
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   195
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   196
  $ hg log --rev . --exclude "set:binary()"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   197
  changeset:   0:41bd42f10efa
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   198
  tag:         tip
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   199
  user:        test
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   200
  date:        Thu Jan 01 00:00:00 1970 +0000
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   201
  summary:     add files
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   202
  
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   203
verify that large files in subrepos handled properly
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   204
  $ hg init subrepo
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   205
  $ echo "subrepo = subrepo" > .hgsub
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   206
  $ hg add .hgsub
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   207
  $ hg ci -m "add subrepo"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   208
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   209
  A .hgsub
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   210
  ? .hgsubstate
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   211
  $ echo "rev 1" > subrepo/large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   212
  $ hg -R subrepo add --large subrepo/large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   213
  $ hg sum
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   214
  parent: 1:8ee150ea2e9c tip
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   215
   add subrepo
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   216
  branch: default
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   217
  commit: 1 subrepos
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   218
  update: (current)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   219
  $ hg st
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   220
  $ hg st -S
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   221
  A subrepo/large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   222
  $ hg ci -S -m "commit top repo"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   223
  committing subrepository subrepo
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   224
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   225
  A large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   226
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   227
  M .hgsubstate
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   228
# No differences
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   229
  $ hg st -S
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   230
  $ hg sum
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   231
  parent: 2:ce4cd0c527a6 tip
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   232
   commit top repo
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   233
  branch: default
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   234
  commit: (clean)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   235
  update: (current)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   236
  $ echo "rev 2" > subrepo/large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   237
  $ hg st -S
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   238
  M subrepo/large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   239
  $ hg sum
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   240
  parent: 2:ce4cd0c527a6 tip
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   241
   commit top repo
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   242
  branch: default
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   243
  commit: 1 subrepos
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   244
  update: (current)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   245
  $ hg ci -m "this commit should fail without -S"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   246
  abort: uncommitted changes in subrepo subrepo
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   247
  (use --subrepos for recursive commit)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   248
  [255]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   249
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   250
Add a normal file to the subrepo, then test archiving
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   251
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   252
  $ echo 'normal file' > subrepo/normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   253
  $ hg -R subrepo add subrepo/normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   254
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   255
Lock in subrepo, otherwise the change isn't archived
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   256
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   257
  $ hg ci -S -m "add normal file to top level"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   258
  committing subrepository subrepo
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   259
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   260
  M large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   261
  A normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   262
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   263
  M .hgsubstate
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   264
  $ hg archive -S ../lf_subrepo_archive
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   265
  $ find ../lf_subrepo_archive | sort
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   266
  ../lf_subrepo_archive
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   267
  ../lf_subrepo_archive/.hg_archival.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   268
  ../lf_subrepo_archive/.hgsub
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   269
  ../lf_subrepo_archive/.hgsubstate
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   270
  ../lf_subrepo_archive/a
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   271
  ../lf_subrepo_archive/a/b
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   272
  ../lf_subrepo_archive/a/b/c
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   273
  ../lf_subrepo_archive/a/b/c/d
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   274
  ../lf_subrepo_archive/a/b/c/d/e.large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   275
  ../lf_subrepo_archive/a/b/c/d/e.normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   276
  ../lf_subrepo_archive/a/b/c/x
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   277
  ../lf_subrepo_archive/a/b/c/x/y.normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   278
  ../lf_subrepo_archive/subrepo
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   279
  ../lf_subrepo_archive/subrepo/large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   280
  ../lf_subrepo_archive/subrepo/normal.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   281
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   282
Test update with subrepos.
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   283
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   284
  $ hg update 0
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   285
  getting changed largefiles
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   286
  0 largefiles updated, 1 removed
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   287
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   288
  $ hg status -S
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   289
  $ hg update tip
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   290
  getting changed largefiles
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   291
  1 largefiles updated, 0 removed
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   292
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   293
  $ hg status -S
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   294
# modify a large file
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   295
  $ echo "modified" > subrepo/large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   296
  $ hg st -S
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   297
  M subrepo/large.txt
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   298
# update -C should revert the change.
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   299
  $ hg update -C
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   300
  getting changed largefiles
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   301
  1 largefiles updated, 0 removed
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   302
  getting changed largefiles
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   303
  0 largefiles updated, 0 removed
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   304
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   305
  $ hg status -S
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   306
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   307
Test archiving a revision that references a subrepo that is not yet
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   308
cloned (see test-subrepo-recursion.t):
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   309
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   310
  $ hg clone -U . ../empty
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   311
  $ cd ../empty
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   312
  $ hg archive --subrepos -r tip ../archive.tar.gz
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   313
  cloning subrepo subrepo from $TESTTMP/statusmatch/subrepo
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   314
  $ cd ..
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   315
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   316
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   317
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   318
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   319
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   320
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   321
Test addremove, forget and others
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   322
==============================================
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   323
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   324
Test that addremove picks up largefiles prior to the initial commit (issue3541)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   325
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   326
  $ hg init addrm2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   327
  $ cd addrm2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   328
  $ touch large.dat
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   329
  $ touch large2.dat
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   330
  $ touch normal
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   331
  $ hg add --large large.dat
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   332
  $ hg addremove -v
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   333
  adding large2.dat as a largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   334
  adding normal
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   335
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   336
Test that forgetting all largefiles reverts to islfilesrepo() == False
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   337
(addremove will add *.dat as normal files now)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   338
  $ hg forget large.dat
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   339
  $ hg forget large2.dat
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   340
  $ hg addremove -v
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   341
  adding large.dat
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   342
  adding large2.dat
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   343
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   344
Test commit's addremove option prior to the first commit
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   345
  $ hg forget large.dat
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   346
  $ hg forget large2.dat
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   347
  $ hg add --large large.dat
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   348
  $ hg ci -Am "commit"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   349
  adding large2.dat as a largefile
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   350
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   351
  A large.dat
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   352
  A large2.dat
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   353
  A normal
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   354
  $ find .hglf | sort
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   355
  .hglf
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   356
  .hglf/large.dat
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   357
  .hglf/large2.dat
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   358
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   359
Test actions on largefiles using relative paths from subdir
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   360
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   361
  $ mkdir sub
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   362
  $ cd sub
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   363
  $ echo anotherlarge > anotherlarge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   364
  $ hg add --large anotherlarge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   365
  $ hg st
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   366
  A sub/anotherlarge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   367
  $ hg st anotherlarge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   368
  A anotherlarge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   369
  $ hg commit -m anotherlarge anotherlarge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   370
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   371
  A sub/anotherlarge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   372
  $ hg log anotherlarge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   373
  changeset:   1:9627a577c5e9
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   374
  tag:         tip
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   375
  user:        test
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   376
  date:        Thu Jan 01 00:00:00 1970 +0000
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   377
  summary:     anotherlarge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   378
  
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   379
  $ hg log -G anotherlarge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   380
  @  changeset:   1:9627a577c5e9
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   381
  |  tag:         tip
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   382
  |  user:        test
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   383
  |  date:        Thu Jan 01 00:00:00 1970 +0000
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   384
  |  summary:     anotherlarge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   385
  |
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   386
  $ echo more >> anotherlarge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   387
  $ hg st .
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   388
  M anotherlarge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   389
  $ hg cat anotherlarge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   390
  anotherlarge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   391
  $ hg revert anotherlarge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   392
  $ hg st
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   393
  ? sub/anotherlarge.orig
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   394
  $ cd ..
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   395
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   396
  $ cd ..
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   397
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   398
Check error message while exchange
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   399
=========================================================
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   400
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   401
issue3651: summary/outgoing with largefiles shows "no remote repo"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   402
unexpectedly
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   403
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   404
  $ mkdir issue3651
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   405
  $ cd issue3651
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   406
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   407
  $ hg init src
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   408
  $ echo a > src/a
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   409
  $ hg -R src add --large src/a
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   410
  $ hg -R src commit -m '#0'
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   411
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   412
  A a
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   413
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   414
check messages when no remote repository is specified:
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   415
"no remote repo" route for "hg outgoing --large" is not tested here,
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   416
because it can't be reproduced easily.
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   417
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   418
  $ hg init clone1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   419
  $ hg -R clone1 -q pull src
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   420
  $ hg -R clone1 -q update
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   421
  $ hg -R clone1 paths | grep default
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   422
  [1]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   423
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   424
  $ hg -R clone1 summary --large
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   425
  parent: 0:fc0bd45326d3 tip
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   426
   #0
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   427
  branch: default
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   428
  commit: (clean)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   429
  update: (current)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   430
  largefiles: (no remote repo)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   431
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   432
check messages when there is no files to upload:
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   433
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   434
  $ hg -q clone src clone2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   435
  $ hg -R clone2 paths | grep default
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   436
  default = $TESTTMP/issue3651/src (glob)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   437
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   438
  $ hg -R clone2 summary --large
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   439
  parent: 0:fc0bd45326d3 tip
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   440
   #0
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   441
  branch: default
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   442
  commit: (clean)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   443
  update: (current)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   444
  largefiles: (no files to upload)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   445
  $ hg -R clone2 outgoing --large
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   446
  comparing with $TESTTMP/issue3651/src (glob)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   447
  searching for changes
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   448
  no changes found
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   449
  largefiles: no files to upload
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   450
  [1]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   451
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   452
  $ hg -R clone2 outgoing --large --graph --template "{rev}"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   453
  comparing with $TESTTMP/issue3651/src (glob)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   454
  searching for changes
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   455
  no changes found
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   456
  largefiles: no files to upload
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   457
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   458
check messages when there are files to upload:
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   459
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   460
  $ echo b > clone2/b
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   461
  $ hg -R clone2 add --large clone2/b
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   462
  $ hg -R clone2 commit -m '#1'
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   463
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   464
  A b
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   465
  $ hg -R clone2 summary --large
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   466
  parent: 1:1acbe71ce432 tip
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   467
   #1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   468
  branch: default
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   469
  commit: (clean)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   470
  update: (current)
21882
12019e6aa8a2 largefiles: show also how many data entities are outgoing at "hg summary"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21881
diff changeset
   471
  largefiles: 1 entities for 1 files to upload
21424
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   472
  $ hg -R clone2 outgoing --large
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   473
  comparing with $TESTTMP/issue3651/src (glob)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   474
  searching for changes
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   475
  changeset:   1:1acbe71ce432
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   476
  tag:         tip
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   477
  user:        test
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   478
  date:        Thu Jan 01 00:00:00 1970 +0000
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   479
  summary:     #1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   480
  
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   481
  largefiles to upload:
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   482
  b
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   483
  
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   484
  $ hg -R clone2 outgoing --large --graph --template "{rev}"
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   485
  comparing with $TESTTMP/issue3651/src
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   486
  searching for changes
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   487
  @  1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   488
  
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   489
  largefiles to upload:
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   490
  b
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   491
  
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   492
21881
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   493
  $ cp clone2/b clone2/b1
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   494
  $ cp clone2/b clone2/b2
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   495
  $ hg -R clone2 add --large clone2/b1 clone2/b2
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   496
  $ hg -R clone2 commit -m '#2: add largefiles referring same entity'
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   497
  Invoking status precommit hook
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   498
  A b1
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   499
  A b2
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   500
  $ hg -R clone2 summary --large
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   501
  parent: 2:6095d0695d70 tip
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   502
   #2: add largefiles referring same entity
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   503
  branch: default
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   504
  commit: (clean)
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   505
  update: (current)
21882
12019e6aa8a2 largefiles: show also how many data entities are outgoing at "hg summary"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21881
diff changeset
   506
  largefiles: 1 entities for 3 files to upload
21881
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   507
  $ hg -R clone2 outgoing --large -T "{rev}:{node|short}\n"
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   508
  comparing with $TESTTMP/issue3651/src (glob)
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   509
  searching for changes
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   510
  1:1acbe71ce432
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   511
  2:6095d0695d70
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   512
  largefiles to upload:
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   513
  b
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   514
  b1
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   515
  b2
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   516
  
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   517
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   518
  $ echo bbb > clone2/b
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   519
  $ hg -R clone2 commit -m '#3: add new largefile entity as existing file'
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   520
  Invoking status precommit hook
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   521
  M b
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   522
  $ echo bbbb > clone2/b
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   523
  $ hg -R clone2 commit -m '#4: add new largefile entity as existing file'
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   524
  Invoking status precommit hook
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   525
  M b
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   526
  $ cp clone2/b1 clone2/b
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   527
  $ hg -R clone2 commit -m '#5: refer existing largefile entity again'
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   528
  Invoking status precommit hook
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   529
  M b
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   530
  $ hg -R clone2 summary --large
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   531
  parent: 5:036794ea641c tip
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   532
   #5: refer existing largefile entity again
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   533
  branch: default
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   534
  commit: (clean)
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   535
  update: (current)
21882
12019e6aa8a2 largefiles: show also how many data entities are outgoing at "hg summary"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21881
diff changeset
   536
  largefiles: 3 entities for 3 files to upload
21881
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   537
  $ hg -R clone2 outgoing --large -T "{rev}:{node|short}\n"
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   538
  comparing with $TESTTMP/issue3651/src (glob)
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   539
  searching for changes
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   540
  1:1acbe71ce432
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   541
  2:6095d0695d70
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   542
  3:7983dce246cc
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   543
  4:233f12ada4ae
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   544
  5:036794ea641c
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   545
  largefiles to upload:
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   546
  b
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   547
  b1
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   548
  b2
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   549
  
6f332778f904 largefiles: add tests for summary/outgoing improved in subsequent patches
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21424
diff changeset
   550
21424
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   551
  $ cd ..
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   552
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   553
merge action 'd' for 'local renamed directory to d2/g' which has no filename
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   554
==================================================================================
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   555
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   556
  $ hg init merge-action
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   557
  $ cd merge-action
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   558
  $ touch l
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   559
  $ hg add --large l
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   560
  $ mkdir d1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   561
  $ touch d1/f
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   562
  $ hg ci -Aqm0
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   563
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   564
  A d1/f
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   565
  A l
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   566
  $ echo > d1/f
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   567
  $ touch d1/g
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   568
  $ hg ci -Aqm1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   569
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   570
  M d1/f
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   571
  A d1/g
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   572
  $ hg up -qr0
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   573
  $ hg mv d1 d2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   574
  moving d1/f to d2/f (glob)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   575
  $ hg ci -qm2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   576
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   577
  A d2/f
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   578
  R d1/f
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   579
  $ hg merge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   580
  merging d2/f and d1/f to d2/f
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   581
  1 files updated, 1 files merged, 0 files removed, 0 files unresolved
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   582
  (branch merge, don't forget to commit)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   583
  getting changed largefiles
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   584
  0 largefiles updated, 0 removed
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   585
  $ cd ..
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   586
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   587
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   588
Merge conflicts:
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   589
=====================
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   590
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   591
  $ hg init merge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   592
  $ cd merge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   593
  $ echo 0 > f-different
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   594
  $ echo 0 > f-same
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   595
  $ echo 0 > f-unchanged-1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   596
  $ echo 0 > f-unchanged-2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   597
  $ hg add --large *
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   598
  $ hg ci -m0
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   599
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   600
  A f-different
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   601
  A f-same
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   602
  A f-unchanged-1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   603
  A f-unchanged-2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   604
  $ echo tmp1 > f-unchanged-1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   605
  $ echo tmp1 > f-unchanged-2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   606
  $ echo tmp1 > f-same
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   607
  $ hg ci -m1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   608
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   609
  M f-same
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   610
  M f-unchanged-1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   611
  M f-unchanged-2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   612
  $ echo 2 > f-different
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   613
  $ echo 0 > f-unchanged-1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   614
  $ echo 1 > f-unchanged-2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   615
  $ echo 1 > f-same
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   616
  $ hg ci -m2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   617
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   618
  M f-different
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   619
  M f-same
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   620
  M f-unchanged-1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   621
  M f-unchanged-2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   622
  $ hg up -qr0
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   623
  $ echo tmp2 > f-unchanged-1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   624
  $ echo tmp2 > f-unchanged-2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   625
  $ echo tmp2 > f-same
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   626
  $ hg ci -m3
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   627
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   628
  M f-same
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   629
  M f-unchanged-1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   630
  M f-unchanged-2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   631
  created new head
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   632
  $ echo 1 > f-different
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   633
  $ echo 1 > f-unchanged-1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   634
  $ echo 0 > f-unchanged-2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   635
  $ echo 1 > f-same
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   636
  $ hg ci -m4
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   637
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   638
  M f-different
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   639
  M f-same
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   640
  M f-unchanged-1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   641
  M f-unchanged-2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   642
  $ hg merge
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   643
  largefile f-different has a merge conflict
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   644
  ancestor was 09d2af8dd22201dd8d48e5dcfcaed281ff9422c7
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   645
  keep (l)ocal e5fa44f2b31c1fb553b6021e7360d07d5d91ff5e or
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   646
  take (o)ther 7448d8798a4380162d4b56f9b452e2f6f9e24e7a? l
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   647
  0 files updated, 4 files merged, 0 files removed, 0 files unresolved
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   648
  (branch merge, don't forget to commit)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   649
  getting changed largefiles
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   650
  1 largefiles updated, 0 removed
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   651
  $ cat f-different
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   652
  1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   653
  $ cat f-same
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   654
  1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   655
  $ cat f-unchanged-1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   656
  1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   657
  $ cat f-unchanged-2
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   658
  1
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   659
  $ cd ..
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   660
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   661
Test largefile insulation (do not enabled a side effect
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   662
========================================================
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   663
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   664
Check whether "largefiles" feature is supported only in repositories
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   665
enabling largefiles extension.
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   666
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   667
  $ mkdir individualenabling
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   668
  $ cd individualenabling
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   669
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   670
  $ hg init enabledlocally
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   671
  $ echo large > enabledlocally/large
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   672
  $ hg -R enabledlocally add --large enabledlocally/large
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   673
  $ hg -R enabledlocally commit -m '#0'
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   674
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   675
  A large
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   676
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   677
  $ hg init notenabledlocally
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   678
  $ echo large > notenabledlocally/large
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   679
  $ hg -R notenabledlocally add --large notenabledlocally/large
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   680
  $ hg -R notenabledlocally commit -m '#0'
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   681
  Invoking status precommit hook
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   682
  A large
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   683
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   684
  $ cat >> $HGRCPATH <<EOF
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   685
  > [extensions]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   686
  > # disable globally
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   687
  > largefiles=!
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   688
  > EOF
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   689
  $ cat >> enabledlocally/.hg/hgrc <<EOF
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   690
  > [extensions]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   691
  > # enable locally
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   692
  > largefiles=
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   693
  > EOF
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   694
  $ hg -R enabledlocally root
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   695
  $TESTTMP/individualenabling/enabledlocally (glob)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   696
  $ hg -R notenabledlocally root
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   697
  abort: repository requires features unknown to this Mercurial: largefiles!
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   698
  (see http://mercurial.selenic.com/wiki/MissingRequirement for more information)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   699
  [255]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   700
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   701
  $ hg init push-dst
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   702
  $ hg -R enabledlocally push push-dst
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   703
  pushing to push-dst
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   704
  abort: required features are not supported in the destination: largefiles
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   705
  [255]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   706
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   707
  $ hg init pull-src
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   708
  $ hg -R pull-src pull enabledlocally
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   709
  pulling from enabledlocally
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   710
  abort: required features are not supported in the destination: largefiles
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   711
  [255]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   712
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   713
  $ hg clone enabledlocally clone-dst
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   714
  abort: repository requires features unknown to this Mercurial: largefiles!
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   715
  (see http://mercurial.selenic.com/wiki/MissingRequirement for more information)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   716
  [255]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   717
  $ test -d clone-dst
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   718
  [1]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   719
  $ hg clone --pull enabledlocally clone-pull-dst
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   720
  abort: required features are not supported in the destination: largefiles
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   721
  [255]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   722
  $ test -d clone-pull-dst
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   723
  [1]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   724
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   725
#if serve
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   726
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   727
Test largefiles specific peer setup, when largefiles is enabled
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   728
locally (issue4109)
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   729
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   730
  $ hg showconfig extensions | grep largefiles
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   731
  extensions.largefiles=!
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   732
  $ mkdir -p $TESTTMP/individualenabling/usercache
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   733
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   734
  $ hg serve -R enabledlocally -d -p $HGPORT --pid-file hg.pid
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   735
  $ cat hg.pid >> $DAEMON_PIDS
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   736
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   737
  $ hg init pull-dst
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   738
  $ cat > pull-dst/.hg/hgrc <<EOF
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   739
  > [extensions]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   740
  > # enable locally
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   741
  > largefiles=
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   742
  > [largefiles]
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   743
  > # ignore system cache to force largefiles specific wire proto access
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   744
  > usercache=$TESTTMP/individualenabling/usercache
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   745
  > EOF
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   746
  $ hg -R pull-dst -q pull -u http://localhost:$HGPORT
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   747
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   748
  $ "$TESTDIR/killdaemons.py" $DAEMON_PIDS
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   749
#endif
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   750
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   751
  $ cd ..
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   752
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   753
d13b4ecdb680 test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   754