chiark / gitweb /
git-debrebase: test suite: t-gdr-good: test git-debrebase breakwater
[dgit.git] / tests / lib-gdr
index 6d11009d8013ddf168d31a37a280d9f49fe76383..aeb7725411eb20038eb307b525644defb7f3f77d 100644 (file)
@@ -20,12 +20,15 @@ t-gdr-good () {
        #   stitched
        #   patches
 
-       git diff ${beforetag-t.before} -- ':.' ':!debian/patches'
+       git diff --quiet ${beforetag-t.before} -- ':.' ':!debian/patches'
 
-       local etype netype
+       local etype netype bwtip
 
        case $state in
-       laundered)      etype=Upstream  ;;
+       laundered)
+                       etype=Upstream
+                       bwtip=Y:`t-git-debrebase breakwater`
+               ;;
        stitched)       etype=Pseudomerge ;;
        pushed)         etype=AddPatches; netype=Pseudomerge ;;
        esac
@@ -43,28 +46,51 @@ t-gdr-good () {
                expect="$parents"
                enparents=1
                : "$ctype/$cetype" "$parents"
+
                case "$ctype/$cetype" in
-               Pseudomerge/SAME)
+               Pseudomerge/SAME)                       ;;
+               Packaging/SAME)                         ;;
+               Packaging/Upstream)                     ;;
+               AddPatches/SAME)                        ;;
+               Changelog/Packaging)                    ;;
+               Changelog/Upstream)                     ;;
+               Upstream/SAME)                          ;;
+               BreakwaterUpstreamMerge/Upstream)       ;;
+               BreakwaterUpstreamMerge/Packaging)      ;;
+               *)
+                       fail "etype=$etype ctype=$ctype cetype=$cetype $cid"
+                       ;;
+               esac
+
+               case "$ctype/$etype" in
+               Packaging/Upstream|\
+               Changelog/Upstream)
+                       if [ "x$bwtip" != x ]; then
+                               test "$bwtip" = "Y:$cid"
+                               bwtip=''
+                       fi
+               esac
+
+               case "$ctype" in
+               Pseudomerge)
                        expect=${info#Contributor=}
                        expect=${expect%% *}
                        enparents=2
                        git diff --quiet $expect..$cid
                        etype=Upstream
                        ;;
-               Packaging/SAME|\
-               Packaging/Upstream)
+               Packaging)
                        git diff --quiet $expect..$cid -- ':.' ':!debian' 
                        git diff --quiet $expect..$cid -- ':debian/patches'
                        etype=Packaging
                        ;;
-               AddPatches/SAME)
+               AddPatches)
                        git diff --quiet $expect..$cid -- \
                                ':.' ':!debian/patches'
                        etype=$netype
                        netype=Upstream
                        ;;
-               Changelog/Packaging|\
-               Changelog/Upstream)
+               Changelog)
                        git diff --quiet $expect..$cid -- \
                                ':.' ':!debian/changelog'
                        etype=Packaging
@@ -72,13 +98,9 @@ t-gdr-good () {
                Upstream/SAME)
                        git diff --quiet $expect..$cid -- ':debian'
                        ;;
-               BreakwaterUpstreamMerge/Upstream| \
-               BreakwaterUpstreamMerge/Packaging)
+               BreakwaterUpstreamMerge)
                        break
                        ;;
-               *)
-                       fail "etype=$etype ctype=$ctype cetype=$cetype $cid"
-                       ;;
                esac
 
                local cnparents=`printf "%s" "$parents" | wc -w`
@@ -108,3 +130,13 @@ t-some-changes () {
        done
        git commit -m "MIXED add both ($token)"
 }
+
+t-make-new-upstream-tarball () {
+       local uv=$1
+       git checkout make-upstream
+       # leaves ust set to filename of orig tarball
+       echo "upstream $uv" >>docs/README
+       git commit -a -m "upstream $uv tarball"
+       ust=example_$uv.orig.tar.gz
+       git archive -o ../$ust --prefix=example-2.0/ make-upstream
+}