tests/test-lfconvert.t
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
Thu, 24 Nov 2011 17:54:50 +0900
branchstable
changeset 15579 6c5e6ebe0812
parent 15389 3bece03bf3c6
child 15591 97fc5eec3f43
permissions -rw-r--r--
largefiles: use "ui.configlist()" to get largefiles.patterns configuration current lfconvert implementation uses combination of "ui.config()" and "str.split(' ')" to get largefiles.patterns configuration. but it can not handle multiline configuration in hgrc files correctly. lfconvert should use "ui.configlist()" instead of it, as same as override_add does.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
     1
  $ cat >> $HGRCPATH <<EOF
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
     2
  > [extensions]
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
     3
  > largefiles =
15339
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
     4
  > share =
15342
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
     5
  > graphlog =
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
     6
  > [largefiles]
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
     7
  > minsize = 0.5
15579
6c5e6ebe0812 largefiles: use "ui.configlist()" to get largefiles.patterns configuration
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 15389
diff changeset
     8
  > patterns = **.other
6c5e6ebe0812 largefiles: use "ui.configlist()" to get largefiles.patterns configuration
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 15389
diff changeset
     9
  >     **.dat
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    10
  > EOF
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    11
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    12
"lfconvert" works
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    13
  $ hg init bigfile-repo
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    14
  $ cd bigfile-repo
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    15
  $ cat >> .hg/hgrc <<EOF
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    16
  > [extensions]
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    17
  > largefiles = !
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    18
  > EOF
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    19
  $ mkdir sub
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    20
  $ dd if=/dev/zero bs=1k count=256 > large 2> /dev/null
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    21
  $ echo normal > normal1
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    22
  $ echo alsonormal > sub/normal2
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    23
  $ dd if=/dev/zero bs=1k count=10 > sub/maybelarge.dat 2> /dev/null
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    24
  $ hg addremove
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    25
  adding large
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    26
  adding normal1
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    27
  adding sub/maybelarge.dat
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    28
  adding sub/normal2
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    29
  $ hg commit -m"add large, normal1" large normal1
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    30
  $ hg commit -m"add sub/*" sub
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    31
  $ [ -d .hg/largefiles ] && echo fail || echo pass
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    32
  pass
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    33
  $ cd ..
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    34
  $ hg lfconvert --size 0.2 bigfile-repo largefiles-repo
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    35
  initializing destination largefiles-repo
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    36
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    37
"lfconvert" converts content correctly
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    38
  $ cd largefiles-repo
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    39
  $ hg up
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    40
  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    41
  getting changed largefiles
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    42
  2 largefiles updated, 0 removed
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    43
  $ hg locate
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    44
  .hglf/large
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    45
  .hglf/sub/maybelarge.dat
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    46
  normal1
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    47
  sub/normal2
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    48
  $ cat normal1
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    49
  normal
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    50
  $ cat sub/normal2
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    51
  alsonormal
15389
3bece03bf3c6 tests: use md5sum.py instead of sha1sum, add check
Matt Mackall <mpm@selenic.com>
parents: 15364
diff changeset
    52
  $ "$TESTDIR/md5sum.py" large sub/maybelarge.dat
3bece03bf3c6 tests: use md5sum.py instead of sha1sum, add check
Matt Mackall <mpm@selenic.com>
parents: 15364
diff changeset
    53
  ec87a838931d4d5d2e94a04644788a55  large
3bece03bf3c6 tests: use md5sum.py instead of sha1sum, add check
Matt Mackall <mpm@selenic.com>
parents: 15364
diff changeset
    54
  1276481102f218c981e0324180bafd9f  sub/maybelarge.dat
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    55
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    56
"lfconvert" adds 'largefiles' to .hg/requires.
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    57
  $ cat .hg/requires
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    58
  largefiles
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    59
  revlogv1
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    60
  fncache
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    61
  store
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    62
  dotencode
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    63
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    64
"lfconvert" includes a newline at the end of the standin files.
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    65
  $ cat .hglf/large .hglf/sub/maybelarge.dat
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
    66
  2e000fa7e85759c7f4c254d4d9c33ef481e459a7
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
    67
  34e163be8e43c5631d8b92e9c43ab0bf0fa62b9c
15339
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
    68
  $ cd ..
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
    69
15342
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    70
add some changesets to rename/remove/merge
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    71
  $ cd bigfile-repo
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    72
  $ hg mv -q sub stuff
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    73
  $ hg commit -m"rename sub/ to stuff/"
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    74
  $ hg update -q 1
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    75
  $ echo blah >> normal3
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    76
  $ echo blah >> sub/normal2
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    77
  $ echo blah >> sub/maybelarge.dat
15389
3bece03bf3c6 tests: use md5sum.py instead of sha1sum, add check
Matt Mackall <mpm@selenic.com>
parents: 15364
diff changeset
    78
  $ "$TESTDIR/md5sum.py" sub/maybelarge.dat
3bece03bf3c6 tests: use md5sum.py instead of sha1sum, add check
Matt Mackall <mpm@selenic.com>
parents: 15364
diff changeset
    79
  1dd0b99ff80e19cff409702a1d3f5e15  sub/maybelarge.dat
15342
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    80
  $ hg commit -A -m"add normal3, modify sub/*"
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    81
  adding normal3
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    82
  created new head
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    83
  $ hg rm large normal3
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    84
  $ hg commit -q -m"remove large, normal3"
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    85
  $ hg merge
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    86
  merging sub/maybelarge.dat and stuff/maybelarge.dat to stuff/maybelarge.dat
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    87
  warning: $TESTTMP/bigfile-repo/stuff/maybelarge.dat looks like a binary file.
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    88
  merging stuff/maybelarge.dat failed!
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    89
  merging sub/normal2 and stuff/normal2 to stuff/normal2
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    90
  0 files updated, 1 files merged, 0 files removed, 1 files unresolved
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    91
  use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    92
  [1]
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    93
  $ hg cat -r . sub/maybelarge.dat > stuff/maybelarge.dat
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    94
  $ hg resolve -m stuff/maybelarge.dat
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    95
  $ hg commit -m"merge"
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    96
  $ hg glog --template "{rev}:{node|short}  {desc|firstline}\n"
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    97
  @    5:4884f215abda  merge
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    98
  |\
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
    99
  | o  4:7285f817b77e  remove large, normal3
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   100
  | |
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   101
  | o  3:67e3892e3534  add normal3, modify sub/*
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   102
  | |
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   103
  o |  2:c96c8beb5d56  rename sub/ to stuff/
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   104
  |/
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   105
  o  1:020c65d24e11  add sub/*
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   106
  |
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   107
  o  0:117b8328f97a  add large, normal1
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   108
  
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   109
  $ cd ..
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   110
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   111
lfconvert with rename, merge, and remove
15343
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   112
  $ rm -rf largefiles-repo
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   113
  $ hg lfconvert --size 0.2 bigfile-repo largefiles-repo
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   114
  initializing destination largefiles-repo
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   115
  $ cd largefiles-repo
15342
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   116
  $ hg glog --template "{rev}:{node|short}  {desc|firstline}\n"
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   117
  o    5:8e05f5f2b77e  merge
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   118
  |\
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   119
  | o  4:a5a02de7a8e4  remove large, normal3
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   120
  | |
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   121
  | o  3:55759520c76f  add normal3, modify sub/*
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   122
  | |
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   123
  o |  2:261ad3f3f037  rename sub/ to stuff/
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   124
  |/
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   125
  o  1:334e5237836d  add sub/*
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   126
  |
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   127
  o  0:d4892ec57ce2  add large, normal1
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   128
  
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   129
  $ hg locate -r 2
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   130
  .hglf/large
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   131
  .hglf/stuff/maybelarge.dat
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   132
  normal1
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   133
  stuff/normal2
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   134
  $ hg locate -r 3
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   135
  .hglf/large
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   136
  .hglf/sub/maybelarge.dat
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   137
  normal1
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   138
  normal3
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   139
  sub/normal2
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   140
  $ hg locate -r 4
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   141
  .hglf/sub/maybelarge.dat
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   142
  normal1
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   143
  sub/normal2
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   144
  $ hg locate -r 5
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   145
  .hglf/stuff/maybelarge.dat
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   146
  normal1
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   147
  stuff/normal2
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   148
  $ hg update
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   149
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   150
  getting changed largefiles
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   151
  1 largefiles updated, 0 removed
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   152
  $ cat stuff/normal2
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   153
  alsonormal
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   154
  blah
15389
3bece03bf3c6 tests: use md5sum.py instead of sha1sum, add check
Matt Mackall <mpm@selenic.com>
parents: 15364
diff changeset
   155
  $ "$TESTDIR/md5sum.py" stuff/maybelarge.dat
3bece03bf3c6 tests: use md5sum.py instead of sha1sum, add check
Matt Mackall <mpm@selenic.com>
parents: 15364
diff changeset
   156
  1dd0b99ff80e19cff409702a1d3f5e15  stuff/maybelarge.dat
15342
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   157
  $ cat .hglf/stuff/maybelarge.dat
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   158
  76236b6a2c6102826c61af4297dd738fb3b1de38
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   159
  $ cd ..
b2e00d67f590 largefiles: test lfconvert with rename, remove, and merge
Greg Ward <greg@gerg.ca>
parents: 15341
diff changeset
   160
15339
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   161
"lfconvert" error cases
15340
0e58513cc59a largefiles: rearrange how lfconvert detects non-local repos
Greg Ward <greg@gerg.ca>
parents: 15339
diff changeset
   162
  $ hg lfconvert http://localhost/foo foo
0e58513cc59a largefiles: rearrange how lfconvert detects non-local repos
Greg Ward <greg@gerg.ca>
parents: 15339
diff changeset
   163
  abort: http://localhost/foo is not a local Mercurial repo
0e58513cc59a largefiles: rearrange how lfconvert detects non-local repos
Greg Ward <greg@gerg.ca>
parents: 15339
diff changeset
   164
  [255]
0e58513cc59a largefiles: rearrange how lfconvert detects non-local repos
Greg Ward <greg@gerg.ca>
parents: 15339
diff changeset
   165
  $ hg lfconvert foo ssh://localhost/foo
0e58513cc59a largefiles: rearrange how lfconvert detects non-local repos
Greg Ward <greg@gerg.ca>
parents: 15339
diff changeset
   166
  abort: ssh://localhost/foo is not a local Mercurial repo
0e58513cc59a largefiles: rearrange how lfconvert detects non-local repos
Greg Ward <greg@gerg.ca>
parents: 15339
diff changeset
   167
  [255]
15339
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   168
  $ hg lfconvert nosuchrepo foo
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   169
  abort: repository nosuchrepo not found!
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   170
  [255]
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   171
  $ hg share -q -U bigfile-repo shared
15364
572c22c88be6 tests: fix check-code detection of anchored expressions, fix echo -n usage
Matt Mackall <mpm@selenic.com>
parents: 15343
diff changeset
   172
  $ printf 'bogus' > shared/.hg/sharedpath
15339
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   173
  $ hg lfconvert shared foo
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   174
  abort: .hg/sharedpath points to nonexistent directory $TESTTMP/bogus!
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   175
  [255]
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   176
  $ hg lfconvert bigfile-repo largefiles-repo
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   177
  initializing destination largefiles-repo
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   178
  abort: repository largefiles-repo already exists!
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   179
  [255]
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   180
15343
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   181
add another largefile to the new largefiles repo
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   182
  $ cd largefiles-repo
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   183
  $ dd if=/dev/zero bs=1k count=1k > anotherlarge 2> /dev/null
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   184
  $ hg add --lfsize=1 anotherlarge
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   185
  $ hg commit -m "add anotherlarge (should be a largefile)"
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   186
  $ cat .hglf/anotherlarge
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   187
  3b71f43ff30f4b15b5cd85dd9e95ebc7e84eb5a3
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   188
  $ cd ..
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   189
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   190
round-trip: converting back to a normal (non-largefiles) repo with
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   191
"lfconvert --to-normal" should give the same as ../bigfile-repo
15339
be1377d19018 largefiles: test lfconvert error handling; remove redundant code
Greg Ward <greg@gerg.ca>
parents: 15338
diff changeset
   192
  $ cd largefiles-repo
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   193
  $ hg lfconvert --to-normal . ../normal-repo
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   194
  initializing destination ../normal-repo
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   195
  $ cd ../normal-repo
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   196
  $ cat >> .hg/hgrc <<EOF
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   197
  > [extensions]
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   198
  > largefiles = !
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   199
  > EOF
15343
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   200
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   201
# Hmmm: the changeset ID for rev 5 is different from the original
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   202
# normal repo (../bigfile-repo), because the changelog filelist
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   203
# differs between the two incarnations of rev 5: this repo includes
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   204
# 'large' in the list, but ../bigfile-repo does not. Since rev 5
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   205
# removes 'large' relative to the first parent in both repos, it seems
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   206
# to me that lfconvert is doing a *better* job than
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   207
# "hg remove" + "hg merge" + "hg commit".
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   208
#  $ hg -R ../bigfile-repo debugdata -c 5
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   209
#  $ hg debugdata -c 5
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   210
  $ hg glog --template "{rev}:{node|short}  {desc|firstline}\n"
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   211
  o  6:1635824e6f59  add anotherlarge (should be a largefile)
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   212
  |
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   213
  o    5:7215f8deeaaf  merge
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   214
  |\
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   215
  | o  4:7285f817b77e  remove large, normal3
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   216
  | |
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   217
  | o  3:67e3892e3534  add normal3, modify sub/*
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   218
  | |
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   219
  o |  2:c96c8beb5d56  rename sub/ to stuff/
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   220
  |/
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   221
  o  1:020c65d24e11  add sub/*
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   222
  |
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   223
  o  0:117b8328f97a  add large, normal1
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   224
  
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   225
  $ hg update
15343
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   226
  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   227
  $ hg locate
15341
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
   228
  anotherlarge
7ef13e53434e largefiles: beef up test-lfconvert.t so it's more thorough
Greg Ward <greg@gerg.ca>
parents: 15340
diff changeset
   229
  normal1
15343
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   230
  stuff/maybelarge.dat
7fe8b7e097a4 largefiles: test "lfconvert --to-normal" with rename/remove/merge
Greg Ward <greg@gerg.ca>
parents: 15342
diff changeset
   231
  stuff/normal2
15338
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   232
  $ [ -d .hg/largefiles ] && echo fail || echo pass
f4b29792fcda largefiles: extract test-lfconvert.t from test-largefiles.t
Greg Ward <greg@gerg.ca>
parents:
diff changeset
   233
  pass