chiark / gitweb /
test suite: tagupl: Test lack of signature
[dgit.git] / tests / tests / tagupl
index d79322f4ceeb0e7d39ee31721f5a39871ebe2053..80b92bee059d0f004fd3d56dfe05ded2cb0b325f 100755 (executable)
@@ -46,8 +46,6 @@ perl -i -ne '
        print or die $!;
 ' ../basetag
 
-git cat-file tag test-dummy/1.0-1 >../raw-base
-
 mv-ident () {
        local f=$tmp/$1
        if test -e $f; then
@@ -88,7 +86,9 @@ expect-email () {
 }
 
 raw-mangled () {
-       git update-ref $tagname $(git hash-object -w -t tag ../tagobj-$ident)
+       git update-ref refs/tags/$tagname \
+               $(git hash-object -w -t tag ../tagobj-$ident)
+       t-tagupl-run-drs
 }
 
 tagname=test-dummy/1.2
@@ -131,6 +131,20 @@ expect-email upsmism 's/ upstream=/$&3/' \
 cp -al ../$p ../$p.save
 cd ../$p
 
+git cat-file tag $tagname >../raw-base
+
+next-mangle sigfail
+perl -pe <../raw-base >../tagobj-$ident 's/ split / split ignoreme /'
+raw-mangled
+grep 'gpgv: BAD signature' ../sendmail.log
+
+next-mangle nosig
+perl -ne <../raw-base >../tagobj-$ident 'print unless m/^-----/..0'
+raw-mangled
+grep 'missing signature' ../sendmail.log
+
+git cat-file tag test-dummy/1.0-1 >../raw-base
+
 next-mangle badtagger
 perl -pe <../raw-base '
        s/\+\d+$/xyz/ if m/^tagger /;
@@ -139,6 +153,7 @@ perl -pe <../raw-base '
 echo >>../tagobj-$ident
 cat ../basetag >>../tagobj-$ident
 raw-mangled
+grep 'failed to fish tagger out of tag' ../tagupl/overall.log
 
 cd ..
 rm -rf $p