#!/bin/bash
set -e
autoimport=
. tests/lib

t-dependencies NO-DGIT GDR

t-tstunt-parsechangelog
t-setup-import gdr-convert-gbp-noarchive

cd $p

: 'upstream hat'

t-gdr-prep-new-upstream 2.1

: 'maintainer hat'

git branch startpoint
v=2.1-1

git checkout master

t-expect-fail F:'Could not determine appropriate upstream commitish' \
t-git-debrebase new-upstream $v

git tag v2.1 upstream

t-git-debrebase new-upstream ${v%-*}

t-gdr-good laundered
git reflog | egrep 'debrebase new-upstream.*checkout'

t-git-debrebase stitch
t-gdr-good stitched

git branch ordinary

: 'with --anchor'

git reset --hard startpoint

t-git-debrebase analyse >../anal.anch
anchor=$(perl <../anal.anch -ne '
	next unless m/^(\w+) Anchor\s/;
	print $1,"\n";
	exit;
')

GIT_REFLOG_ACTION='STUNT-RLA' \
t-git-debrebase --anchor=$anchor -fanchor-treated new-upstream $v upstream
t-gdr-good laundered
git reflog | egrep 'STUNT-RLA: debrebase new-upstream'
git reflog | egrep 'STUNT-RLA: debrebase: launder for new upstream'

t-git-debrebase stitch
t-gdr-good stitched

git diff --quiet ordinary

t-ok
