DateTimeX-Fiscal-Fiscal5253

 view release on metacpan or  search on metacpan

t/20_accessors.t  view on Meta::CPAN

# known values from the proper elements in the object.
foreach (@accessors) {
    my $accessor = $_->{accessor};
    cmp_ok( $fc->$accessor(), 'eq', $_->{expect}, "get $accessor" );
}

# Now test that trying to change a parameter value will emit a "croak"
foreach (@accessors) {
    my $accessor = $_->{accessor};
    throws_ok( sub { my $foo = $fc->$accessor( $_->{expect} ) },
        qr/$accessor/, "blocked setting $accessor" );
}

# Now do it all over again using the Empty::Fiscal5253 class to be sure
# this module can be safely sub-classed. A single test of the basic
# constructor would probably suffice, but why not be sure?

$class = 'Empty::Fiscal5253';
$fc    = $class->new(%params);

foreach (@accessors) {
    my $accessor = $_->{accessor};
    ok( $fc->$accessor() eq $_->{expect}, "get $accessor" );
}

foreach (@accessors) {
    my $accessor = $_->{accessor};
    throws_ok( sub { my $foo = $fc->$accessor( $_->{expect} ) },
        qr/$accessor/, "blocked setting $accessor" );
}

done_testing();

exit;

# package for empty package tests
package Empty::Fiscal5253;
use base qw(DateTimeX::Fiscal::Fiscal5253);



( run in 0.988 second using v1.01-cache-2.11-cpan-49f99fa48dc )