You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
1.3 KiB
47 lines
1.3 KiB
# Verify that all attributes owns a test
|
|
|
|
use Test::More;
|
|
use strict;
|
|
use Lemonldap::NG::Common::Conf::ReConstants;
|
|
|
|
use_ok('Lemonldap::NG::Manager::Build::Attributes');
|
|
my $count = 1;
|
|
|
|
my ( $attrs, $types );
|
|
ok( $attrs = Lemonldap::NG::Manager::Build::Attributes::attributes(),
|
|
'Get attributes' );
|
|
ok( $types = Lemonldap::NG::Manager::Build::Attributes::types(), 'Get types' );
|
|
$count += 2;
|
|
|
|
foreach my $attr ( keys %$attrs ) {
|
|
next if ( $attr =~ /^virtualHosts|.*MetaDataNodes|applicationList$/ );
|
|
ok( (
|
|
ref( $attrs->{$attr}->{test} )
|
|
or ref( $types->{ $attrs->{$attr}->{type} }->{test} )
|
|
),
|
|
"Test exists for $attr"
|
|
);
|
|
$count++;
|
|
if ( $attr =~ qr/^$simpleHashKeys$/o ) {
|
|
ok( (
|
|
ref $attrs->{$attr}->{keyTest}
|
|
or ref $types->{ $attrs->{$attr}->{type} }->{keyTest}
|
|
),
|
|
"Key test for $attr"
|
|
);
|
|
$count++;
|
|
}
|
|
if ( $attr =~ qr/^$simpleHashKeys$/o
|
|
or $attrs->{$attr}->{type} =~ /Container$/ )
|
|
{
|
|
if ( $attrs->{$attr}->{default} ) {
|
|
ok(
|
|
ref( $attrs->{$attr}->{default} ) eq 'HASH',
|
|
"$attr default value is a hash ref"
|
|
);
|
|
$count++;
|
|
}
|
|
}
|
|
}
|
|
|
|
done_testing($count);
|
|
|