12 Test::More->import('no_plan') unless defined &done_testing; |
12 Test::More->import('no_plan') unless defined &done_testing; |
13 |
13 |
14 my $CMD = "perl -Mblib blib/sbin/zone-mk"; |
14 my $CMD = "perl -Mblib blib/sbin/zone-mk"; |
15 |
15 |
16 system("$CMD -h >/dev/null 2>&1"); |
16 system("$CMD -h >/dev/null 2>&1"); |
17 is($? => 0, "exit on help"); |
17 is( $? => 0, "exit on help" ); |
18 |
18 |
19 system("$CMD -m >/dev/null 2>&1"); |
19 system("$CMD -m >/dev/null 2>&1"); |
20 is($? => 0, "exit on man"); |
20 is( $? => 0, "exit on man" ); |
21 |
21 |
22 system("$CMD >/dev/null 2>&1"); |
22 system("$CMD >/dev/null 2>&1"); |
23 ok($? > 0, "error on missing args"); |
23 ok( $? > 0, "error on missing args" ); |
24 |
24 |
25 |
25 $_ = File::Temp::tempdir CLEANUP => 1 |
26 $_ = File::Temp::tempdir CLEANUP => 1 or die "Can't make temporary directory" for my ($master_dir, $config_dir); |
26 or die "Can't make temporary directory" |
|
27 for my ( $master_dir, $config_dir ); |
27 my $tmp = Aux::make_config { |
28 my $tmp = Aux::make_config { |
28 master_dir => $master_dir, |
29 master_dir => $master_dir, |
29 zone_conf_dir => $config_dir, |
30 zone_conf_dir => $config_dir, |
30 hostmaster => 'hostmaster@schlittermann.de', |
31 hostmaster => 'hostmaster@schlittermann.de', |
31 template_dir => './templates' |
32 template_dir => './templates' |
32 }; |
33 }; |
33 $ENV{DNSTOOLS_CONF} = $tmp->filename; |
34 $ENV{DNSTOOLS_CONF} = $tmp->filename; |
34 system("$CMD xxx müller.de >/dev/null 2>&1"); |
35 system("$CMD xxx müller.de >/dev/null 2>&1"); |
35 is($? => 0, "created zone"); |
36 is( $? => 0, "created zone" ); |
36 |
37 |
37 my $domain = idn_to_ascii("müller.de", "UTF-8"); |
38 my $domain = idn_to_ascii( "müller.de", "UTF-8" ); |
38 ok(-s "$master_dir/$domain/$domain", "zone file $domain"); |
39 ok( -s "$master_dir/$domain/$domain", "zone file $domain" ); |
39 ok(-s "$config_dir/$domain", "config file $domain"); |
40 ok( -s "$config_dir/$domain", "config file $domain" ); |
40 |
|
41 |
41 |
42 # older versions of Test::More (debian lenny fex) don't know done_testing |
42 # older versions of Test::More (debian lenny fex) don't know done_testing |
43 if (defined &done_testing) { &done_testing; } |
43 if ( defined &done_testing ) { &done_testing; } |