test-apt-get-autoremove 3.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. #!/bin/sh
  2. set -e
  3. TESTDIR=$(readlink -f $(dirname $0))
  4. . $TESTDIR/framework
  5. setupenvironment
  6. configarchitecture 'i386'
  7. buildsimplenativepackage 'unrelated' 'all' '1' 'unstable'
  8. buildsimplenativepackage 'po-debconf' 'all' '1.0.16' 'unstable'
  9. buildsimplenativepackage 'debhelper' 'all' '8.0.0' 'unstable' 'Depends: po-debconf'
  10. setupaptarchive
  11. testsuccess aptget install unrelated debhelper -y
  12. testdpkginstalled 'unrelated' 'debhelper' 'po-debconf'
  13. testmarkedauto 'po-debconf'
  14. testsuccess aptget remove debhelper -y
  15. testdpkgnotinstalled 'debhelper'
  16. testdpkginstalled 'po-debconf' 'unrelated'
  17. echo 'APT::NeverAutoRemove { "^debc.*nf$"; };' > rootdir/etc/apt/apt.conf.d/00autoremove
  18. testsuccessequal 'Reading package lists...
  19. Building dependency tree...
  20. Reading state information...
  21. The following packages will be REMOVED:
  22. po-debconf
  23. 0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
  24. Remv po-debconf [1.0.16]' aptget autoremove -s
  25. testequal "Reading package lists...
  26. Building dependency tree...
  27. Reading state information...
  28. The following package was automatically installed and is no longer required:
  29. po-debconf
  30. Use 'apt-get autoremove' to remove it.
  31. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded." aptget install -s
  32. testequal "Reading package lists...
  33. Building dependency tree...
  34. Reading state information...
  35. 1 package was automatically installed and is no longer required.
  36. Use 'apt-get autoremove' to remove it.
  37. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded." aptget install -s -o APT::Get::HideAutoRemove=small
  38. testdpkginstalled 'po-debconf'
  39. echo 'APT::NeverAutoRemove { "^po-debconf$"; };' > rootdir/etc/apt/apt.conf.d/00autoremove
  40. testsuccess aptget autoremove -y
  41. testdpkginstalled 'po-debconf'
  42. echo 'APT::NeverAutoRemove { "^po-.*$"; };' > rootdir/etc/apt/apt.conf.d/00autoremove
  43. testsuccess aptget autoremove -y
  44. testdpkginstalled "po-debconf"
  45. rm rootdir/etc/apt/apt.conf.d/00autoremove
  46. testsuccess aptget autoremove -y
  47. testdpkgnotinstalled 'po-debconf'
  48. testmarkedauto
  49. sed rootdir/var/log/apt/history.log -e '/^Commandline: / d' -e '/^Start-Date: / d' -e '/^End-Date: / d' -e 's#), #)\nInstall: #g' | sort -u > apt-history.log
  50. testfileequal 'apt-history.log' '
  51. Install: debhelper:i386 (8.0.0)
  52. Install: po-debconf:i386 (1.0.16, automatic)
  53. Install: unrelated:i386 (1)
  54. Remove: debhelper:i386 (8.0.0)
  55. Remove: po-debconf:i386 (1.0.16)'
  56. testsuccess aptget install debhelper -y
  57. testdpkginstalled 'unrelated' 'debhelper' 'po-debconf'
  58. testsuccess aptmark auto debhelper
  59. testmarkedauto 'debhelper' 'po-debconf'
  60. testsuccessequal 'Reading package lists...
  61. Building dependency tree...
  62. Reading state information...
  63. The following packages will be REMOVED:
  64. debhelper po-debconf
  65. 0 upgraded, 0 newly installed, 2 to remove and 0 not upgraded.
  66. Remv debhelper [8.0.0]
  67. Remv po-debconf [1.0.16]' aptget autoremove -s
  68. testequal "Reading package lists...
  69. Building dependency tree...
  70. Reading state information...
  71. The following packages were automatically installed and are no longer required:
  72. debhelper po-debconf
  73. Use 'apt-get autoremove' to remove them.
  74. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded." aptget install -s
  75. testequal "Reading package lists...
  76. Building dependency tree...
  77. Reading state information...
  78. 2 packages were automatically installed and are no longer required.
  79. Use 'apt-get autoremove' to remove them.
  80. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded." aptget install -s -o APT::Get::HideAutoRemove=small
  81. testsuccess aptmark hold debhelper
  82. testsuccessequal 'Reading package lists...
  83. Building dependency tree...
  84. Reading state information...
  85. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.' aptget autoremove -s