t/01-zone-mk.t
changeset 144 be90bcd14ae1
parent 141 c5584821b795
child 145 f58169fe600a
equal deleted inserted replaced
143:c26b5fa3f646 144:be90bcd14ae1
     1 use strict;
     1 use strict;
     2 use warnings;
     2 use warnings;
       
     3 
       
     4 use lib 't/lib';
       
     5 use Aux;
     3 
     6 
     4 use Test::More;
     7 use Test::More;
     5 use File::Temp qw(tempdir);
     8 use File::Temp qw(tempdir);
     6 use Net::LibIDN qw(:all);
     9 use Net::LibIDN qw(:all);
     7 
    10 
    20 is($? => 0, "exit on man");
    23 is($? => 0, "exit on man");
    21 
    24 
    22 system("$CMD &>/dev/null");
    25 system("$CMD &>/dev/null");
    23 ok($? > 0, "error on missing args");
    26 ok($? > 0, "error on missing args");
    24 
    27 
    25 my $master_dir = tempdir CLEANUP => 1;
    28 
    26 my $config_dir = tempdir CLEANUP => 1;
    29 $_ = File::Temp::tempdir CLEANUP => 1 or die "Can't make temporary directory" for my ($master_dir, $config_dir);
    27 my $tmp = File::Temp->new;
    30 my $tmp = Aux::make_config {
       
    31     master_dir => $master_dir,
       
    32     zone_conf_dir => $config_dir,
       
    33     hostmaster => 'hostmaster@schlittermann.de',
       
    34     template_dir => './templates'
       
    35 };
    28 $ENV{DNSTOOLS_CONF} = $tmp->filename;
    36 $ENV{DNSTOOLS_CONF} = $tmp->filename;
    29 
       
    30 print $tmp <<__EOF;
       
    31 master_dir = $master_dir
       
    32 zone_conf_dir = $config_dir
       
    33 hostmaster = hostmaster\@schlittermann.de
       
    34 template_dir = ./templates		
       
    35 __EOF
       
    36 
       
    37 system("$CMD xxx müller.de &>/dev/null");
    37 system("$CMD xxx müller.de &>/dev/null");
    38 is($? => 0, "created zone");
    38 is($? => 0, "created zone");
    39 
    39 
    40 my $domain = idn_to_ascii("müller.de", "UTF-8");
    40 my $domain = idn_to_ascii("müller.de", "UTF-8");
    41 ok(-s "$master_dir/$domain/$domain", "zone file $domain");
    41 ok(-s "$master_dir/$domain/$domain", "zone file $domain");