diff options
Diffstat (limited to 't/dh_installinit')
-rw-r--r-- | t/dh_installinit/debian/bar.other.init | 4 | ||||
-rw-r--r-- | t/dh_installinit/debian/changelog | 5 | ||||
-rw-r--r-- | t/dh_installinit/debian/control | 21 | ||||
-rw-r--r-- | t/dh_installinit/debian/foo.service | 5 | ||||
-rwxr-xr-x | t/dh_installinit/dh_installinit.t | 52 |
5 files changed, 87 insertions, 0 deletions
diff --git a/t/dh_installinit/debian/bar.other.init b/t/dh_installinit/debian/bar.other.init new file mode 100644 index 0000000..ea948c5 --- /dev/null +++ b/t/dh_installinit/debian/bar.other.init @@ -0,0 +1,4 @@ +#!/bin/sh +cat << 'EOF' +I am init script to be installed into package "bar" into /etc/init.d/other path. +EOF
\ No newline at end of file diff --git a/t/dh_installinit/debian/changelog b/t/dh_installinit/debian/changelog new file mode 100644 index 0000000..5850f0e --- /dev/null +++ b/t/dh_installinit/debian/changelog @@ -0,0 +1,5 @@ +foo (1.0-1) unstable; urgency=low + + * Initial release. (Closes: #XXXXXX) + + -- Test <testing@nowhere> Mon, 11 Jul 2016 18:10:59 +0200 diff --git a/t/dh_installinit/debian/control b/t/dh_installinit/debian/control new file mode 100644 index 0000000..edb7da5 --- /dev/null +++ b/t/dh_installinit/debian/control @@ -0,0 +1,21 @@ +Source: foo +Section: misc +Priority: optional +Maintainer: Test <testing@nowhere> +Standards-Version: 3.9.8 +X-DH-Compat: @DH_COMPAT_LEVEL@ + +Package: foo +Architecture: all +Description: package foo + Package foo + +Package: bar +Architecture: all +Description: package bar + Package bar + +Package: baz +Architecture: all +Description: package baz + Package baz diff --git a/t/dh_installinit/debian/foo.service b/t/dh_installinit/debian/foo.service new file mode 100644 index 0000000..aa21636 --- /dev/null +++ b/t/dh_installinit/debian/foo.service @@ -0,0 +1,5 @@ +[Unit] +Description=A unit + +[Service] +ExecStart=/bin/true 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')); +}); + |