[Bioperl-l] evalues/floating point tests
cjfields at illinois.edu
Sun Jan 18 05:22:58 UTC 2009
On Jan 17, 2009, at 8:44 PM, Mark A. Jensen wrote:
> how bout is_asfloat() ?
> ----- Original Message ----- From: "Chris Fields" <cjfields at illinois.edu
> To: "Sendu Bala" <bix at sendu.me.uk>
> Cc: "BioPerl List" <bioperl-l at lists.open-bio.org>
> Sent: Saturday, January 17, 2009 9:24 PM
> Subject: Re: [Bioperl-l] evalues/floating point tests
>> On Jan 17, 2009, at 5:45 PM, Sendu Bala wrote:
>>> Chris Fields wrote:
>>>> I've noticed an odd issue when testing BioPerl on WinXP
>>>> yesterday which doesn't appear to be popping up anywhere else.
>>>> When comparing floating point numbers, several tests fail like
>>>> the following:
>>>> # Failed test at t\SearchIO\blast_pull.t line 40.
>>>> # got: '1e-23'
>>>> # expected: '1e-023'
>>>> # Failed test at t\SearchIO\blast_pull.t line 67.
>>>> # got: '6e-59'
>>>> # expected: '6e-059'
>>>> These are generally in lines like (for the example above)
>>>> is $result->get_parameter('expect'), 1e-23;
>>>> I'm adding a method to Bio::Root::Test for comparing two
>>>> floating point numbers based on equality:
>>>> float_eq $float1, $float2, $message;
>>>> This basically wraps is() but runs both values through
>>>> 'sprintf("%g", $foo)' prior to the comparison; it has a
>>>> prototype requiring two values to be passed and an optional
>>>> message. Any objections to the method name or adding this in?
>>> is_float() seems more consistent? Other than that, great idea.
>> I thought the same thing at first, but (at least to me) is_float
>> sounds more like a boolean test on whether the scalar value passed
>> is a float rather than a comparison checking whether two floats
>> are equal.
>> I'll go ahead and commit this, but it would be very easy to switch
>> the method name over.
>> Bioperl-l mailing list
>> Bioperl-l at lists.open-bio.org
> Bioperl-l mailing list
> Bioperl-l at lists.open-bio.org
More information about the Bioperl-l