t / t5301-sliding-window.shon commit Teach git list-objects logic not to follow gitlinks (ea376fa)
   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         dd if=/dev/urandom bs=32k count=1 >>$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