X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=t%2Fdh_link;h=c6be35be4020052536dc6153a795baf7667d4312;hb=e2a6d4cec4a7ee952cf6a7f250d80f1d75a38f95;hp=198b522c01d8e0d2689adcf450f4afd7299a09fc;hpb=46a21fd82209577d6ba69c79d243889ea4f3d332;p=debhelper.git diff --git a/t/dh_link b/t/dh_link index 198b522..c6be35b 100755 --- a/t/dh_link +++ b/t/dh_link @@ -1,6 +1,6 @@ #!/usr/bin/perl use Test; -plan(tests => 8); +plan(tests => 13); # It used to not make absolute links in this situation, and it should. # #37774 @@ -17,12 +17,27 @@ ok(readlink("debian/debhelper/sbin/bar"), "foo"); system("./dh_link","usr/lib/1","usr/bin/2"); ok(readlink("debian/debhelper/usr/bin/2"),"../lib/1"); -# Check conversion of realitive symlink to different top-level directory +# Check conversion of relative symlink to different top-level directory # into absolute symlink. (#244157) system("mkdir -p debian/debhelper/usr/lib; mkdir -p debian/debhelper/lib; touch debian/debhelper/lib/libm.so; cd debian/debhelper/usr/lib; ln -sf ../../lib/libm.so"); system("./dh_link"); ok(readlink("debian/debhelper/usr/lib/libm.so"), "/lib/libm.so"); +# Check links to the current directory and below, they used to be +# unnecessarily long (#346405). +system("./dh_link","usr/lib/geant4","usr/lib/geant4/a"); +ok(readlink("debian/debhelper/usr/lib/geant4/a"), "."); +system("./dh_link","usr/lib","usr/lib/geant4/b"); +ok(readlink("debian/debhelper/usr/lib/geant4/b"), ".."); +system("./dh_link","usr","usr/lib/geant4/c"); +ok(readlink("debian/debhelper/usr/lib/geant4/c"), "../.."); +system("./dh_link","/","usr/lib/geant4/d"); +ok(readlink("debian/debhelper/usr/lib/geant4/d"), "/"); + +# Link to self. +system("./dh_link usr/lib/foo usr/lib/foo 2>/dev/null"); +ok(! -l "debian/debhelper/usr/lib/foo"); + # Make sure the link conversion didn't change any of the previously made # links. ok(readlink("debian/debhelper/usr/lib/bar"), "/etc/foo");