File Coverage

blib/lib/FusionInventory/Agent/Task/Inventory/Linux/Alpha/CPU.pm
Criterion Covered Total %
statement 12 27 44.4
branch 0 4 0.0
condition 0 3 0.0
subroutine 4 7 57.1
pod 0 2 0.0
total 16 43 37.2


line stmt bran cond sub pod time code
1             package FusionInventory::Agent::Task::Inventory::Linux::Alpha::CPU;
2              
3 1     1   109722561 use strict;
  1         15  
  1         106  
4 1     1   10 use warnings;
  1         2  
  1         107  
5              
6 1     1   420 use FusionInventory::Agent::Tools;
  1         4  
  1         223  
7 1     1   502 use FusionInventory::Agent::Tools::Linux;
  1         2  
  1         313  
8              
9             sub isEnabled {
10 0     0 0   my (%params) = @_;
11 0 0         return 0 if $params{no_category}->{cpu};
12 0           return -r '/proc/cpuinfo';
13             };
14              
15             sub doInventory {
16 0     0 0   my (%params) = @_;
17              
18 0           my $inventory = $params{inventory};
19 0           my $logger = $params{logger};
20              
21 0           foreach my $cpu (_getCPUsFromProc(
22             logger => $logger, file => '/proc/cpuinfo')
23             ) {
24 0           $inventory->addEntry(
25             section => 'CPUS',
26             entry => $cpu
27             );
28             }
29             }
30              
31             sub _getCPUsFromProc {
32 0     0     my @cpus;
33 0           foreach my $cpu (getCPUsFromProc(@_)) {
34              
35 0           my $speed;
36 0 0 0       if (
37             $cpu->{'cycle frequency [hz]'} &&
38             $cpu->{'cycle frequency [hz]'} =~ /(\d+)000000/
39             ) {
40 0           $speed = $1;
41             }
42              
43 0           push @cpus, {
44             ARCH => 'Alpha',
45             NAME => $cpu->{processor},
46             SERIAL => $cpu->{'cpu serial number'},
47             SPEED => $speed
48             };
49             }
50              
51 0           return @cpus;
52             }
53              
54             1;