File Coverage

blib/lib/WWW/Connpass/Event/Waitlist.pm
Criterion Covered Total %
statement 6 31 19.3
branch 0 6 0.0
condition n/a
subroutine 2 18 11.1
pod 0 15 0.0
total 8 70 11.4


line stmt bran cond sub pod time code
1             package WWW::Connpass::Event::Waitlist;
2 1     1   3 use strict;
  1         1  
  1         24  
3 1     1   3 use warnings;
  1         1  
  1         282  
4              
5 0     0     sub _method { die 'this is abstruct method' }
6              
7             sub new {
8 0     0 0   my ($class, %args) = @_;
9 0 0         die "$class is abstract class" if $class eq __PACKAGE__;
10              
11             # assertion
12 0 0         if (exists $args{method}) {
13 0 0         $args{method} eq $class->_method
14             or die "Invalid method: $args{method}";
15             }
16             else {
17 0           $args{method} = $class->_method;
18             }
19              
20 0           return bless \%args => $class;
21             }
22              
23             sub inflate {
24 0     0 0   my ($class, %args) = @_;
25 0           $class .= '::'.ucfirst $args{method};
26 0           Module::Load::load($class);
27 0           return $class->new(%args);
28             }
29              
30 0     0 0   sub raw_data { +{%{$_[0]}} }
  0            
31              
32 0     0 0   sub is_new { not exists shift->{id} }
33              
34 0     0 0   sub cancelled_count { shift->{cancelled_count} }
35 0     0 0   sub id { shift->{id} }
36 0     0 0   sub join_fee { shift->{join_fee} }
37 0     0 0   sub lottery_count { shift->{lottery_count} }
38 0     0 0   sub max_participants { shift->{max_participants} }
39 0     0 0   sub method { shift->{method} }
40 0     0 0   sub name { shift->{name} }
41 0     0 0   sub participants_count { shift->{participants_count} }
42 0     0 0   sub place_fee { shift->{place_fee} }
43 0     0 0   sub total_participants_count { shift->{total_participants_count} }
44 0     0 0   sub waitlist_count { shift->{waitlist_count} }
45              
46             1;
47             __END__