view tests/test-generaldelta.t @ 19819:f0fc4d5797e1

mq: extract `mq.queue.strip` It does not depend on `mq.queue` anymore.
author Pierre-Yves David <pierre-yves.david@ens-lyon.org>
date Wed, 25 Sep 2013 14:07:37 +0200
parents 4d2bea6604d3
children 1b2f9d36953e
line wrap: on
line source

Check whether size of generaldelta revlog is not bigger than its
regular equivalent. Test would fail if generaldelta was naive
implementation of parentdelta: third manifest revision would be fully
inserted due to big distance from its paren revision (zero).

  $ hg init repo
  $ cd repo
  $ echo foo > foo
  $ echo bar > bar
  $ hg commit -q -Am boo
  $ hg clone --pull . ../gdrepo -q --config format.generaldelta=yes
  $ for r in 1 2 3; do
  >   echo $r > foo
  >   hg commit -q -m $r
  >   hg up -q -r 0
  >   hg pull . -q -r $r -R ../gdrepo
  > done
  $ cd ..
  $ regsize=`du -s -b repo/.hg/store/00manifest.i | cut -f 1`
  $ gdsize=`du -s -b gdrepo/.hg/store/00manifest.i | cut -f 1`
  $ if [ $regsize -gt $gdsize ]; then
  >   echo 'generaldelta increased size of a revlog!'
  > fi