[Bioperl-l] Failed tests for FeatureIO
Sendu Bala
bix at sendu.me.uk
Mon Sep 25 15:02:25 UTC 2006
Torsten Seemann wrote:
> Chris,
>
>> I am getting failed tests for FeatureIO.t on make test using bioperl-
>> live on Mac OS X (10.4.7, perl 5.8.6):
>> pyr:~/src/bioperl-live cjfields$ perl -I. -w t/FeatureIO.t
>> ------------- EXCEPTION: Bio::Root::Exception -------------
>> MSG: Invalid protein count
>> STACK: Error::throw
>> STACK: Bio::Root::Root::throw Bio/Root/Root.pm:331
>> STACK: Bio::FeatureIO::ptt::_initialize Bio/FeatureIO/ptt.pm:147
>> STACK: Bio::FeatureIO::new Bio/FeatureIO.pm:266
>> STACK: Bio::FeatureIO::new Bio/FeatureIO.pm:286
>> STACK: t/FeatureIO.t:189
>> -----------------------------------------------------------
>
> Hmmm, I committed that module last week. I just did a fresh complete checkout
> of current CVS, and all the tests pass fine for me on Linux 2.6 + Perl 5.8.5 ?
The problem is your use of Bio::Root::IO::mode. Your's is the only
module in bioperl that seems to use it, and for good reason: it was
broken. I've fixed it and tested under Linux and Mac OS X, not tried
Windows but hopefully that's ok too.
(Briefly, mode() would call IO::Handle::getline which would return a
seemingly random (but consistent per platform) line from the file, and
then mode() would happily push that random line into the buffer. Worse,
under Mac OS X, getlines() would leave Root::IO's filehandle at the
point after that random line, so all subsequent _readline's would be
from the wrong point in the file)
More information about the Bioperl-l
mailing list