Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> --- On Fri, Sep 21, 2007 at 11:04:05AM -0700, Junio C Hamano <gitster@pobox.com> wrote:okay, here is the third try. now checking for the result using diff-tree and ls-files. hopefully i did what you expected :) t/t3060-subprojects-tutorial.sh | 95 +++++++++++++++++++++++++++++++++++++++ 1 files changed, 95 insertions(+), 0 deletions(-) create mode 100755 t/t3060-subprojects-tutorial.sh diff --git a/t/t3060-subprojects-tutorial.sh b/t/t3060-subprojects-tutorial.sh new file mode 100755 index 0000000..d46dded --- /dev/null +++ b/t/t3060-subprojects-tutorial.sh @@ -0,0 +1,95 @@ +#!/bin/sh +# +# Copyright (c) 2007 Miklos Vajna +# + +test_description='A simple subprojects tutorial in the form of a test case' + +. ./test-lib.sh + +test_expect_success "create the submodules" ' + for i in a b c d + do + mkdir $i && + cd $i && + git init && + echo "module $i" > $i.txt && + git add $i.txt && + git commit -m "Initial commit, submodule $i" && + cd .. + done +' + +mkdir super +cd super +cat >expected << EOF +:000000 100644 00000... A .gitmodules +:000000 160000 00000... A a +:000000 160000 00000... A b +:000000 160000 00000... A c +:000000 160000 00000... A d +EOF + +test_expect_success "create the superproject" ' + git init && + echo super > super.txt && + git add super.txt && + git commit -m "initial" && + for i in a b c d + do + git submodule add '`pwd`'/../$i + done && + git commit -m "Add submodules a, b, c and d." && + git diff-tree --abbrev=5 HEAD^ HEAD |cut -d" " -f-3,5- >current && + cmp expected current +' + +test_expect_success "checking if the correct commit is stored in the superproject" ' + for i in a b c d + do + git ls-files -s $i|cut -d " " -f 2 > $i.actual && + (cd $i && git-rev-parse HEAD) > $i.expected && + cmp $i.actual $i.expected + done && + cd .. +' + +test_expect_success "clone the superproject" ' + git clone super cloned && + cd cloned +' + +test_expect_success "submodule init" ' + git submodule init +' + +test_expect_success "submodule update" ' + git submodule update +' + +test_expect_success "checking the result of the commit in the cloned project" ' + for i in a b c d + do + git ls-files -s $i|cut -d " " -f 2 > $i.actual && + (cd $i && git-rev-parse HEAD) > $i.expected && + cmp $i.actual $i.expected + done +' + +test_expect_success "update the submodule from within the superproject" ' + cd a && + echo "adding a line again" >> a.txt && + git commit -a -m "Updated the submodule from within the superproject." && + git push && + cd .. && + git add a && + git commit -m "Updated submodule a." && + git push +' + +test_expect_success "checking the result of the commit in the updated cloned project" ' + git ls-files -s a|cut -d " " -f 2 > a.actual && + (cd a && git-rev-parse HEAD) > a.expected && + cmp a.actual a.expected +' +test_done -- 1.5.3.2.80.g077d6f-dirty - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
| Ingo Molnar | [patch 12/13] syslets: x86: optimized copy_uatom() |
| Greg Kroah-Hartman | [PATCH 017/196] aoechr: Convert from class_device to device |
| Yinghai Lu | Re: 2.6.26, PAT and AMD family 6 |
| Jan Engelhardt | intel iommu (Re: -mm merge plans for 2.6.23) |
git: | |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| David Miller | [GIT]: Networking |
| David Miller | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Natalie Protasevich | [BUG] New Kernel Bugs |
