1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
use ExtUtils::testlib;
use Test::More;
use Test::Memory::Cycle;
use Config::Model;
use Config::Model::Tester::Setup qw/init_test/;
use Pod::Simple;
use warnings;
use 5.10.1;
use strict;
use lib "t/lib";
my ($model, $trace) = init_test();
$model->load( 'Master', 'Config/Model/models/Master.pl' );
ok( 1, "big_model loaded" );
$model->augment_config_class(
name => "Master",
element => [
'big_string' => {
type => 'leaf',
value_type => 'string',
default => "A very\nlong\n\n\ndefault\nvalue\n"
}
]
);
my $res = $model->get_model_doc('Master');
is_deeply(
[ sort keys %$res ],
[ map { "Config::Model::models::$_" } qw/Master SlaveY SlaveZ SubSlave SubSlave2/ ],
"check doc classes"
);
like(
$res->{'Config::Model::models::Master'},
qr/Configuration class Master/,
"check that doc is generated"
);
foreach my $class (sort keys %$res) {
my $pod = $res->{$class};
my $parser = Pod::Simple->new();
$parser->no_errata_section( 1 );
$parser->complain_stderr(1);
$parser->parse_string_document($pod);
my $res = $parser->any_errata_seen();
say "Bad pod:\n++++++++++++\n$pod\n+++++++++++++" if $res;
is($res, 0, "check generated pod error for class $class");
}
memory_cycle_ok($model, "memory cycles");
done_testing();
|