fi
}
+function assert_grep_not {
+ cat > $testdir/assert_grep
+ if grep -q "$1" $testdir/assert_grep
+ then
+ echo "Could find unexpected \"$1\" in:"
+ cat $testdir/assert_grep
+ # We are in a pipe, i.e. a subshell, so kill the parent
+ kill -TERM $parent_pid
+ exit 1
+ fi
+}
+
cd "$(dirname $0)"/..
assert "[ -e bin/wanna-build ]"
function wanna-build {
# Here we make sure that the "require /etc/wanan-build.conf" does not
# have effect, and load our own file instead.
- echo "Executing wanna-build" "$@" >&2
+ #echo "Executing wanna-build" "$@" >&2
export PERL5LIB=/home/jojo/debian/wanna-build/testsetup/bin
perl -e '
package conf;
Architecture: any
Section: misc
Priority: standard
-Build-Depends: compiler
Binary: bin-a-indep,bin-a-1
__END__
wanna-build -A amd64 -b amd64/build-db --merge-all $testdir/Packages $testdir/quinn-diff $testdir/Sources
Architecture: any
Section: misc
Priority: standard
-Build-Depends: compiler
Binary: bin-a-indep,bin-a-1
__END__
wanna-build -A amd64 -b amd64/build-db --merge-all $testdir/Packages $testdir/quinn-diff $testdir/Sources
Architecture: any
Section: misc
Priority: standard
-Build-Depends: compiler
Binary: bin-a-indep,bin-a-1
Package: src-b
Architecture: any
Section: misc
Priority: standard
-Build-Depends: compiler
Binary: bin-a-indep,bin-a-1
Package: src-b
wanna-build -A amd64 -b amd64/build-db --info src-b | assert_grep "State.*:.*Needs-Build"
+echo "Exporting database"
+wanna-build -A amd64 -b amd64/build-db --export $testdir/export1
+
+echo "Importing database"
+wanna-build -A amd64 -b amd64/build-db --import $testdir/export1
+
+echo "Exporting database again"
+wanna-build -A amd64 -b amd64/build-db --export $testdir/export2
+
+if ! diff -q $testdir/export1 $testdir/export2
+then
+ echo "Exporting and importing is not idempotent!"
+ exit 1
+fi
echo "Finished sucessfully"