| #!/bin/sh | 
 | # | 
 | # Copyright (c) 2006 Shawn Pearce | 
 | # | 
 |  | 
 | test_description='mmap sliding window tests' | 
 | . ./test-lib.sh | 
 |  | 
 | test_expect_success \ | 
 |     'setup' \ | 
 |     'rm -f .git/index* && | 
 |      for i in a b c | 
 |      do | 
 |          echo $i >$i && | 
 |          test-genrandom "$i" 32768 >>$i && | 
 |          git update-index --add $i || return 1 | 
 |      done && | 
 |      echo d >d && cat c >>d && git update-index --add d && | 
 |      tree=$(git write-tree) && | 
 |      commit1=$(git commit-tree $tree </dev/null) && | 
 |      git update-ref HEAD $commit1 && | 
 |      git repack -a -d && | 
 |      test "$(git count-objects)" = "0 objects, 0 kilobytes" && | 
 |      pack1=$(ls .git/objects/pack/*.pack) && | 
 |      test -f "$pack1"' | 
 |  | 
 | test_expect_success \ | 
 |     'verify-pack -v, defaults' \ | 
 |     'git verify-pack -v "$pack1"' | 
 |  | 
 | test_expect_success \ | 
 |     'verify-pack -v, packedGitWindowSize == 1 page' \ | 
 |     'git config core.packedGitWindowSize 512 && | 
 |      git verify-pack -v "$pack1"' | 
 |  | 
 | test_expect_success \ | 
 |     'verify-pack -v, packedGit{WindowSize,Limit} == 1 page' \ | 
 |     'git config core.packedGitWindowSize 512 && | 
 |      git config core.packedGitLimit 512 && | 
 |      git verify-pack -v "$pack1"' | 
 |  | 
 | test_expect_success \ | 
 |     'repack -a -d, packedGit{WindowSize,Limit} == 1 page' \ | 
 |     'git config core.packedGitWindowSize 512 && | 
 |      git config core.packedGitLimit 512 && | 
 |      commit2=$(git commit-tree $tree -p $commit1 </dev/null) && | 
 |      git update-ref HEAD $commit2 && | 
 |      git repack -a -d && | 
 |      test "$(git count-objects)" = "0 objects, 0 kilobytes" && | 
 |      pack2=$(ls .git/objects/pack/*.pack) && | 
 |      test -f "$pack2" && | 
 |      test "$pack1" \!= "$pack2"' | 
 |  | 
 | test_expect_success \ | 
 |     'verify-pack -v, defaults' \ | 
 |     'git config --unset core.packedGitWindowSize && | 
 |      git config --unset core.packedGitLimit && | 
 |      git verify-pack -v "$pack2"' | 
 |  | 
 | test_done |