Acme-Keyakizaka46
view release on metacpan or search on metacpan
"Test::CPAN::Meta" : "0",
"Test::MinimumVersion::Fast" : "0.04",
"Test::PAUSE::Permissions" : "0.04",
"Test::Pod" : "1.41",
"Test::Spellunker" : "v0.2.7"
}
},
"runtime" : {
"requires" : {
"Class::Accessor" : "0",
"DateTime" : "0",
"perl" : "5.008001"
}
},
"test" : {
"requires" : {
"Test::More" : "0.98"
}
}
},
"provides" : {
Acme::Keyakizaka46::YuiKobayashi:
file: lib/Acme/Keyakizaka46/YuiKobayashi.pm
Acme::Keyakizaka46::YukaKageyama:
file: lib/Acme/Keyakizaka46/YukaKageyama.pm
Acme::Keyakizaka46::YurinaHirate:
file: lib/Acme/Keyakizaka46/YurinaHirate.pm
Acme::Keyakizaka46::YuukaSugai:
file: lib/Acme/Keyakizaka46/YuukaSugai.pm
requires:
Class::Accessor: '0'
DateTime: '0'
perl: '5.008001'
resources:
bugtracker: https://github.com/tearon4/Acme-Keyakizaka46/issues
homepage: https://github.com/tearon4/Acme-Keyakizaka46
repository: git://github.com/tearon4/Acme-Keyakizaka46.git
version: 0.0.1
x_contributors:
- 'tearon4 <okawara-ayato@kayac.com>'
requires 'perl', '5.008001';
requires 'Class::Accessor';
requires 'DateTime';
on 'test' => sub {
requires 'Test::More', '0.98';
};
lib/Acme/Keyakizaka46.pm view on Meta::CPAN
package Acme::Keyakizaka46;
use strict;
use warnings;
use Carp qw(croak);
use DateTime;
our $VERSION = '0.0.1';
my @members = qw(
NijikaIshimori
YuiImaizumi
RinaUemura
RikaOzeki
NanaOda
MinamiKoike
lib/Acme/Keyakizaka46/Base.pm view on Meta::CPAN
package Acme::Keyakizaka46::Base;
use strict;
use warnings;
use DateTime;
use base qw(Class::Accessor);
our $VERSION = '0.0.1';
__PACKAGE__->mk_accessors(qw(
first_name_en
family_name_en
first_name_ja
family_name_ja
birthday
lib/Acme/Keyakizaka46/Base.pm view on Meta::CPAN
$self->{$_} = $info{$_} for keys %info;
$self->{name_ja} = $self->family_name_ja.' '.$self->first_name_ja;
$self->{name_en} = $self->first_name_en .' '.$self->family_name_en;
$self->{age} = $self->_calculate_age;
return 1;
}
sub _calculate_age {
my $self = shift;
my $today = DateTime->today->ymd('');
my $birthday = $self->birthday->ymd('');
return int(($today-$birthday)/10000);
}
sub _datetime_from_date {
my ($self, $date) = @_;
my ($year, $month, $day) = ($date =~ /(\d{4})-(\d{2})-(\d{2})/);
DateTime->new(
year => $year,
month => $month,
day => $day,
);
}
1;
__END__
t/01_team_members.t view on Meta::CPAN
use strict;
use DateTime;
use Acme::Keyakizaka46;
use Test::More tests => 3;
my $keyaki = Acme::Keyakizaka46->new;
is scalar($keyaki->team_members), 41, " ALL KEYAKI MEMBERS";
is scalar($keyaki->team_members('kanji')), 21, " KANJI KEYAKI MEMBERS";
is scalar($keyaki->team_members('hiragana')), 20, " HIRAGANA KEYAKI MEMBERS";
t/02_nogizaka46.t view on Meta::CPAN
my @members = $keyaki->team_members;
for my $member (@members) {
ok $member, $member->name_en;
ok $member->first_name_en, ' first_name_en()';
ok $member->family_name_en, ' family_name_en()';
ok $member->name_en, ' name_en()';
ok $member->first_name_ja, ' first_name_ja()';
ok $member->family_name_ja, ' family_name_ja()';
ok $member->name_ja, ' name_ja()';
ok $member->birthday->isa('DateTime'), ' birthday()';
ok $member->age
&& $member->age =~ /\d{2}/, ' age()';
ok $member->zodiac_sign, ' zodiac_sign()';
ok $member->height
&& $member->height =~ /\d{3}/, ' height()';
ok $member->hometown, ' hometown()';
ok $member->blood_type, ' blood_type()';
ok $member->team, ' team()';
ok $member->class, ' class()';
ok !$member->center || scalar($member->center) > 0, ' center()';
t/03_select.t view on Meta::CPAN
use strict;
use DateTime;
use Acme::Keyakizaka46;
use Test::More tests => 2;
my $keyaki = Acme::Keyakizaka46->new;
my @neru = $keyaki->select('family_name_en', 'Nagahama', 'eq');
is $neru[0]->name_en, 'Neru Nagahama', "ãããæ¤ç´¢";
my @ab = $keyaki->select('blood_type', 'AB', 'eq');
is scalar @ab, 5, "ABåã®ã¡ã³ãã¼ã¯5人";
t/04_sort.t view on Meta::CPAN
use strict;
use DateTime;
use Acme::Keyakizaka46;
use Test::More tests => 2;
my $keyaki = Acme::Keyakizaka46->new;
my @sorted_by_height = $keyaki->sort('height', 'desc');
is $sorted_by_height[0]->name_en, 'Mizuho Habu', "ä¸çªé«èº«é·";
my @sorted_by_birthday = $keyaki->sort('birthday', 'asc');
is $sorted_by_birthday[0]->name_en, 'Rika Watanabe', "æå¹´é·";
( run in 0.318 second using v1.01-cache-2.11-cpan-05444aca049 )