Changeset 29944

Show
Ignore:
Timestamp:
02/12/09 13:52:16 (4 years ago)
Author:
yappo
Message:

fixed bug, use looks_like_number (http://www.nntp.perl.org/group/perl.cpan.testers/2009/02/msg3252540.html)

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/perl/HTTP-Engine-Middleware/trunk/t/200_middlewares/profile-runtime.t

    r29766 r29944  
    66plan skip_all => "Time::HiRes is not installed: $@" if $@; 
    77 
    8 plan tests => 5; 
     8plan tests => 6; 
    99 
    1010use HTTP::Engine; 
     
    1616$mw->install( 'HTTP::Engine::Middleware::Profile',{ 
    1717    logger  => sub { 
     18        my $re = qr/Request handling execution time: (.+) secs/; 
    1819        ::is  $_[0], 'debug', 'log level'; 
    19         ::like $_[1], qr/Request handling execution time: \d+\.\d+ secs/, 'log msg'; 
     20        ::like $_[1], $re, 'log msg'; 
     21        $_[1] =~ $re; 
     22        ::ok looks_like_number($1), 'time is number'; 
    2023    }, 
    2124    config  => +{ 
     
    3740is $out, 'ok', 'response content'; 
    3841like $res->header('X-Runtime'), qr/^\d+\.\d+$/, 'X-Runtime header'; 
     42 
     43 
     44# copied from Scalar::Util 
     45sub looks_like_number { 
     46  local $_ = shift; 
     47 
     48  # checks from perlfaq4 
     49  return 0 if !defined($_) or ref($_); 
     50  return 1 if (/^[+-]?\d+$/); # is a +/- integer 
     51  return 1 if (/^([+-]?)(?=\d|\.\d)\d*(\.\d*)?([Ee]([+-]?\d+))?$/); # a C float 
     52  return 1 if ($] >= 5.008 and /^(Inf(inity)?|NaN)$/i) or ($] >= 5.006001 and /^Inf$/i); 
     53 
     54  0; 
     55}