X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/35808e7a512d577e418b5e164d4fd5b58feaf42a..f19d6a77f60b876e5453614d24886aabdd242ef6:/test/integration/test-apt-get-source diff --git a/test/integration/test-apt-get-source b/test/integration/test-apt-get-source index 5bef781f1..03320754b 100755 --- a/test/integration/test-apt-get-source +++ b/test/integration/test-apt-get-source @@ -15,10 +15,16 @@ insertpackage 'wheezy' 'unreleated-package' 'all' '1.0' insertpackage 'unstable' 'foo' 'all' '2.0' insertsource 'unstable' 'foo' 'all' '2.0' +# its possible to have multiple src versions in the sources file, ensure +# to pick the correct one in this case (bts #731853) +insertsource 'stable' 'foo' 'all' '1.5' +insertsource 'stable' 'foo' 'all' '0.5' insertpackage 'stable' 'foo' 'all' '1.0' insertsource 'stable' 'foo' 'all' '1.0' -# this package exists only as source +# this packages exists only as sources, add two versions to ensure that +# apt will pick the higher version number (bts #731853) +insertsource 'wheezy' 'foo' 'all' '0.0.1' insertsource 'wheezy' 'foo' 'all' '0.1' setupaptarchive @@ -28,33 +34,62 @@ APTARCHIVE=$(readlink -f ./aptarchive) # normal operation gets highest version number HEADER="Reading package lists... Building dependency tree..." -testequal "$HEADER -Need to get 0 B of source archives. -'file://${APTARCHIVE}/foo_2.0.dsc' foo_2.0.dsc 0 MD5Sum:d41d8cd98f00b204e9800998ecf8427e -'file://${APTARCHIVE}/foo_2.0.tar.gz' foo_2.0.tar.gz 0 MD5Sum:d41d8cd98f00b204e9800998ecf8427e" aptget source -q --print-uris foo - -# select by release -testequal "$HEADER -Selectied version '1.0' (stable) for foo -Need to get 0 B of source archives. -'file://${APTARCHIVE}/foo_1.0.dsc' foo_1.0.dsc 0 MD5Sum:d41d8cd98f00b204e9800998ecf8427e -'file://${APTARCHIVE}/foo_1.0.tar.gz' foo_1.0.tar.gz 0 MD5Sum:d41d8cd98f00b204e9800998ecf8427e" aptget source -q --print-uris foo/stable +DOWNLOAD1="Need to get 0 B/25 B of source archives. +'file://${APTARCHIVE}/foo_1.0.dsc' foo_1.0.dsc 11 MD5Sum:b998e085e36cf162e6a33c2801318fef +'file://${APTARCHIVE}/foo_1.0.tar.gz' foo_1.0.tar.gz 14 MD5Sum:d46b9a02af8487cbeb49165540c88184" +DOWNLOAD2="Need to get 0 B/25 B of source archives. +'file://${APTARCHIVE}/foo_2.0.dsc' foo_2.0.dsc 11 MD5Sum:c0de572c6f8aa576c8ff78c81132ed55 +'file://${APTARCHIVE}/foo_2.0.tar.gz' foo_2.0.tar.gz 14 MD5Sum:e10bb487c375b2b938d27bd31c2d1f5f" +testsuccessequal "$HEADER +$DOWNLOAD2" aptget source -q --print-uris foo + +# select by release: suite +testsuccessequal "$HEADER +Selected version '1.0' (stable) for foo +$DOWNLOAD1" aptget source -q --print-uris foo/stable +testsuccessequal "$HEADER +Selected version '2.0' (unstable) for foo +$DOWNLOAD2" aptget source -q --print-uris foo/unstable +testsuccessequal "$HEADER +Selected version '1.0' (stable) for foo +$DOWNLOAD1" aptget source -q --print-uris foo -t stable +testsuccessequal "$HEADER +Selected version '2.0' (unstable) for foo +$DOWNLOAD2" aptget source -q --print-uris foo -t unstable + +# select by release: codename +testsuccessequal "$HEADER +Selected version '2.0' (sid) for foo +$DOWNLOAD2" aptget source -q --print-uris foo/sid +testsuccessequal "$HEADER +Selected version '2.0' (sid) for foo +$DOWNLOAD2" aptget source -q --print-uris foo -t sid # select by version -testequal "$HEADER -Need to get 0 B of source archives. -'file://${APTARCHIVE}/foo_1.0.dsc' foo_1.0.dsc 0 MD5Sum:d41d8cd98f00b204e9800998ecf8427e -'file://${APTARCHIVE}/foo_1.0.tar.gz' foo_1.0.tar.gz 0 MD5Sum:d41d8cd98f00b204e9800998ecf8427e" aptget source -q --print-uris foo=1.0 - -# select by release with no binary package (Bug#731102) -testequal "$HEADER -Selectied version '0.1' (wheezy) for foo -Need to get 0 B of source archives. -'file://${APTARCHIVE}/foo_0.1.dsc' foo_0.1.dsc 0 MD5Sum:d41d8cd98f00b204e9800998ecf8427e -'file://${APTARCHIVE}/foo_0.1.tar.gz' foo_0.1.tar.gz 0 MD5Sum:d41d8cd98f00b204e9800998ecf8427e" aptget source -q --print-uris foo/wheezy +testsuccessequal "$HEADER +$DOWNLOAD1" aptget source -q --print-uris foo=1.0 + +# select by release with no binary package (Bug#731102) but ensure to get +# highest version +DOWNLOAD01="Need to get 0 B/25 B of source archives. +'file://${APTARCHIVE}/foo_0.1.dsc' foo_0.1.dsc 11 MD5Sum:0811a4d85238056c613ea897f49f01af +'file://${APTARCHIVE}/foo_0.1.tar.gz' foo_0.1.tar.gz 14 MD5Sum:fa1ecb7a1a53e8e6f6551ca7db888a61" +testsuccessequal "$HEADER +Selected version '0.1' (wheezy) for foo +$DOWNLOAD01" aptget source -q --print-uris foo/wheezy # unavailable one -testequal "$HEADER -E: Ignore unavailable version '9.9-not-there' of package 'foo' +testfailureequal "$HEADER +E: Can not find version '9.9-not-there' of package 'foo' E: Unable to find a source package for foo" aptget source -q --print-uris foo=9.9-not-there +# version and release +DOWNLOAD001="Need to get 0 B/29 B of source archives. +'file://${APTARCHIVE}/foo_0.0.1.dsc' foo_0.0.1.dsc 13 MD5Sum:6c819ebf0a21b1a480e1dbf6b8edfebd +'file://${APTARCHIVE}/foo_0.0.1.tar.gz' foo_0.0.1.tar.gz 16 MD5Sum:a3c7e1ac2159fc0faf522e110d6906fd" +testsuccessequal "$HEADER +$DOWNLOAD001" aptget source -q --print-uris -t unstable foo=0.0.1 + +testsuccessequal "$HEADER +Need to get 0 B/25 B of source archives. +Fetch source foo" aptget source -q -s foo