File Coverage

blib/lib/FusionInventory/Agent/Task/Inventory/HPUX/Controllers.pm
Criterion Covered Total %
statement 9 26 34.6
branch 0 4 0.0
condition n/a
subroutine 3 6 50.0
pod 0 2 0.0
total 12 38 31.5


line stmt bran cond sub pod time code
1             package FusionInventory::Agent::Task::Inventory::HPUX::Controllers;
2              
3 1     1   68992714 use strict;
  1         9  
  1         81  
4 1     1   9 use warnings;
  1         1  
  1         62  
5              
6 1     1   450 use FusionInventory::Agent::Tools;
  1         3  
  1         511  
7              
8             sub isEnabled {
9 0     0 0   my (%params) = @_;
10 0 0         return if $params{no_category}->{controller};
11 0           return canRun('ioscan');
12             }
13              
14             sub doInventory {
15 0     0 0   my (%params) = @_;
16              
17 0           my $inventory = $params{inventory};
18 0           my $logger = $params{logger};
19              
20 0           foreach my $type (qw/ext_bus fc psi/) {
21 0           foreach my $controller (_getControllers(
22             command => "ioscan -kFC $type",
23             logger => $logger
24             )) {
25 0           $inventory->addEntry(
26             section => 'CONTROLLERS',
27             entry => $controller
28             );
29             }
30             }
31             }
32              
33             sub _getControllers {
34 0     0     my $handle = getFileHandle(@_);
35 0 0         return unless $handle;
36              
37 0           my @controllers;
38 0           while (my $line = <$handle>) {
39 0           my @info = split(/:/, $line);
40 0           push @controllers, {
41             TYPE => $info[17]
42             };
43             }
44 0           close $handle;
45              
46 0           return @controllers;
47             }
48              
49             1;