tests/test-archive-symlinks.t
author Mads Kiilerich <mads@kiilerich.com>
Wed, 21 Sep 2011 22:52:00 +0200
branchstable
changeset 15152 94b200a11cf7
parent 11854 aa2abde72da1
child 16350 4f795f5fbb0b
permissions -rw-r--r--
http: handle push of bundles > 2 GB again (issue3017) It was very elegant that httpsendfile implemented __len__ like a string. It was however also dangerous because that protocol can't handle sizes bigger than 2 GB. Mercurial tried to work around that, but it turned out to be too easy to introduce new errors in this area. With this change __len__ is no longer implemented at all and the code will work the same way for short and long posts.

  $ "$TESTDIR/hghave" symlink || exit 80

  $ origdir=`pwd`

  $ hg init repo
  $ cd repo
  $ ln -s nothing dangling

avoid tar warnings about old timestamp

  $ hg ci -d '2000-01-01 00:00:00 +0000' -qAm 'add symlink'

  $ hg archive -t files ../archive
  $ hg archive -t tar -p tar ../archive.tar
  $ hg archive -t zip -p zip ../archive.zip

files

  $ cd "$origdir"
  $ cd archive
  $ $TESTDIR/readlink.py dangling
  dangling -> nothing

tar

  $ cd "$origdir"
  $ tar xf archive.tar
  $ cd tar
  $ $TESTDIR/readlink.py dangling
  dangling -> nothing

zip

  $ cd "$origdir"
  $ unzip archive.zip > /dev/null
  $ cd zip
  $ $TESTDIR/readlink.py dangling
  dangling -> nothing