summaryrefslogtreecommitdiffstats
path: root/t/dh_installinit/dh_installinit.t
blob: 054d1a5cc30ea5476d89a8a75c54f311b15d414c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
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'));
});