All of the tests for BioRuby classes in bio/, bio/db/ and bio/lib/ are executed correctly, Covering about 90% of total lines.
Although Ruby 1.8.7 outputs some warning, They pass all the tests.
I have skipped other classes in bio/appl/ and bio/io, because of dependency on external library or web services.
I haven't worked on the tests for the classes in bio/shell/, since I don't understand how they are composed.
A test in bio/, bio/db/ and bio/sequence/ with Ruby 1.9.2 says that BioRuby has some errors about Compatibility of Float, String and methods.
However, almost the classes pass the tests.
Ruby 1.9.2 support of BioRuby
This is a blog for Google summer of code 2010.
Sunday, July 18, 2010
Saturday, June 26, 2010
Bio::MEDLINE
There is a unit test for Bio::MEDLINE.
I replaced it into new one.
New Bio::TestMEDLINE tests all of the methods in Bio::MEDLINE and use the same sample file.
It has 100% coverage to Bio::MEDLINE.
I replaced it into new one.
New Bio::TestMEDLINE tests all of the methods in Bio::MEDLINE and use the same sample file.
It has 100% coverage to Bio::MEDLINE.
Sunday, June 20, 2010
Bio::KEGG
There are 5 files witch don't have the files for unit test.
I skipped Bio::KEGG::Brite, It probably has the same methods as KEGGDB.
Bio::TestBioKEGGEXPRESSION outputs the following result now.
I skipped Bio::KEGG::KGML because it is just a wrapper class of REXML.
I haven't written Bio::KEGG::Common, Bio::KEGG::KEGGTAB and Bio::KEGG::Taxonomy (the latter two classes may not be so important.).
I skipped Bio::KEGG::Brite, It probably has the same methods as KEGGDB.
Bio::TestBioKEGGEXPRESSION outputs the following result now.
12 tests, 7 assertions, 6 failures, 5 errorsI checked the following error of them.
4) Error: test_down_regulated(Bio::TestBioKEGGEXPRESSION): Errno::EDOM: Numerical argument out of domain - log10 ./lib/bio/db/kegg/expression.rb:128:in `log10' ./lib/bio/db/kegg/expression.rb:128:in `logy_minus_logx' ./lib/bio/db/kegg/expression.rb:127:in `each' ./lib/bio/db/kegg/expression.rb:127:in `logy_minus_logx' ./lib/bio/db/kegg/expression.rb:99:in `down_regulated' test/unit/bio/db/kegg/test_expression.rb:77:in `test_down_regulated'The reason is that test_down_regulated gives a negative value to Math.log10.
I skipped Bio::KEGG::KGML because it is just a wrapper class of REXML.
I haven't written Bio::KEGG::Common, Bio::KEGG::KEGGTAB and Bio::KEGG::Taxonomy (the latter two classes may not be so important.).
Bio::GO
Bio::TestGo class tests almost all code in Bio::GO, Bio::GO::GeneAssociation and Bio::GO::External2GO.
It doesn't cover part of dag_edit_format_parser(str).
In addition, It outputs an error in "to_str" method of Bio::GO::GeneAssociation class, because the method doesn't assume empty value in each instance variable.
It doesn't cover part of dag_edit_format_parser(str).
In addition, It outputs an error in "to_str" method of Bio::GO::GeneAssociation class, because the method doesn't assume empty value in each instance variable.
Bio::Sequence
Bio::Sequence::Format::Formatter
- I made fake class witch has only a simple output method to test FormatterBase. The unit test class has the test for output method with the fake class.
Bio::Sequence::Adapter
- It has a clss for a data source class connected by the adapter and a class witch is the interface. In addition, it has adapter class witch extends an adapter module. It tests Bio::Sequence::Adapter through the interface class.
Bio::SQL
It has two kinds of unit test.
TestBiosqlIO class in ts_biosql.rb connects and accesses MySQL, so It can tests a execution environment to test whether Bio::SQL works.
tc_biosql.rb has only a require statement of 'tc_biosql', I'm not understand how to use it.
Does it need to test only the logics of the methods in Bio::SQL with the fake class of the database.?
Bio::GenBank
- Bio::NCBIDB::Common
- It is tested in Bio::NCBIDB::TestCommon. Bio::NCBIDBCommon class includes Bio::NCBIDB::Common. Instead of Bio::NCBIDB::Common, It is used in the unit test. This class has low coverage, because a sample entry used in it lacks a lot of fields. There are all the methods except for "locus" method,which is override in the child class.
Bio::GenBank
- its unit test tests the methods in Bio::GenBank, including the methods returning Bio::GenBank::Locus and Bio::Feature objects Should the sample file be simpler than now?
Bio::GenPept
- The coverage of this class is 100% It tests only the methods descripbed in the soruce class.(It dosen't test the inherited met hods from NCBIDB)
Bio::DDBJ
- I didn't write the unit test, since it has the same methods as Bio::GenBank. Bio::RefSeq
- I didn't write the unit test, since it has the same methods as Bio::GenBank.
Subscribe to:
Posts (Atom)