[MOBY-dev] Re: Failing tests in the Perl API.

Frank Gibbons fgibbons at hms.harvard.edu
Fri Sep 16 16:27:30 UTC 2005


Pieter,

Thanks for the quick feedback. In fact, your output is pretty much the same 
as mine, specifically in the tests that failed. There are also some which 
"unexpectedly succeed" for me too, I just haven't had a chance to check 
what they are.

The failing stuff is for the most part, apparently not that important. It 
represents aspects of the stated API (in particularly when it says "failed 
to implement complete API" or similar): methods which the API describes, 
but which are not yet implemented. I just got involved recently as a 
developer, and writing tests has been my way to understand the API, from 
the inside out. I'll modify the tests so that these go on the TO-DO list, 
and no longer generate error messages (it's not clear when they will 
actually be implemented).

There is one failure that concerns me, this one:

t/Client-Central............................dubious
         Test returned status 1 (wstat 256, 0x100)
Scalar found where operator expected at (eval 153) line 1, near
"'int'  $__val"
         (Missing operator before   $__val?)
DIED. FAILED test 3
         Failed 1/134 tests, 99.25% okay

I don't understand what '$__val' is referring to. More importantly, it 
looks like it's causing the entire test to abort ("DIED"), yet it reports 
only 1/134 failed. There are no explicit eval's in the test script, perhaps 
the message is coming from a module that is imported with 'use'.  I've 
searched the MOBY codebase, and there is no variable with that name, so it 
may be coming in from an external module.  If you have any ideas, I'm 
interested in hearing them, since this single script represents about half 
of the current tests, so if it aborts, especially if it aborts reporting 
success, that's a problem.

So thanks again for the feedback. I'll fix most of those problems I 
mentioned, which should make the remaining one (above) stand out more.

-Frank

At 11:01 AM 9/16/2005, you wrote:
>Hi Frank,
>
>On 16-Sep-2005, at 4:26 PM, Gibbons, Francis wrote:
>
>>Pieter,
>>
>>I wrote many of the tests for the  Perl API. When I run them, I see
>>a 99% pass rate, or better. I'm very interested to know which ones
>>are failing for you, and what your local installation looks like (I
>>guess you have a local registry? what's your OS? Perl version? etc.)
>
>I'm running SuSE Linux Enterprise Server 9 (SLES9) with all the
>latest and greatest updates / patches. My Perl version is 5.8.3
>(default that comes with SLES9) I do have a local biomobycentral, but
>that shouldn't make any difference for the tests. I haven't set
>MOBY_xxx ENV vars, so for the tests  everything should default to the
>central mobycentral.
>
>I see 3/361 subtests failed, 99.17% okay and 8 subtests UNEXPECTEDLY
>SUCCEEDED. The 99.17% might seem not too shabby, but for a user like
>me it's pretty difficult to figure out how essential the failing
>stuff is :(.... I'll just give it try anyway. If it doesn't work I'll
>downgrade again. Keeping my fingers crossed...
>
>Below is what I got from the tests.
>
>Cheers,
>
>Pieter
>
>pieter at bioinfw05:~/moby-live/Perl> make test
>PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e"
>"test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
>t/Central...................................ok
>t/Client-Central............................NOK 3#     Failed test (t/ 
>Client-Central.t at line 73)
>#     MOBY::Client::Central->can('retrieveObjectSchema') failed
># Registry failed to supply mandatory methods
>t/Client-Central............................ok 134/0# Looks like you
>failed 1 tests of 134.
>t/Client-Central............................dubious
>         Test returned status 1 (wstat 256, 0x100)
>Scalar found where operator expected at (eval 153) line 1, near
>"'int'  $__val"
>         (Missing operator before   $__val?)
>DIED. FAILED test 3
>         Failed 1/134 tests, 99.25% okay
>t/Client-CollectionArticle..................ok
>t/Client-OntologyServer.....................NOK 2#     Failed test (t/ 
>Client-OntologyServer.t at line 36)
>#     MOBY::Client::OntologyServer->can('relationshipExists') failed
># OntologyServer doesn't implement full API
>t/Client-OntologyServer.....................ok 24/0Use of
>uninitialized value in pattern match (m//) at /mnt/geninf01/home/ 
>geninf/pieter/moby-live/Perl/blib/lib/MOBY/Client/OntologyServer.pm
>line 98.
>Use of uninitialized value in pattern match (m//) at /mnt/geninf01/ 
>home/geninf/pieter/moby-live/Perl/blib/lib/MOBY/Client/ OntologyServer.pm 
>line 98.
>t/Client-OntologyServer.....................ok 25/0No such method:
>MOBY::Client::OntologyServer::relationshipExists at t/Client- 
>OntologyServer.t line 76
># Looks like you failed 1 tests of 25.
># Looks like your test died just after 25.
>t/Client-OntologyServer.....................dubious
>         Test returned status 255 (wstat 65280, 0xff00)
>DIED. FAILED test 2
>         Failed 1/25 tests, 96.00% okay
>t/Client-Registration.......................ok
>t/Client-SecondaryArticle...................ok
>t/Client-Service............................NOK 3#     Failed test (t/ 
>Client-Service.t at line 36)
>#     MOBY::Client::Service->can('serviceName') failed
># MOBY::Client::Service doesn't implement full API.
>t/Client-Service............................ok 6/0# Looks like you
>failed 1 tests of 6.
>t/Client-Service............................dubious
>         Test returned status 1 (wstat 256, 0x100)
>DIED. FAILED test 3
>         Failed 1/6 tests, 83.33% okay
>t/Client-ServiceInstance....................ok
>t/Client-SimpleArticle......................ok
>t/CommonSubs................................ok 18/0MOBY::CommonSubs
>WARNING ** the namespace 'bogus NS' does not exist in the MOBY
>ontology, and does not have a valid LSID
>t/CommonSubs................................ok
>t/Config....................................skipped
>         all skipped: Required only for local MOBY Central
>t/CrossReference............................ok
>t/dbConnect.................................ok
>t/lsid-authority-ClassResolver..............ok
>t/lsid-authority-dbConnect..................ok
>t/lsid-authority-Error......................ok
>t/lsid-authority-NamespaceResolver..........ok
>t/lsid-authority-PredicateResolver..........ok
>t/lsid-authority-RDFConfigure...............ok
>t/lsid-authority-RelationshipResolver.......ok
>t/lsid-authority-ServiceInstanceResolver....skipped
>         all skipped: Skip until apparent namespace pollution fixed
>in ServiceInstanceResolver
>t/lsid-authority-ServiceResolver............ok
>t/Template..................................skipped
>         all skipped: This is just a template
>Failed Test               Stat Wstat Total Fail  Failed  List of Failed
>------------------------------------------------------------------------ 
>-------
>t/Client-Central.t           1   256   134    1   0.75%  3
>t/Client-OntologyServer.t  255 65280    25    1   4.00%  2
>t/Client-Service.t           1   256     6    1  16.67%  3
>  (8 subtests UNEXPECTEDLY SUCCEEDED), 3 tests skipped.
>Failed 3/23 test scripts, 86.96% okay. 3/361 subtests failed, 99.17%
>okay.
>make: *** [test_dynamic] Error 255
>
>
>>Clearly, we should have a test suite that passes for most
>>developers most of the time, so that they can be alerted quickly if
>>they break something. So it's really important for me to know which
>>tests are failing and why: the tests may need to be rewritten.
>>
>>Thanks for your feedback.
>>
>>-Frank
>>-----Original Message-----
>>From: moby-dev-bounces at portal.open-bio.org on behalf of Edward Kawas
>>Sent: Fri 9/16/2005 9:54 AM
>>To: 'Core developer announcements'
>>Cc: 'Pieter Neerincx'
>>Subject: RE: [MOBY-dev] Moby objects in Taverna. Where do they come
>>from?
>>
>> >I assume I need to update my BioMOBY API stuff as
>> >well. So I tried an cvs up -d of moby-live. When I try make
>> >test for the Perl stuff I see a lot of tests failing....
>> >Can I safely ignore them for now?
>>
>>I am not sure about this question. I know that Mark has a
>>new test suite but I am not sure if this is the suite that
>>you are running.
>>
>>One more thing, if the servlets work, you would be able to
>>do the following:
>>http://yourURL:port/types/Objects
>>http://yourURL:port/RESOURCES/MOBY-S/Objects
>>http://yourURL:port/authority
>>
>>These 3 links should show you something meaningful (html, a
>>file, more html).
>>
>>Eddie
>>
>>_______________________________________________
>>MOBY-dev mailing list
>>MOBY-dev at biomoby.org
>>http://www.biomoby.org/mailman/listinfo/moby-dev
>
>
>Wageningen University and Research centre (WUR)
>Laboratory of Bioinformatics
>Transitorium (building 312) room 1034
>Dreijenlaan 3
>6703 HA Wageningen
>The Netherlands
>phone: 0317-483 060
>fax: 0317-483 584
>mobile: 06-143 66 783
>pieter.neerincx at wur.nl
>
>
>
>_______________________________________________
>MOBY-dev mailing list
>MOBY-dev at biomoby.org
>http://www.biomoby.org/mailman/listinfo/moby-dev

PhD, Computational Biologist,
Harvard Medical School BCMP/SGM-322, 250 Longwood Ave, Boston MA 02115, USA.
Tel: 617-432-3555       Fax: 
617-432-3557       http://llama.med.harvard.edu/~fgibbons 




More information about the MOBY-dev mailing list