]> git.saurik.com Git - apt.git/blobdiff - test/integration/test-apt-update-rollback
check lists/ content in tests doing rollback
[apt.git] / test / integration / test-apt-update-rollback
index 220c3052b830e2204b21321fd43e6482be2c3b38..d33411da46ed241e87519df7ddd4947fa29a8245 100755 (executable)
@@ -37,6 +37,7 @@ break_repository_sources_index() {
 start_with_good_inrelease() {
     create_fresh_archive
     testsuccess aptget update
+    listcurrentlistsdirectory > lists.before
     testequal "old/unstable 1.0 all" apt list -q
 }
 
@@ -63,6 +64,7 @@ test_inrelease_to_broken_hash_reverts_all() {
 
 E: Some index files failed to download. They have been ignored, or old ones used instead." aptget update -qq
     # ensure that the Packages file is also rolled back
+    testfileequal lists.before "$(listcurrentlistsdirectory)"
     testequal "E: Unable to locate package new" aptget install new -s -qq
 }
 
@@ -78,7 +80,8 @@ test_inrelease_to_valid_release() {
     # update fails
     testequal "E: The repository 'file: unstable Release.gpg' is no longer signed." aptget update -qq
 
-    # test that we can install the new packages but do no longer have a sig
+    # test that security downgrade was not successful
+    testfileequal lists.before "$(listcurrentlistsdirectory)"
     testsuccess aptget install old -s
     testfailure aptget install new -s
     testsuccess ls $ROOTDIR/var/lib/apt/lists/*_InRelease
@@ -101,6 +104,7 @@ test_inrelease_to_release_reverts_all() {
     testequal "E: The repository 'file: unstable Release.gpg' is no longer signed." aptget update -qq # -o Debug::acquire::transaction=1
 
     # ensure that the Packages file is also rolled back
+    testfileequal lists.before "$(listcurrentlistsdirectory)"
     testsuccess aptget install old -s
     testfailure aptget install new -s
     testsuccess ls $ROOTDIR/var/lib/apt/lists/*_InRelease
@@ -114,6 +118,7 @@ test_unauthenticated_to_invalid_inrelease() {
     rm $APTARCHIVE/dists/unstable/Release.gpg
 
     testsuccess aptget update --allow-insecure-repositories
+    listcurrentlistsdirectory > lists.before
     testequal "WARNING: The following packages cannot be authenticated!
   old
 E: There are problems and -y was used without --force-yes" aptget install -qq -y old
@@ -126,6 +131,7 @@ E: There are problems and -y was used without --force-yes" aptget install -qq -y
 
 E: Some index files failed to download. They have been ignored, or old ones used instead." aptget update -qq
 
+    testfileequal lists.before "$(listcurrentlistsdirectory)"
     testfailure ls rootdir/var/lib/apt/lists/*_InRelease
     testequal "WARNING: The following packages cannot be authenticated!
   old
@@ -144,6 +150,7 @@ W: Failed to fetch file:$APTARCHIVE/dists/unstable/InRelease  The following sign
 
 W: Some index files failed to download. They have been ignored, or old ones used instead." aptget update -qq
 
+    testfileequal lists.before "$(listcurrentlistsdirectory)"
     testsuccess ls rootdir/var/lib/apt/lists/*_InRelease
 }
 
@@ -158,6 +165,7 @@ test_inrelease_to_broken_gzip() {
     rm $APTARCHIVE/dists/unstable/main/source/Sources
 
     testfailure aptget update
+    testfileequal lists.before "$(listcurrentlistsdirectory)"
 }
 
 TESTDIR=$(readlink -f $(dirname $0))