use strict;
use warnings;

use Test::More;
use File::Temp;
use Net::LibIDN qw(:all);

my $CMD = "perl -Mblib blib/script/zone-mk";

system("$CMD -h &>/dev/null");
is($? => 0, "exit on help");

system("$CMD -m &>/dev/null");
is($? => 0, "exit on man");

system("$CMD &>/dev/null");
ok($? > 0, "error on missing args");

my $master_dir = File::Temp->newdir;
my $config_dir = File::Temp->newdir;
my $tmp = File::Temp->new;
$ENV{DNSTOOLS_CONF} = $tmp->filename;

print $tmp <<__EOF;
master_dir = $master_dir
zone_conf_dir = $config_dir
hostmaster = hostmaster\@schlittermann.de
template_dir = ./templates		
__EOF

system("$CMD xxx müller.de &>/dev/null");
is($? => 0, "created zone");

my $domain = idn_to_ascii("müller.de", "UTF-8");
ok(-s "$master_dir/$domain/$domain", "zone file $domain");
ok(-s "$config_dir/$domain", "config file $domain");


done_testing;
