File Coverage

blib/lib/Biblio/COUNTER/Report/Release2/DatabaseReport2.pm
Criterion Covered Total %
statement 9 22 40.9
branch n/a
condition n/a
subroutine 3 9 33.3
pod 0 6 0.0
total 12 37 32.4


line stmt bran cond sub pod time code
1             package Biblio::COUNTER::Report::Release2::DatabaseReport2;
2              
3 1     1   1154 use strict;
  1         3  
  1         41  
4 1     1   6 use warnings;
  1         2  
  1         36  
5              
6 1     1   6 use Biblio::COUNTER::Report qw(TURNAWAYS MAY_BE_BLANK NOT_BLANK);
  1         1  
  1         11539  
7              
8             @Biblio::COUNTER::Report::Release2::DatabaseReport2::ISA = qw(Biblio::COUNTER::Report);
9              
10 0     0 0   sub canonical_report_name { 'Database Report 2 (R2)' }
11 0     0 0   sub canonical_report_description { 'Turnaways by Month and Database' };
12 0     0 0   sub canonical_report_code { 'DB2' }
13 0     0 0   sub release_number { 2 }
14              
15             sub process_header_rows {
16 0     0 0   my ($self) = @_;
17            
18             # Report name and title
19 0           $self->begin_row
20             ->check_report_name
21             ->check_report_description
22             ->end_row;
23            
24             # Report criteria
25 0           $self->begin_row
26             ->check_report_criteria
27             ->end_row;
28            
29             # Date run label
30 0           $self->begin_row
31             ->check_label('Date run:')
32             ->end_row;
33            
34             # Date run
35 0           $self->begin_row
36             ->check_date_run
37             ->end_row;
38            
39             # Data column labels
40 0           $self->begin_row
41             ->check_blank
42             ->check_label('Publisher', qr/^(?i)pub/)
43             ->check_label('Platform', qr/^(?i)plat/)
44             ->check_label('Page type', qr/^(?i)page type/)
45             ->check_period_labels
46             ->check_label('YTD Total')
47             ->end_row;
48            
49             # Data summary
50 0           $self->begin_row
51             ->check_label('Total for all databases', qr/(?i)total.+all databases/)
52             ->check_publisher(MAY_BE_BLANK)
53             ->check_platform(MAY_BE_BLANK)
54             ->check_blank
55             ->check_count_by_periods(TURNAWAYS)
56             ->check_ytd_total(TURNAWAYS)
57             ->end_row;
58             }
59              
60             sub process_record {
61 0     0 0   my ($self) = @_;
62 0           $self->begin_row
63             ->check_title(NOT_BLANK)
64             ->check_publisher(MAY_BE_BLANK)
65             ->check_platform(NOT_BLANK)
66             ->check_label('Database turnaways', qr/^(?i)turnaways/)
67             ->check_count_by_periods(TURNAWAYS)
68             ->check_ytd_total(TURNAWAYS)
69             ->end_row;
70             }
71              
72             1;
73              
74             =pod
75              
76             =head1 NAME
77              
78             Biblio::COUNTER::Report::Release2::DatabaseReport2 - a DB2 (R2) COUNTER report
79              
80             =head1 SYNOPSIS
81              
82             $report = Biblio::COUNTER::Report::Release2::DatabaseReport2->new(
83             'file' => $file,
84             );
85             $report->process;
86              
87             =cut