Changeset 24240
- Timestamp:
- 11/19/08 14:02:05 (7 weeks ago)
- Location:
- lang/perl/DateTime-Lite/trunk
- Files:
-
- 6 modified
-
lib/DateTime/Lite.pm (modified) (2 diffs)
-
t/06add.t (modified) (1 diff)
-
t/09greg.t (modified) (5 diffs)
-
t/10subtract.t (modified) (1 diff)
-
t/11duration.t (modified) (1 diff)
-
t/40leap-years.t (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
lang/perl/DateTime-Lite/trunk/lib/DateTime/Lite.pm
r24234 r24240 506 506 } 507 507 508 sub set_year { $_[0]->set( year => $_[1] ) } 509 sub set_month { $_[0]->set( month => $_[1] ) } 510 sub set_day { $_[0]->set( day => $_[1] ) } 511 sub set_hour { $_[0]->set( hour => $_[1] ) } 512 sub set_minute { $_[0]->set( minute => $_[1] ) } 513 sub set_second { $_[0]->set( second => $_[1] ) } 514 sub set_nanosecond { $_[0]->set( nanosecond => $_[1] ) } 515 516 sub set_locale { $_[0]->set( locale => $_[1] ) } 517 518 sub set_formatter { $_[0]->{formatter} = $_[1] } 519 520 508 521 sub formatter { $_[0]->{formatter} } 509 522 … … 554 567 sub now { shift->from_epoch( epoch => (scalar CORE::time), @_ ) } 555 568 569 sub today { shift->now(@_)->truncate( to => 'day' ) } 570 571 my %TruncateDefault = ( 572 month => 1, 573 day => 1, 574 hour => 0, 575 minute => 0, 576 second => 0, 577 nanosecond => 0, 578 ); 579 580 sub 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 556 613 sub epoch 557 614 { -
lang/perl/DateTime-Lite/trunk/t/06add.t
r24134 r24240 3 3 use strict; 4 4 5 use Test::More tests => 537;5 use Test::More skip_all => "arithmetic not implemented"; # tests => 537; 6 6 7 7 use DateTime::Lite; -
lang/perl/DateTime-Lite/trunk/t/09greg.t
r24134 r24240 30 30 [673222,1844,3,21] 31 31 ) { 32 is( join('/',DateTime::Lite ->_rd2ymd($_->[0])), join('/',@{$_}[1..3]),32 is( join('/',DateTime::Lite::Util::rd2ymd($_->[0])), join('/',@{$_}[1..3]), 33 33 $_->[0] . " \t=> " . join '/', @{$_}[1..3] ); 34 34 35 is( DateTime::Lite ->_ymd2rd(@{$_}[1..3]), $_->[0],35 is( DateTime::Lite::Util::ymd2rd(@{$_}[1..3]), $_->[0], 36 36 join('/',@{$_}[1..3]) . " \t=> " . $_->[0]); 37 37 } … … 44 44 ) 45 45 { 46 is(DateTime::Lite ->_ymd2rd(@{$_}[1..3]), $_->[0],46 is(DateTime::Lite::Util::ymd2rd(@{$_}[1..3]), $_->[0], 47 47 join('/',@{$_}[1..3])." \t=> ".$_->[0]." (normalization)"); 48 48 } … … 60 60 # test $y,$m,1 61 61 ++$dno; 62 $dno2 = DateTime::Lite ->_ymd2rd( $y, $m, 1 );62 $dno2 = DateTime::Lite::Util::ymd2rd( $y, $m, 1 ); 63 63 if ( $dno != $dno2 ) { 64 64 is( $dno2, $dno, "greg torture test: _ymd2rd($y,$m,1) should be $dno" ); 65 65 last; 66 66 } 67 ( $y2, $m2, $d2 ) = DateTime::Lite ->_rd2ymd($dno);67 ( $y2, $m2, $d2 ) = DateTime::Lite::Util::rd2ymd($dno); 68 68 69 69 if ( $y2 != $y || $m2 != $m || $d2 != 1 ) { … … 76 76 $mlen = $mlen[$m] || ( $y % 4 ? 28 : $y % 100 ? 29 : $y % 400 ? 28 : 29 ); 77 77 $dno += $mlen - 1; 78 $dno2 = DateTime::Lite ->_ymd2rd( $y, $m, $mlen );78 $dno2 = DateTime::Lite::Util::ymd2rd( $y, $m, $mlen ); 79 79 if ( $dno != $dno2 ) { 80 80 is( $dno2, $dno, … … 82 82 last; 83 83 } 84 ( $y2, $m2, $d2 ) = DateTime::Lite ->_rd2ymd($dno);84 ( $y2, $m2, $d2 ) = DateTime::Lite::Util::rd2ymd($dno); 85 85 86 86 if ( $y2 != $y || $m2 != $m || $d2 != $mlen ) { -
lang/perl/DateTime-Lite/trunk/t/10subtract.t
r24134 r24240 3 3 use strict; 4 4 5 use Test::More tests => 105;5 use Test::More skip_all => "arithmetic not implemented"; # tests => 105; 6 6 7 7 use DateTime::Lite; -
lang/perl/DateTime-Lite/trunk/t/11duration.t
r24134 r24240 3 3 use strict; 4 4 5 use Test::More tests => 128;5 use Test::More skip_all => "arithmetic not implemented"; # tests => 128; 6 6 7 7 use DateTime::Lite; -
lang/perl/DateTime-Lite/trunk/t/40leap-years.t
r24134 r24240 10 10 for my $y ( 0, 400, 2000, 2004 ) 11 11 { 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" ); 13 13 } 14 14 15 15 for my $y ( 1, 100, 1900, 2133 ) 16 16 { 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" ); 18 18 }
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)