t / t5301-sliding-window.shon commit Merge git://git.kernel.org/pub/scm/gitk/gitk (2dbae5a)
   1#!/bin/sh
   2#
   3# Copyright (c) 2006 Shawn Pearce
   4#
   5
   6test_description='mmap sliding window tests'
   7. ./test-lib.sh
   8
   9test_expect_success \
  10    'setup' \
  11    'rm -f .git/index* &&
  12     for i in a b c
  13     do
  14         echo $i >$i &&
  15         test-genrandom "$i" 32768 >>$i &&
  16         git update-index --add $i || return 1
  17     done &&
  18     echo d >d && cat c >>d && git update-index --add d &&
  19     tree=`git write-tree` &&
  20     commit1=`git commit-tree $tree </dev/null` &&
  21     git update-ref HEAD $commit1 &&
  22     git repack -a -d &&
  23     test "`git count-objects`" = "0 objects, 0 kilobytes" &&
  24     pack1=`ls .git/objects/pack/*.pack` &&
  25     test -f "$pack1"'
  26
  27test_expect_success \
  28    'verify-pack -v, defaults' \
  29    'git verify-pack -v "$pack1"'
  30
  31test_expect_success \
  32    'verify-pack -v, packedGitWindowSize == 1 page' \
  33    'git config core.packedGitWindowSize 512 &&
  34     git verify-pack -v "$pack1"'
  35
  36test_expect_success \
  37    'verify-pack -v, packedGit{WindowSize,Limit} == 1 page' \
  38    'git config core.packedGitWindowSize 512 &&
  39     git config core.packedGitLimit 512 &&
  40     git verify-pack -v "$pack1"'
  41
  42test_expect_success \
  43    'repack -a -d, packedGit{WindowSize,Limit} == 1 page' \
  44    'git config core.packedGitWindowSize 512 &&
  45     git config core.packedGitLimit 512 &&
  46     commit2=`git commit-tree $tree -p $commit1 </dev/null` &&
  47     git update-ref HEAD $commit2 &&
  48     git repack -a -d &&
  49     test "`git count-objects`" = "0 objects, 0 kilobytes" &&
  50     pack2=`ls .git/objects/pack/*.pack` &&
  51     test -f "$pack2" &&
  52     test "$pack1" \!= "$pack2"'
  53
  54test_expect_success \
  55    'verify-pack -v, defaults' \
  56    'git config --unset core.packedGitWindowSize &&
  57     git config --unset core.packedGitLimit &&
  58     git verify-pack -v "$pack2"'
  59
  60test_done