File Coverage

blib/lib/Mason/Plugin.pm
Criterion Covered Total %
statement 27 27 100.0
branch 4 4 100.0
condition n/a
subroutine 9 9 100.0
pod n/a
total 40 40 100.0


line stmt bran cond sub pod time code
1             package Mason::Plugin;
2             $Mason::Plugin::VERSION = '2.24';
3 20     20   10240 use Mason::PluginRole;
  20         31  
  20         182  
4 20     20   88127 use Mason::Util qw(can_load);
  20         39  
  20         1193  
5 20     20   93 use Class::Load;
  20         28  
  20         889  
6              
7 20     20   7155 method requires_plugins ($plugin_class:) {
  253     253   401  
  253         285  
8 253         1203 return ();
9             }
10              
11 20     20   6065 method expand_to_plugins ($plugin_class:) {
  254     254   433  
  254         364  
12 254         874 return ( $plugin_class,
13             Mason::PluginManager->process_plugin_specs( [ $plugin_class->requires_plugins ] ) );
14             }
15              
16 20     20   5949 method get_roles_for_mason_class ($plugin_class: $name) {
  467     467   706  
  467         668  
  467         521  
17 467         1256 my @roles_to_try = join( "::", $plugin_class, $name );
18 467 100       1160 if ( $name eq 'Component' ) {
19 47         125 push( @roles_to_try, join( "::", $plugin_class, 'Filters' ) );
20             }
21 467 100       661 my @roles = grep { Class::Load::is_class_loaded($_) || can_load($_) } @roles_to_try;
  514         2893  
22 467         1735 return @roles;
23             }
24              
25             1;