t/01-zone-mk.t
changeset 150 3db363880766
parent 145 f58169fe600a
equal deleted inserted replaced
146:a3860111db49 150:3db363880766
    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; }