From: Jeff Hostetler <g...@jeffhostetler.com>

Some simple tests for pack-objects with the new --partial-by-size
and --partial-special options.

Signed-off-by: Jeff Hostetler <jeffh...@microsoft.com>
---
 t/5316-pack-objects-partial.sh | 72 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 72 insertions(+)
 create mode 100644 t/5316-pack-objects-partial.sh

diff --git a/t/5316-pack-objects-partial.sh b/t/5316-pack-objects-partial.sh
new file mode 100644
index 0000000..352de34
--- /dev/null
+++ b/t/5316-pack-objects-partial.sh
@@ -0,0 +1,72 @@
+#!/bin/sh
+
+test_description='pack-object partial'
+
+. ./test-lib.sh
+
+test_expect_success 'setup' '
+       perl -e "print \"a\" x 11;"      > a &&
+       perl -e "print \"a\" x 1100;"    > b &&
+       perl -e "print \"a\" x 1100000;" > c &&
+       echo "ignored"                   > .gitignore &&
+       git add a b c .gitignore &&
+       git commit -m test
+       '
+
+test_expect_success 'all blobs' '
+       git pack-objects --revs --thin --stdout >all.pack <<-EOF &&
+       master
+       
+       EOF
+       git index-pack all.pack &&
+       test 4 = $(git verify-pack -v all.pack | grep blob | wc -l)
+       '
+
+test_expect_success 'no blobs' '
+       git pack-objects --revs --thin --stdout --partial-by-size=0 >none.pack 
<<-EOF &&
+       master
+       
+       EOF
+       git index-pack none.pack &&
+       test 0 = $(git verify-pack -v none.pack | grep blob | wc -l)
+       '
+
+test_expect_success 'small blobs' '
+       git pack-objects --revs --thin --stdout --partial-by-size=1M 
>small.pack <<-EOF &&
+       master
+       
+       EOF
+       git index-pack small.pack &&
+       test 3 = $(git verify-pack -v small.pack | grep blob | wc -l)
+       '
+
+test_expect_success 'tiny blobs' '
+       git pack-objects --revs --thin --stdout --partial-by-size=100 
>tiny.pack <<-EOF &&
+       master
+       
+       EOF
+       git index-pack tiny.pack &&
+       test 2 = $(git verify-pack -v tiny.pack | grep blob | wc -l)
+       '
+
+test_expect_success 'special' '
+       git pack-objects --revs --thin --stdout --partial-special >spec.pack 
<<-EOF &&
+       master
+       
+       EOF
+       git index-pack spec.pack &&
+       test 1 = $(git verify-pack -v spec.pack | grep blob | wc -l)
+       '
+
+test_expect_success 'union' '
+       git pack-objects --revs --thin --stdout --partial-by-size=0 
--partial-special >union.pack <<-EOF &&
+       master
+       
+       EOF
+       git index-pack union.pack &&
+       test 1 = $(git verify-pack -v union.pack | grep blob | wc -l)
+       '
+
+test_done
+
+
-- 
2.7.4

Reply via email to