summaryrefslogtreecommitdiffstats
path: root/t/dh_installinit/dh_installinit.t
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-09 12:53:53 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-09 12:53:53 +0000
commit90169463f86997737ed5b9c0ea2b311cd3b056b7 (patch)
tree281a0f8d9850ea58cf2a3ddb8bf087fb52520925 /t/dh_installinit/dh_installinit.t
parentInitial commit. (diff)
downloaddebhelper-upstream/13.15.3.tar.xz
debhelper-upstream/13.15.3.zip
Adding upstream version 13.15.3.upstream/13.15.3
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 't/dh_installinit/dh_installinit.t')
-rwxr-xr-xt/dh_installinit/dh_installinit.t52
1 files changed, 52 insertions, 0 deletions
diff --git a/t/dh_installinit/dh_installinit.t b/t/dh_installinit/dh_installinit.t
new file mode 100755
index 0000000..054d1a5
--- /dev/null
+++ b/t/dh_installinit/dh_installinit.t
@@ -0,0 +1,52 @@
+#!/usr/bin/perl
+use strict;
+use Test::More;
+
+use File::Basename qw(dirname);
+use lib dirname(dirname(__FILE__));
+use Test::DH;
+use File::Path qw(remove_tree make_path);
+use Debian::Debhelper::Dh_Lib qw(!dirname);
+
+our @TEST_DH_EXTRA_TEMPLATE_FILES = (qw(
+ debian/changelog
+ debian/control
+ debian/foo.service
+ debian/bar.other.init
+));
+
+plan(tests => 2);
+
+each_compat_up_to_and_incl_subtest(10, sub {
+ make_path(qw(debian/foo debian/bar debian/baz));
+ ok(run_dh_tool('dh_installinit'));
+ ok(-e "debian/foo/usr/lib/systemd/system/foo.service");
+ ok(!-e "debian/foo/lib/systemd/system/foo.service");
+ ok(find_script('foo', 'postinst'));
+ ok(run_dh_tool('dh_clean'));
+
+});
+
+each_compat_from_and_above_subtest(11, sub {
+ make_path(qw(debian/foo debian/bar debian/baz));
+
+ ok(run_dh_tool('dh_installinit'));
+ ok(run_dh_tool({'quiet' => 1}, 'dh_installinit', '--name=other'));
+ ok(! -e "debian/foo/lib/systemd/system/foo.service");
+ ok(! -e "debian/foo/usr/lib/systemd/system/foo.service");
+ ok(!find_script('foo', 'postinst'));
+ ok(run_dh_tool('dh_clean'));
+
+ make_path(qw(debian/foo/lib/systemd/system/ debian/bar debian/baz));
+ copy_file('debian/foo.service', 'debian/foo/lib/systemd/system/foo.service');
+ ok(run_dh_tool('dh_installinit'));
+ ok(!find_script('foo', 'postinst'));
+ ok(run_dh_tool('dh_clean'));
+
+ make_path(qw(debian/foo/usr/lib/systemd/system/ debian/bar debian/baz));
+ copy_file('debian/foo.service', 'debian/foo/usr/lib/systemd/system/foo.service');
+ ok(run_dh_tool('dh_installinit'));
+ ok(!find_script('foo', 'postinst'));
+ ok(run_dh_tool('dh_clean'));
+});
+