#!/bin/bash
set -e
. tests/lib
+. $troot/lib-import-chk
t-tstunt-parsechangelog
-
-chk1 () {
- p=$1
- v=$2
-
- t-archive $p $v
-}
-chk2() {
- t-git-none
- rm -rf $p
- t-dgit --no-rm-on-error clone $p
-
- # And now we make an update using the same orig tarball, and
- # check that the orig import is stable.
-
- cd $p
-
- git branch first-import
-
- m='Commit for import check'
- echo "$m" >>import-check
-
- v=${v%-*}-99
- dch -v $v -D unstable -m "$m"
-
- git add import-check debian/changelog
- git commit -m "$m"
-
- t-dgit -wgf quilt-fixup
- t-dgit -wgf build-source
-
- # The resulting .dsc does not have a Dgit line (because dgit push
- # puts that in). So we just shove it in the archive now
-
- ln ../${p}_${v}.* $tmp/mirror/pool/main/
- t-archive-query
-
- t-dgit fetch
-
- git branch first-2nd-import remotes/dgit/dgit/sid
-
- t-git-next-date
-
- git update-ref refs/remotes/dgit/dgit/sid first-import
-
- t-dgit fetch
-
- t-refs-same-start
- t-ref-same refs/remotes/dgit/dgit/sid
- t-ref-same refs/heads/first-2nd-import
-
- for orig in ../${p}_${v%-*}.orig*.tar.*; do
- tar -atf $orig | LC_ALL=C sort >../files.o
- pfx=$(perl <../files.o -ne '
- while (<>) {
- m#^([^/]+/)# or exit 0;
- $x //= $1;
- $x eq $1 or exit 0;
- }
- print "$x\n";
- ')
- perl -i~ -pe '
- s#^\Q'"$pfx"'\E##;
- $_="" if m/^$/ || m#/$# || m#^\.git/#;
- ' ../files.o
- orig=${orig#../}
- pat="^Import ${orig//./\\.}\$"
- t-refs-same-start
- for start in first-import first-2nd-import; do
- git log --pretty='tformat:%H' --grep "$pat" $start \
- >../t.imp
- test $(wc -l <../t.imp) = 1
- imp=$(cat ../t.imp)
- t-ref-same-val "$orig $start" "$imp"
- done
- git ls-tree -r --name-only "$t_ref_val:" \
- | sort >../files.g
- diff ../files.{o,g}
- done
- cd ..
-}
-
-chk() { chk1 "$@"; chk2; }
+t-buildproductsdir-config
# 1.0 with diff
-chk pari-extra 3-1
+t-import-chk pari-extra 3-1
# 3.0 (quilt), multiple patches, multiple origs
-chk example 1.0-1
+t-import-chk example 1.0-1
# 3.0 (quilt), single-debian-patch, one orig
-chk sunxi-tools 1.2-2.~~dgittest
-
-mangle1 () {
- rm -f ${1}_*
- chk1 "$@"
- cd $tmp/mirror/pool/main
- dpkg-source -x ${p}_${v}.dsc td
- orig=${p}_${v%-*}.orig.tar.gz
- tar zxf $orig
- rm $orig ${p}_${v}.*
- cd $p
- mkdir urk
- echo urk >urk/urk
- export GZIP=-1
-}
-mangle2 () {
- cd ..
- dpkg-source -b td
- rm -rf $p td
- cd $tmp
- t-archive-none $p
- t-archive-query
- chk2
-}
-
-# 3.0 (quilt), multiple patches, tarbomb orig
-mangle1 example 1.0-1
-tar zvcf ../$orig *
-mangle2
-
-# 3.0 (quilt), multiple patches, tarbomb orig with dot
-mangle1 example 1.0-1
-tar zvcf ../$orig .
-mangle2
-
-# 3.0 (quilt), multiple patches, tarbomb orig with dot and .git and .pc
-mangle1 example 1.0-1
-git init
-mkdir .pc
-echo SPONG >.pc/SPONG
-tar zvcf ../$orig .
-mangle2
+t-import-chk sunxi-tools 1.2-2.~~dgittest
-echo done.
+t-ok