]> asedeno.scripts.mit.edu Git - git.git/blob - t/t5800-remote-helpers.sh
remote-helpers: add tests for testgit helper
[git.git] / t / t5800-remote-helpers.sh
1 #!/bin/sh
2 #
3 # Copyright (c) 2010 Sverre Rabbelier
4 #
5
6 test_description='Test remote-helper import and export commands'
7
8 . ./test-lib.sh
9
10 test_expect_success 'setup repository' '
11         git init --bare server/.git &&
12         git clone server public &&
13         (cd public &&
14          echo content >file &&
15          git add file &&
16          git commit -m one &&
17          git push origin master)
18 '
19
20 test_expect_success 'cloning from local repo' '
21         git clone "testgit::${PWD}/server" localclone &&
22         test_cmp public/file localclone/file
23 '
24
25 test_expect_success 'cloning from remote repo' '
26         git clone "testgit::file://${PWD}/server" clone &&
27         test_cmp public/file clone/file
28 '
29
30 test_expect_success 'create new commit on remote' '
31         (cd public &&
32          echo content >>file &&
33          git commit -a -m two &&
34          git push)
35 '
36
37 test_expect_success 'pulling from local repo' '
38         (cd localclone && git pull) &&
39         test_cmp public/file localclone/file
40 '
41
42 test_expect_success 'pulling from remote remote' '
43         (cd clone && git pull) &&
44         test_cmp public/file clone/file
45 '
46
47 test_expect_success 'pushing to local repo' '
48         (cd localclone &&
49         echo content >>file &&
50         git commit -a -m three &&
51         git push) &&
52         HEAD=$(git --git-dir=localclone/.git rev-parse --verify HEAD) &&
53         test $HEAD = $(git --git-dir=server/.git rev-parse --verify HEAD)
54 '
55
56 test_expect_success 'synch with changes from localclone' '
57         (cd clone &&
58          git pull)
59 '
60
61 test_expect_success 'pushing remote local repo' '
62         (cd clone &&
63         echo content >>file &&
64         git commit -a -m four &&
65         git push) &&
66         HEAD=$(git --git-dir=clone/.git rev-parse --verify HEAD) &&
67         test $HEAD = $(git --git-dir=server/.git rev-parse --verify HEAD)
68 '
69
70 test_done