Changeset 24240

Show
Ignore:
Timestamp:
11/19/08 14:02:05 (5 years ago)
Author:
daisuke
Message:

more stuff

Location:
lang/perl/DateTime-Lite/trunk
Files:
6 modified

Legend:

Unmodified
Added
Removed
  • lang/perl/DateTime-Lite/trunk/lib/DateTime/Lite.pm

    r24234 r24240  
    506506} 
    507507 
     508sub set_year   { $_[0]->set( year => $_[1] ) } 
     509sub set_month  { $_[0]->set( month => $_[1] ) } 
     510sub set_day    { $_[0]->set( day => $_[1] ) } 
     511sub set_hour   { $_[0]->set( hour => $_[1] ) } 
     512sub set_minute { $_[0]->set( minute => $_[1] ) } 
     513sub set_second { $_[0]->set( second => $_[1] ) } 
     514sub set_nanosecond { $_[0]->set( nanosecond => $_[1] ) } 
     515 
     516sub set_locale { $_[0]->set( locale => $_[1] ) } 
     517 
     518sub set_formatter { $_[0]->{formatter} = $_[1] } 
     519  
     520 
    508521sub formatter { $_[0]->{formatter} } 
    509522 
     
    554567sub now { shift->from_epoch( epoch => (scalar CORE::time), @_ ) } 
    555568 
     569sub today { shift->now(@_)->truncate( to => 'day' ) } 
     570 
     571my %TruncateDefault = ( 
     572    month  => 1, 
     573    day    => 1, 
     574    hour   => 0, 
     575    minute => 0, 
     576    second => 0, 
     577    nanosecond => 0, 
     578); 
     579 
     580sub truncate { 
     581    my ($self, %p) = @_; 
     582 
     583    my %new; 
     584    if ( $p{to} eq 'week' ) 
     585    { 
     586        my $day_diff = $self->day_of_week - 1; 
     587 
     588        if ($day_diff) 
     589        { 
     590            $self->add( days => -1 * $day_diff ); 
     591        } 
     592 
     593        return $self->truncate( to => 'day' ); 
     594    } 
     595    else 
     596    { 
     597        my $truncate; 
     598        foreach my $f ( qw( year month day hour minute second nanosecond ) ) { 
     599            $new{$f} = $truncate ? $TruncateDefault{$f} : $self->$f(); 
     600 
     601            $truncate = 1 if $p{to} eq $f; 
     602        } 
     603    } 
     604 
     605    my $new_dt = $self->_new_from_self(%new); 
     606 
     607    %$self = %$new_dt; 
     608 
     609    return $self; 
     610} 
     611 
     612 
    556613sub epoch 
    557614{ 
  • lang/perl/DateTime-Lite/trunk/t/06add.t

    r24134 r24240  
    33use strict; 
    44 
    5 use Test::More tests => 537; 
     5use Test::More skip_all => "arithmetic not implemented"; # tests => 537; 
    66 
    77use DateTime::Lite; 
  • lang/perl/DateTime-Lite/trunk/t/09greg.t

    r24134 r24240  
    3030     [673222,1844,3,21] 
    3131) { 
    32     is( join('/',DateTime::Lite->_rd2ymd($_->[0])), join('/',@{$_}[1..3]), 
     32    is( join('/',DateTime::Lite::Util::rd2ymd($_->[0])), join('/',@{$_}[1..3]), 
    3333        $_->[0] . "   \t=> " . join '/', @{$_}[1..3] ); 
    3434 
    35     is( DateTime::Lite->_ymd2rd(@{$_}[1..3]), $_->[0], 
     35    is( DateTime::Lite::Util::ymd2rd(@{$_}[1..3]), $_->[0], 
    3636        join('/',@{$_}[1..3]) . "   \t=> " . $_->[0]); 
    3737} 
     
    4444    ) 
    4545{ 
    46     is(DateTime::Lite->_ymd2rd(@{$_}[1..3]), $_->[0], 
     46    is(DateTime::Lite::Util::ymd2rd(@{$_}[1..3]), $_->[0], 
    4747       join('/',@{$_}[1..3])." \t=> ".$_->[0]." (normalization)"); 
    4848} 
     
    6060    # test $y,$m,1 
    6161    ++$dno; 
    62     $dno2 = DateTime::Lite->_ymd2rd( $y, $m, 1 ); 
     62    $dno2 = DateTime::Lite::Util::ymd2rd( $y, $m, 1 ); 
    6363    if ( $dno != $dno2 ) { 
    6464        is( $dno2, $dno, "greg torture test: _ymd2rd($y,$m,1) should be $dno" ); 
    6565        last; 
    6666    } 
    67     ( $y2, $m2, $d2 ) = DateTime::Lite->_rd2ymd($dno); 
     67    ( $y2, $m2, $d2 ) = DateTime::Lite::Util::rd2ymd($dno); 
    6868 
    6969    if ( $y2 != $y || $m2 != $m || $d2 != 1 ) { 
     
    7676    $mlen = $mlen[$m] || ( $y % 4 ? 28 : $y % 100 ? 29 : $y % 400 ? 28 : 29 ); 
    7777    $dno += $mlen - 1; 
    78     $dno2 = DateTime::Lite->_ymd2rd( $y, $m, $mlen ); 
     78    $dno2 = DateTime::Lite::Util::ymd2rd( $y, $m, $mlen ); 
    7979    if ( $dno != $dno2 ) { 
    8080        is( $dno2, $dno, 
     
    8282        last; 
    8383    } 
    84     ( $y2, $m2, $d2 ) = DateTime::Lite->_rd2ymd($dno); 
     84    ( $y2, $m2, $d2 ) = DateTime::Lite::Util::rd2ymd($dno); 
    8585 
    8686    if ( $y2 != $y || $m2 != $m || $d2 != $mlen ) { 
  • lang/perl/DateTime-Lite/trunk/t/10subtract.t

    r24134 r24240  
    33use strict; 
    44 
    5 use Test::More tests => 105; 
     5use Test::More skip_all => "arithmetic not implemented"; # tests => 105; 
    66 
    77use DateTime::Lite; 
  • lang/perl/DateTime-Lite/trunk/t/11duration.t

    r24134 r24240  
    33use strict; 
    44 
    5 use Test::More tests => 128; 
     5use Test::More skip_all => "arithmetic not implemented"; # tests => 128; 
    66 
    77use DateTime::Lite; 
  • lang/perl/DateTime-Lite/trunk/t/40leap-years.t

    r24134 r24240  
    1010for my $y ( 0, 400, 2000, 2004 ) 
    1111{ 
    12     ok( DateTime::Lite->_is_leap_year($y), "$y is a leap year" ); 
     12    ok( DateTime::Lite::Util::is_leap_year($y), "$y is a leap year" ); 
    1313} 
    1414 
    1515for my $y ( 1, 100, 1900, 2133 ) 
    1616{ 
    17     ok( ! DateTime::Lite->_is_leap_year($y), "$y is not a leap year" ); 
     17    ok( ! DateTime::Lite::Util::is_leap_year($y), "$y is not a leap year" ); 
    1818}