Skip to content

Commit

Permalink
test core.gitproxy configuration
Browse files Browse the repository at this point in the history
This is just a basic sanity test to see whether
core.gitproxy works at all. Until now, we were not testing
anywhere.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Jeff King authored and Junio C Hamano committed May 18, 2011
1 parent a1a3fd1 commit c7730e6
Showing 1 changed file with 43 additions and 0 deletions.
43 changes: 43 additions & 0 deletions t/t5532-fetch-proxy.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
#!/bin/sh

test_description='fetching via git:// using core.gitproxy'
. ./test-lib.sh

test_expect_success 'setup remote repo' '
git init remote &&
(cd remote &&
echo content >file &&
git add file &&
git commit -m one
)
'

cat >proxy <<'EOF'
#!/bin/sh
echo >&2 "proxying for $*"
cmd=`perl -e '
read(STDIN, $buf, 4);
my $n = hex($buf) - 4;
read(STDIN, $buf, $n);
my ($cmd, $other) = split /\0/, $buf;
# drop absolute-path on repo name
$cmd =~ s{ /}{ };
print $cmd;
'`
echo >&2 "Running '$cmd'"
exec $cmd
EOF
chmod +x proxy
test_expect_success 'setup local repo' '
git remote add fake git://example.com/remote &&
git config core.gitproxy ./proxy
'

test_expect_success 'fetch through proxy works' '
git fetch fake &&
echo one >expect &&
git log -1 --format=%s FETCH_HEAD >actual &&
test_cmp expect actual
'

test_done

0 comments on commit c7730e6

Please sign in to comment.