t / t5301-sliding-window.shon commit Merge branch 'jc/fetch-refspec-doc-update' into maint (9fc7bc6)
   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