[Jifty-commit] r4802 - in Jifty-DBI/trunk: lib/Jifty/DBI/Filter t
jifty-commit at lists.jifty.org
jifty-commit at lists.jifty.org
Tue Jan 8 12:08:17 EST 2008
Author: trs
Date: Tue Jan 8 12:08:17 2008
New Revision: 4802
Modified:
Jifty-DBI/trunk/ (props changed)
Jifty-DBI/trunk/lib/Jifty/DBI/Filter/Duration.pm
Jifty-DBI/trunk/t/06filter_duration.t
Log:
r30654 at zot: tom | 2008-01-08 12:07:19 -0500
Handle hh:mm(:ss)? within other duration strings so that "1d 2:30" works
Modified: Jifty-DBI/trunk/lib/Jifty/DBI/Filter/Duration.pm
==============================================================================
--- Jifty-DBI/trunk/lib/Jifty/DBI/Filter/Duration.pm (original)
+++ Jifty-DBI/trunk/lib/Jifty/DBI/Filter/Duration.pm Tue Jan 8 12:08:17 2008
@@ -26,10 +26,9 @@
my $value_ref = $self->value_ref;
return unless defined $$value_ref;
- # Convert hh:mm::ss to something Time::Duration::Parse understands
- if ( $$value_ref =~ /^\s*(\d+):(\d\d)(?::(\d\d))?\s*$/ ) {
- $$value_ref = defined $3 ? "$1h $2m $3s" : "$1h $2m";
- }
+ # Convert hh:mm(::ss)? to something Time::Duration::Parse understands
+ $$value_ref =~ s/\b(\d+):(\d\d):(\d\d)\b/$1h $2m $3s/g;
+ $$value_ref =~ s/\b(\d+):(\d\d)\b/$1h $2m/g;
$$value_ref = Time::Duration::Parse::parse_duration($$value_ref);
Modified: Jifty-DBI/trunk/t/06filter_duration.t
==============================================================================
--- Jifty-DBI/trunk/t/06filter_duration.t (original)
+++ Jifty-DBI/trunk/t/06filter_duration.t Tue Jan 8 12:08:17 2008
@@ -6,7 +6,7 @@
BEGIN { require "t/utils.pl" }
our (@available_drivers);
-use constant TESTS_PER_DRIVER => 23;
+use constant TESTS_PER_DRIVER => 37;
eval "use Time::Duration ()";
if ($@) {
@@ -21,7 +21,7 @@
my $total = scalar(@available_drivers) * TESTS_PER_DRIVER;
plan tests => $total;
-my @duration_input = qw(3h5m 3:05 3:04:60);
+my @duration_input = ('3h5m', '3:05', '3:04:60', '3h 0:05', '1h 2:04:60');
my $duration_output = '3h5m';
my $duration_seconds = 11100;
More information about the Jifty-commit
mailing list