File Coverage

blib/lib/WebService/TDWTF/Article.pm
Criterion Covered Total %
statement 21 29 72.4
branch 2 2 100.0
condition 3 4 75.0
subroutine 9 17 52.9
pod 11 11 100.0
total 46 63 73.0


line stmt bran cond sub pod time code
1             package WebService::TDWTF::Article;
2              
3 2     2   37 use 5.014000;
  2         6  
4 2     2   10 use strict;
  2         4  
  2         45  
5 2     2   9 use warnings;
  2         3  
  2         78  
6 2     2   9 use parent qw/Class::Accessor::Fast/;
  2         3  
  2         19  
7              
8             our $VERSION = '0.002';
9              
10 2     2   18147 use WebService::TDWTF ();
  2         5  
  2         701  
11              
12 3     3   47 sub _article { goto &WebService::TDWTF::article }
13              
14             __PACKAGE__->mk_ro_accessors(qw/Id Slug SummaryHtml BodyHtml FooterAdHtml Title CoalescedCommentCount DiscourseThreadUrl PublishedDate DisplayDate Url CommentsUrl PreviousArticleId PreviousArticleUrl NextArticleId NextArticleUrl/);
15              
16 0     0 1 0 sub AuthorName { shift->{Author}->{Name} }
17 0     0 1 0 sub AuthorShortDescription { shift->{Author}->{ShortDescription} }
18 0     0 1 0 sub AuthorDescriptionHtml { shift->{Author}->{DescriptionHtml} }
19 0     0 1 0 sub AuthorSlug { shift->{Author}->{Slug} }
20 0     0 1 0 sub AuthorImageUrl { shift->{Author}->{ImageUrl} }
21              
22 0     0 1 0 sub SeriesSlug { shift->{Series}->{Slug} }
23 0     0 1 0 sub SeriesTitle { shift->{Series}->{Title} }
24 0     0 1 0 sub SeriesDescription { shift->{Series}->{Description} }
25              
26 1   50 1 1 7 sub PreviousArticle { _article shift->PreviousArticleId // return }
27 2   100 2 1 97 sub NextArticle { _article shift->NextArticleId // return }
28              
29             sub Body {
30 2 100   2 1 3743 unless ($_[0]->BodyHtml) {
31 1         20 my $ret = _article $_[0]->Id, 1;
32 1         51 $_[0]->{$_} = $ret->{$_} for qw/BodyHtml FooterAdHtml/;
33             }
34 2         29 $_[0]->BodyHtml
35             }
36              
37             1;
38             __END__