#!/usr/bin/perl
use strict;
use warnings;
use Test::More 'no_plan';
use Data::Dumper;
use File::Spec;
my $null_file = File::Spec->devnull;
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
my $class = 'ConfigReader::Simple';
my $method = '_save';
use_ok( $class );
can_ok( $class, $method );
my $config = $class->new_string(
Strings => [ \ 'Cat Buster' ]
);
isa_ok( $config, $class );
is( $config->get( 'Cat' ), 'Buster' );
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Test _save without a list of directives. It should fail
{
my $rc = $config->_save( $null_file );
ok( ! $rc, "return value is false without list of directives" );
}
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Test _save with list of directives, but not as an array ref
{
my $rc = $config->_save( $null_file, 'Cat' );
ok( ! $rc, "return value is false without list of directives" );
}
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Test _save with a file name I can't open. Should fail
{
my $filename = "/a/b/c/d/e/f/1/2/3/4/5/buster";
my $rc = $config->_save( $filename, [ qw( Cat ) ] );
ok( ! $rc, "return value is false without list of directives" );
}
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Test _save with a file name I can open. Should work
{
my $rc = $config->_save( $null_file, [ qw(Cat) ] );
ok( $rc, "return value is true without list of directives" );
}