[debhelper-devel] [debhelper] 04/30: dh_link.t: Convert to Test::DH
Niels Thykier
nthykier at moszumanska.debian.org
Mon Jul 3 14:40:36 UTC 2017
This is an automated email from the git hooks/post-receive script.
nthykier pushed a commit to branch master
in repository debhelper.
commit 0671bc4d5a75b5730fbc5cadd0b84ddddbd4a996
Author: Niels Thykier <niels at thykier.net>
Date: Sun Jul 2 10:16:48 2017 +0000
dh_link.t: Convert to Test::DH
Signed-off-by: Niels Thykier <niels at thykier.net>
---
t/dh_link.t | 103 ++++++++++++++++++++++++++++++++++--------------------------
1 file changed, 59 insertions(+), 44 deletions(-)
diff --git a/t/dh_link.t b/t/dh_link.t
index 6b13073..da2de1a 100755
--- a/t/dh_link.t
+++ b/t/dh_link.t
@@ -1,48 +1,63 @@
#!/usr/bin/perl
-use Test;
-plan(tests => 13);
-
-# It used to not make absolute links in this situation, and it should.
-# #37774
-system("./dh_link","etc/foo","usr/lib/bar");
-ok(readlink("debian/debhelper/usr/lib/bar"), "/etc/foo");
-
-# let's make sure it makes simple relative links ok.
-system("./dh_link","usr/bin/foo","usr/bin/bar");
-ok(readlink("debian/debhelper/usr/bin/bar"), "foo");
-system("./dh_link","sbin/foo","sbin/bar");
-ok(readlink("debian/debhelper/sbin/bar"), "foo");
-
-# ok, more complex relative links.
-system("./dh_link","usr/lib/1","usr/bin/2");
-ok(readlink("debian/debhelper/usr/bin/2"),"../lib/1");
-
-# 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");
-ok(readlink("debian/debhelper/usr/bin/bar"), "foo");
-ok(readlink("debian/debhelper/usr/bin/2"),"../lib/1");
+
+use strict;
+use warnings;
+
+use Test::More;
+plan(tests => 1);
+
+use File::Path qw(remove_tree);
+use File::Basename qw(dirname);
+use lib dirname(__FILE__);
+use Test::DH;
+
+each_compat_subtest {
+
+ remove_tree('debian/debhelper');
+
+ # It used to not make absolute links in this situation, and it should.
+ # #37774
+ ok(run_dh_tool('dh_link', 'etc/foo', 'usr/lib/bar'));
+ ok(readlink("debian/debhelper/usr/lib/bar"), "/etc/foo");
+
+
+ # let's make sure it makes simple relative links ok.
+ ok(run_dh_tool('dh_link', 'usr/bin/foo', 'usr/bin/bar'));
+ ok(readlink("debian/debhelper/usr/bin/bar"), "foo");
+ ok(run_dh_tool('dh_link', 'sbin/foo', 'sbin/bar'));
+ ok(readlink("debian/debhelper/sbin/bar"), "foo");
+
+ # ok, more complex relative links.
+ ok(run_dh_tool('dh_link', 'usr/lib/1', 'usr/bin/2'));
+ ok(readlink("debian/debhelper/usr/bin/2"),"../lib/1");
+
+ # 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");
+ ok(run_dh_tool('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).
+ ok(run_dh_tool('dh_link', 'usr/lib/geant4', 'usr/lib/geant4/a'));
+ ok(readlink("debian/debhelper/usr/lib/geant4/a"), ".");
+ ok(run_dh_tool('dh_link', 'usr/lib', 'usr/lib/geant4/b'));
+ ok(readlink("debian/debhelper/usr/lib/geant4/b"), "..");
+ ok(run_dh_tool('dh_link', 'usr', 'usr/lib/geant4/c'));
+ ok(readlink("debian/debhelper/usr/lib/geant4/c"), "../..");
+ ok(run_dh_tool('dh_link', '/', 'usr/lib/geant4/d'));
+ ok(readlink("debian/debhelper/usr/lib/geant4/d"), "/");
+
+ # Link to self.
+ ok(run_dh_tool({ 'quiet' => 1 }, 'dh_link', 'usr/lib/foo', 'usr/lib/foo'));
+ 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");
+ ok(readlink("debian/debhelper/usr/bin/bar"), "foo");
+ ok(readlink("debian/debhelper/usr/bin/2"),"../lib/1");
+};
# Local Variables:
# indent-tabs-mode: t
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debhelper/debhelper.git
More information about the debhelper-devel
mailing list