[Bioperl-l] make test on Mac OS X
Todd Richmond
todd@verdant.stanford.edu
Fri, 11 Jan 2002 20:50:24 -0600
On 1/11/02 2:39 PM, "David Block" <dblock@gnf.org> wrote:
> Hello all,
>
> Thanks to Hilmar's generosity ;) I am working on a TiBook running OS X.
> So I can do make test on OS X 10.1.
>
> Unfortunately, make test doesn't finish. It gets to
> t/EMBOSS............ok 1/4
>
> and this hangs indefinitely.
>
> dblock% perl -e 'print $^O,"\n"'
> darwin
>
> So it's not a Mac thing, it's an OS X thing.
>
I wouldn't say that... I ran a CVS update this evening and tried a make test
on my OS X machine. There was a problem with EMBOSS, but not a fatal one.
t/EMBOSS............ok 1/4Can't exec "wossname": No such file or directory
at blib/lib/Bio/Factory/EMBOSS.pm line 233.
And since I don't have EMBOSS installed, I guess that's fair.
There were a few other problems:
**********************************
t/SearchIO..........ok 160/290-------------------- WARNING
---------------------
MSG: unrecognized FASTA Family report file!
---------------------------------------------------
Can't call method "database_name" on an undefined value at t/SearchIO.t line
277, <GEN11> line 1.
t/SearchIO..........dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 161-290
Failed 130/290 tests, 55.17% okay
This fails because OS X is case insensitive and there is both a
HUMBETGLOA.FASTA and HUMBETGLOA.fasta in the /t/data directory.
The second HUMBETGLOA.fasta clobbers the first, and causes the test to fail.
When I changed HUMBETGLOA.FASTA to HUMBETGLOA.fas and changed SearchIO.t to
look for this file instead, all tests passed.
*********************************
t/consed............ok 11/12-------------------- WARNING
---------------------
MSG: Bio::Tools::Alignment::Consed::count_sequences_with_grep: This sub uses
grep which is doesn't run on this operating system, AFAIK. Sorry .darwin
---------------------------------------------------
t/consed............FAILED test 12
Failed 1/12 tests, 91.67% okay
The culprit here is the following line in Consed.pm:
# I tried to cause graceful exiting if not on *ix here
# then i took platforms from Bioperl*/PLATFORMS here. Is that good?
# print("\$^O is $^O\n");
if (!($^O =~ /dec_osf|linux|unix|bsd|solaris/i)) {
What OS X (darwin) doesn't count? A simple change to:
if (!($^O =~ /dec_osf|linux|unix|bsd|solaris|darwin/i)) {
fixes this
***********************************
After those changes:
All tests successful, 97 subtests skipped.
Files=91, Tests=2121, 458 wallclock secs (95.64 cusr + 9.88 csys = 105.52
CPU)
--
Todd Richmond, PhD
http://cellwall.stanford.edu/todd
email: todd@verdant.stanford.edu