bio 1.2.1 → 1.3.0
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog +3421 -0
- data/KNOWN_ISSUES.rdoc +88 -0
- data/README.rdoc +252 -0
- data/README_DEV.rdoc +285 -0
- data/Rakefile +143 -0
- data/bin/bioruby +0 -0
- data/bin/br_biofetch.rb +0 -0
- data/bin/br_bioflat.rb +12 -1
- data/bin/br_biogetseq.rb +0 -0
- data/bin/br_pmfetch.rb +4 -3
- data/bioruby.gemspec +477 -0
- data/bioruby.gemspec.erb +117 -0
- data/doc/Changes-0.7.rd +7 -0
- data/doc/Changes-1.3.rdoc +239 -0
- data/doc/Tutorial.rd +296 -184
- data/doc/Tutorial.rd.html +1031 -0
- data/doc/Tutorial.rd.ja +111 -45
- data/doc/Tutorial.rd.ja.html +2225 -0
- data/doc/bioruby.css +281 -0
- data/extconf.rb +2 -0
- data/lib/bio.rb +29 -4
- data/lib/bio/appl/blast.rb +306 -121
- data/lib/bio/appl/blast/ddbj.rb +142 -0
- data/lib/bio/appl/blast/format0.rb +35 -25
- data/lib/bio/appl/blast/format8.rb +2 -2
- data/lib/bio/appl/blast/genomenet.rb +263 -0
- data/lib/bio/appl/blast/ncbioptions.rb +220 -0
- data/lib/bio/appl/blast/remote.rb +106 -0
- data/lib/bio/appl/blast/report.rb +260 -9
- data/lib/bio/appl/blast/rexml.rb +12 -5
- data/lib/bio/appl/blast/rpsblast.rb +277 -0
- data/lib/bio/appl/blast/wublast.rb +133 -12
- data/lib/bio/appl/blast/xmlparser.rb +35 -18
- data/lib/bio/appl/blat/report.rb +46 -5
- data/lib/bio/appl/emboss.rb +62 -13
- data/lib/bio/appl/fasta.rb +9 -11
- data/lib/bio/appl/genscan/report.rb +3 -3
- data/lib/bio/appl/hmmer.rb +1 -1
- data/lib/bio/appl/hmmer/report.rb +10 -10
- data/lib/bio/appl/paml/baseml.rb +95 -0
- data/lib/bio/appl/paml/baseml/report.rb +32 -0
- data/lib/bio/appl/paml/codeml.rb +242 -0
- data/lib/bio/appl/paml/codeml/rates.rb +67 -0
- data/lib/bio/appl/paml/codeml/report.rb +67 -0
- data/lib/bio/appl/paml/common.rb +348 -0
- data/lib/bio/appl/paml/common_report.rb +38 -0
- data/lib/bio/appl/paml/yn00.rb +103 -0
- data/lib/bio/appl/paml/yn00/report.rb +32 -0
- data/lib/bio/appl/psort.rb +2 -2
- data/lib/bio/appl/pts1.rb +5 -5
- data/lib/bio/appl/tmhmm/report.rb +10 -1
- data/lib/bio/command.rb +297 -41
- data/lib/bio/compat/features.rb +157 -0
- data/lib/bio/compat/references.rb +128 -0
- data/lib/bio/db/biosql/biosql_to_biosequence.rb +67 -0
- data/lib/bio/db/biosql/sequence.rb +508 -0
- data/lib/bio/db/embl/common.rb +28 -12
- data/lib/bio/db/embl/embl.rb +107 -9
- data/lib/bio/db/embl/embl_to_biosequence.rb +85 -0
- data/lib/bio/db/embl/format_embl.rb +190 -0
- data/lib/bio/db/embl/sptr.rb +15 -16
- data/lib/bio/db/fantom.rb +6 -8
- data/lib/bio/db/fasta.rb +10 -507
- data/lib/bio/db/fasta/defline.rb +532 -0
- data/lib/bio/db/fasta/fasta_to_biosequence.rb +63 -0
- data/lib/bio/db/fasta/format_fasta.rb +97 -0
- data/lib/bio/db/genbank/common.rb +25 -8
- data/lib/bio/db/genbank/format_genbank.rb +187 -0
- data/lib/bio/db/genbank/genbank.rb +36 -1
- data/lib/bio/db/genbank/genbank_to_biosequence.rb +86 -0
- data/lib/bio/db/gff.rb +1791 -119
- data/lib/bio/db/kegg/glycan.rb +2 -6
- data/lib/bio/db/lasergene.rb +3 -3
- data/lib/bio/db/medline.rb +4 -1
- data/lib/bio/db/newick.rb +10 -10
- data/lib/bio/db/pdb/chain.rb +6 -2
- data/lib/bio/db/pdb/pdb.rb +12 -3
- data/lib/bio/db/rebase.rb +7 -8
- data/lib/bio/db/soft.rb +3 -3
- data/lib/bio/feature.rb +1 -88
- data/lib/bio/io/biosql/biodatabase.rb +64 -0
- data/lib/bio/io/biosql/bioentry.rb +29 -0
- data/lib/bio/io/biosql/bioentry_dbxref.rb +11 -0
- data/lib/bio/io/biosql/bioentry_path.rb +12 -0
- data/lib/bio/io/biosql/bioentry_qualifier_value.rb +10 -0
- data/lib/bio/io/biosql/bioentry_reference.rb +10 -0
- data/lib/bio/io/biosql/bioentry_relationship.rb +10 -0
- data/lib/bio/io/biosql/biosequence.rb +11 -0
- data/lib/bio/io/biosql/comment.rb +7 -0
- data/lib/bio/io/biosql/config/database.yml +20 -0
- data/lib/bio/io/biosql/dbxref.rb +13 -0
- data/lib/bio/io/biosql/dbxref_qualifier_value.rb +12 -0
- data/lib/bio/io/biosql/location.rb +32 -0
- data/lib/bio/io/biosql/location_qualifier_value.rb +11 -0
- data/lib/bio/io/biosql/ontology.rb +10 -0
- data/lib/bio/io/biosql/reference.rb +9 -0
- data/lib/bio/io/biosql/seqfeature.rb +32 -0
- data/lib/bio/io/biosql/seqfeature_dbxref.rb +11 -0
- data/lib/bio/io/biosql/seqfeature_path.rb +11 -0
- data/lib/bio/io/biosql/seqfeature_qualifier_value.rb +20 -0
- data/lib/bio/io/biosql/seqfeature_relationship.rb +11 -0
- data/lib/bio/io/biosql/taxon.rb +12 -0
- data/lib/bio/io/biosql/taxon_name.rb +9 -0
- data/lib/bio/io/biosql/term.rb +27 -0
- data/lib/bio/io/biosql/term_dbxref.rb +11 -0
- data/lib/bio/io/biosql/term_path.rb +12 -0
- data/lib/bio/io/biosql/term_relationship.rb +13 -0
- data/lib/bio/io/biosql/term_relationship_term.rb +11 -0
- data/lib/bio/io/biosql/term_synonym.rb +10 -0
- data/lib/bio/io/das.rb +7 -7
- data/lib/bio/io/ddbjxml.rb +57 -0
- data/lib/bio/io/ensembl.rb +2 -2
- data/lib/bio/io/fetch.rb +28 -14
- data/lib/bio/io/flatfile.rb +17 -853
- data/lib/bio/io/flatfile/autodetection.rb +545 -0
- data/lib/bio/io/flatfile/buffer.rb +237 -0
- data/lib/bio/io/flatfile/index.rb +17 -7
- data/lib/bio/io/flatfile/indexer.rb +30 -12
- data/lib/bio/io/flatfile/splitter.rb +297 -0
- data/lib/bio/io/hinv.rb +442 -0
- data/lib/bio/io/keggapi.rb +2 -2
- data/lib/bio/io/ncbirest.rb +733 -0
- data/lib/bio/io/pubmed.rb +34 -80
- data/lib/bio/io/registry.rb +2 -2
- data/lib/bio/io/sql.rb +178 -357
- data/lib/bio/io/togows.rb +458 -0
- data/lib/bio/location.rb +106 -11
- data/lib/bio/pathway.rb +120 -14
- data/lib/bio/reference.rb +115 -101
- data/lib/bio/sequence.rb +164 -183
- data/lib/bio/sequence/adapter.rb +108 -0
- data/lib/bio/sequence/common.rb +22 -45
- data/lib/bio/sequence/compat.rb +2 -2
- data/lib/bio/sequence/dblink.rb +54 -0
- data/lib/bio/sequence/format.rb +254 -77
- data/lib/bio/sequence/format_raw.rb +23 -0
- data/lib/bio/shell.rb +3 -1
- data/lib/bio/shell/core.rb +2 -2
- data/lib/bio/shell/plugin/entry.rb +33 -4
- data/lib/bio/shell/plugin/ncbirest.rb +64 -0
- data/lib/bio/shell/plugin/togows.rb +40 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/bioruby_generator.rb +0 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/templates/_classes.rhtml +0 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/templates/_log.rhtml +0 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/templates/_methods.rhtml +0 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/templates/_modules.rhtml +0 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/templates/_variables.rhtml +0 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/templates/bioruby-bg.gif +0 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/templates/bioruby-gem.png +0 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/templates/bioruby-link.gif +0 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/templates/bioruby.css +0 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/templates/bioruby.rhtml +0 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/templates/bioruby_controller.rb +0 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/templates/bioruby_helper.rb +0 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/templates/commands.rhtml +0 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/templates/history.rhtml +0 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/templates/index.rhtml +0 -0
- data/lib/bio/shell/rails/vendor/plugins/{generators → bioruby/generators}/bioruby/templates/spinner.gif +0 -0
- data/lib/bio/tree.rb +4 -2
- data/lib/bio/util/color_scheme.rb +2 -2
- data/lib/bio/util/contingency_table.rb +2 -2
- data/lib/bio/util/restriction_enzyme.rb +2 -2
- data/lib/bio/util/restriction_enzyme/single_strand.rb +6 -5
- data/lib/bio/version.rb +25 -0
- data/rdoc.zsh +8 -0
- data/sample/any2fasta.rb +0 -0
- data/sample/biofetch.rb +0 -0
- data/sample/dbget +0 -0
- data/sample/demo_sequence.rb +158 -0
- data/sample/enzymes.rb +0 -0
- data/sample/fasta2tab.rb +0 -0
- data/sample/fastagrep.rb +72 -0
- data/sample/fastasort.rb +54 -0
- data/sample/fsplit.rb +0 -0
- data/sample/gb2fasta.rb +2 -3
- data/sample/gb2tab.rb +0 -0
- data/sample/gbtab2mysql.rb +0 -0
- data/sample/genes2nuc.rb +0 -0
- data/sample/genes2pep.rb +0 -0
- data/sample/genes2tab.rb +0 -0
- data/sample/genome2rb.rb +0 -0
- data/sample/genome2tab.rb +0 -0
- data/sample/goslim.rb +0 -0
- data/sample/gt2fasta.rb +0 -0
- data/sample/na2aa.rb +34 -0
- data/sample/pmfetch.rb +0 -0
- data/sample/pmsearch.rb +0 -0
- data/sample/ssearch2tab.rb +0 -0
- data/sample/tfastx2tab.rb +0 -0
- data/sample/vs-genes.rb +0 -0
- data/setup.rb +1596 -0
- data/test/data/blast/blastp-multi.m7 +188 -0
- data/test/data/command/echoarg2.bat +1 -0
- data/test/data/paml/codeml/control_file.txt +30 -0
- data/test/data/paml/codeml/output.txt +78 -0
- data/test/data/paml/codeml/rates +217 -0
- data/test/data/rpsblast/misc.rpsblast +193 -0
- data/test/data/soft/GDS100_partial.soft +0 -0
- data/test/data/soft/GSE3457_family_partial.soft +0 -0
- data/test/functional/bio/appl/test_pts1.rb +115 -0
- data/test/functional/bio/io/test_ensembl.rb +123 -80
- data/test/functional/bio/io/test_togows.rb +267 -0
- data/test/functional/bio/sequence/test_output_embl.rb +51 -0
- data/test/functional/bio/test_command.rb +301 -0
- data/test/runner.rb +17 -1
- data/test/unit/bio/appl/blast/test_ncbioptions.rb +112 -0
- data/test/unit/bio/appl/blast/test_report.rb +753 -35
- data/test/unit/bio/appl/blast/test_rpsblast.rb +398 -0
- data/test/unit/bio/appl/paml/codeml/test_rates.rb +45 -0
- data/test/unit/bio/appl/paml/codeml/test_report.rb +45 -0
- data/test/unit/bio/appl/paml/test_codeml.rb +174 -0
- data/test/unit/bio/appl/test_blast.rb +135 -4
- data/test/unit/bio/appl/test_fasta.rb +2 -2
- data/test/unit/bio/appl/test_pts1.rb +1 -64
- data/test/unit/bio/db/embl/test_common.rb +15 -15
- data/test/unit/bio/db/embl/test_embl.rb +4 -4
- data/test/unit/bio/db/embl/test_embl_rel89.rb +5 -5
- data/test/unit/bio/db/embl/test_embl_to_bioseq.rb +203 -0
- data/test/unit/bio/db/embl/test_sptr.rb +38 -1
- data/test/unit/bio/db/pdb/test_pdb.rb +2 -2
- data/test/unit/bio/db/test_gff.rb +1151 -25
- data/test/unit/bio/db/test_medline.rb +127 -0
- data/test/unit/bio/db/test_nexus.rb +5 -1
- data/test/unit/bio/db/test_prosite.rb +4 -4
- data/test/unit/bio/io/flatfile/test_autodetection.rb +375 -0
- data/test/unit/bio/io/flatfile/test_buffer.rb +251 -0
- data/test/unit/bio/io/flatfile/test_splitter.rb +369 -0
- data/test/unit/bio/io/test_ddbjxml.rb +8 -3
- data/test/unit/bio/io/test_fastacmd.rb +5 -5
- data/test/unit/bio/io/test_flatfile.rb +357 -106
- data/test/unit/bio/io/test_soapwsdl.rb +2 -2
- data/test/unit/bio/io/test_togows.rb +161 -0
- data/test/unit/bio/sequence/test_common.rb +210 -11
- data/test/unit/bio/sequence/test_compat.rb +3 -3
- data/test/unit/bio/sequence/test_dblink.rb +58 -0
- data/test/unit/bio/sequence/test_na.rb +2 -2
- data/test/unit/bio/test_command.rb +111 -50
- data/test/unit/bio/test_feature.rb +29 -1
- data/test/unit/bio/test_location.rb +566 -6
- data/test/unit/bio/test_pathway.rb +91 -65
- data/test/unit/bio/test_reference.rb +67 -13
- data/test/unit/bio/util/restriction_enzyme/analysis/test_calculated_cuts.rb +3 -3
- data/test/unit/bio/util/restriction_enzyme/analysis/test_cut_ranges.rb +3 -3
- data/test/unit/bio/util/restriction_enzyme/analysis/test_sequence_range.rb +3 -3
- data/test/unit/bio/util/restriction_enzyme/double_stranded/test_aligned_strands.rb +4 -3
- data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_location_pair.rb +3 -3
- data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_location_pair_in_enzyme_notation.rb +3 -3
- data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_locations.rb +3 -3
- data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_locations_in_enzyme_notation.rb +3 -3
- data/test/unit/bio/util/restriction_enzyme/single_strand/test_cut_locations_in_enzyme_notation.rb +3 -3
- data/test/unit/bio/util/restriction_enzyme/test_analysis.rb +3 -3
- data/test/unit/bio/util/restriction_enzyme/test_cut_symbol.rb +4 -4
- data/test/unit/bio/util/restriction_enzyme/test_double_stranded.rb +3 -3
- data/test/unit/bio/util/restriction_enzyme/test_single_strand.rb +3 -3
- data/test/unit/bio/util/restriction_enzyme/test_single_strand_complement.rb +3 -3
- data/test/unit/bio/util/restriction_enzyme/test_string_formatting.rb +3 -3
- data/test/unit/bio/util/test_restriction_enzyme.rb +3 -3
- metadata +202 -167
- data/test/unit/bio/appl/blast/test_xmlparser.rb +0 -388
@@ -0,0 +1,127 @@
|
|
1
|
+
#
|
2
|
+
# test/unit/bio/db/test_medline.rb - Unit test for Bio::MEDLINE
|
3
|
+
#
|
4
|
+
# Copyright:: Copyright (C) 2008 Collaborative Drug Discovery, Inc. <github@collaborativedrug.com>
|
5
|
+
# License:: The Ruby License
|
6
|
+
#
|
7
|
+
|
8
|
+
require 'pathname'
|
9
|
+
libpath = Pathname.new(File.join(File.dirname(__FILE__), ['..'] * 4, 'lib')).cleanpath.to_s
|
10
|
+
$:.unshift(libpath) unless $:.include?(libpath)
|
11
|
+
|
12
|
+
require 'test/unit'
|
13
|
+
require 'bio/db/medline'
|
14
|
+
|
15
|
+
module Bio
|
16
|
+
class TestMEDLINE < Test::Unit::TestCase
|
17
|
+
def test_authors
|
18
|
+
assert_equal(["Kane, D. W.",
|
19
|
+
"Hohman, M. M.",
|
20
|
+
"Cerami, E. G.",
|
21
|
+
"McCormick, M. W.",
|
22
|
+
"Kuhlmann, K. F.",
|
23
|
+
"Byrd, J. A."], Bio::MEDLINE.new(AGILE).authors)
|
24
|
+
end
|
25
|
+
|
26
|
+
def test_authors_with_suffix
|
27
|
+
assert_equal(["Jenkins, F. A. Jr"], Bio::MEDLINE.new("AU - Jenkins FA Jr").authors)
|
28
|
+
end
|
29
|
+
|
30
|
+
def test_authors_with_last_name_all_caps
|
31
|
+
assert_equal(["GARTLER, S. M."], Bio::MEDLINE.new("AU - GARTLER SM").authors)
|
32
|
+
end
|
33
|
+
|
34
|
+
AGILE = <<-EOMED
|
35
|
+
PMID- 16734914
|
36
|
+
OWN - NLM
|
37
|
+
STAT- MEDLINE
|
38
|
+
DA - 20060811
|
39
|
+
DCOM- 20060928
|
40
|
+
LR - 20081120
|
41
|
+
IS - 1471-2105 (Electronic)
|
42
|
+
VI - 7
|
43
|
+
DP - 2006
|
44
|
+
TI - Agile methods in biomedical software development: a multi-site experience
|
45
|
+
report.
|
46
|
+
PG - 273
|
47
|
+
AB - BACKGROUND: Agile is an iterative approach to software development that
|
48
|
+
relies on strong collaboration and automation to keep pace with dynamic
|
49
|
+
environments. We have successfully used agile development approaches to
|
50
|
+
create and maintain biomedical software, including software for
|
51
|
+
bioinformatics. This paper reports on a qualitative study of our
|
52
|
+
experiences using these methods. RESULTS: We have found that agile methods
|
53
|
+
are well suited to the exploratory and iterative nature of scientific
|
54
|
+
inquiry. They provide a robust framework for reproducing scientific
|
55
|
+
results and for developing clinical support systems. The agile development
|
56
|
+
approach also provides a model for collaboration between software
|
57
|
+
engineers and researchers. We present our experience using agile
|
58
|
+
methodologies in projects at six different biomedical software development
|
59
|
+
organizations. The organizations include academic, commercial and
|
60
|
+
government development teams, and included both bioinformatics and
|
61
|
+
clinical support applications. We found that agile practices were a match
|
62
|
+
for the needs of our biomedical projects and contributed to the success of
|
63
|
+
our organizations. CONCLUSION: We found that the agile development
|
64
|
+
approach was a good fit for our organizations, and that these practices
|
65
|
+
should be applicable and valuable to other biomedical software development
|
66
|
+
efforts. Although we found differences in how agile methods were used, we
|
67
|
+
were also able to identify a set of core practices that were common to all
|
68
|
+
of the groups, and that could be a focus for others seeking to adopt these
|
69
|
+
methods.
|
70
|
+
AD - SRA International, 4300 Fair Lakes Court, Fairfax, VA 22033, USA.
|
71
|
+
david_kane@sra.com
|
72
|
+
FAU - Kane, David W
|
73
|
+
AU - Kane DW
|
74
|
+
FAU - Hohman, Moses M
|
75
|
+
AU - Hohman MM
|
76
|
+
FAU - Cerami, Ethan G
|
77
|
+
AU - Cerami EG
|
78
|
+
FAU - McCormick, Michael W
|
79
|
+
AU - McCormick MW
|
80
|
+
FAU - Kuhlmann, Karl F
|
81
|
+
AU - Kuhlmann KF
|
82
|
+
FAU - Byrd, Jeff A
|
83
|
+
AU - Byrd JA
|
84
|
+
LA - eng
|
85
|
+
GR - U01 MH061915-03/MH/NIMH NIH HHS/United States
|
86
|
+
GR - U01 MH061915-04/MH/NIMH NIH HHS/United States
|
87
|
+
GR - U01 MH61915/MH/NIMH NIH HHS/United States
|
88
|
+
PT - Journal Article
|
89
|
+
PT - Research Support, N.I.H., Extramural
|
90
|
+
PT - Research Support, Non-U.S. Gov't
|
91
|
+
DEP - 20060530
|
92
|
+
PL - England
|
93
|
+
TA - BMC Bioinformatics
|
94
|
+
JT - BMC bioinformatics
|
95
|
+
JID - 100965194
|
96
|
+
SB - IM
|
97
|
+
MH - Algorithms
|
98
|
+
MH - Automation
|
99
|
+
MH - Computational Biology/*methods
|
100
|
+
MH - Computers
|
101
|
+
MH - Database Management Systems
|
102
|
+
MH - Databases, Genetic
|
103
|
+
MH - Diffusion of Innovation
|
104
|
+
MH - Hospital Information Systems
|
105
|
+
MH - Hospitals
|
106
|
+
MH - Humans
|
107
|
+
MH - Medical Informatics
|
108
|
+
MH - Multicenter Studies as Topic
|
109
|
+
MH - Programming Languages
|
110
|
+
MH - Software
|
111
|
+
MH - *Software Design
|
112
|
+
MH - Systems Integration
|
113
|
+
PMC - PMC1539031
|
114
|
+
OID - NLM: PMC1539031
|
115
|
+
EDAT- 2006/06/01 09:00
|
116
|
+
MHDA- 2006/09/29 09:00
|
117
|
+
CRDT- 2006/06/01 09:00
|
118
|
+
PHST- 2005/11/17 [received]
|
119
|
+
PHST- 2006/05/30 [accepted]
|
120
|
+
PHST- 2006/05/30 [aheadofprint]
|
121
|
+
AID - 1471-2105-7-273 [pii]
|
122
|
+
AID - 10.1186/1471-2105-7-273 [doi]
|
123
|
+
PST - epublish
|
124
|
+
SO - BMC Bioinformatics. 2006 May 30;7:273.
|
125
|
+
EOMED
|
126
|
+
end
|
127
|
+
end
|
@@ -5,13 +5,17 @@
|
|
5
5
|
#
|
6
6
|
# License:: The Ruby License
|
7
7
|
#
|
8
|
-
# $Id
|
8
|
+
# $Id:$
|
9
9
|
#
|
10
10
|
# == Description
|
11
11
|
#
|
12
12
|
# This file contains unit tests for Bio::Nexus.
|
13
13
|
#
|
14
14
|
|
15
|
+
require 'pathname'
|
16
|
+
libpath = Pathname.new(File.join(File.dirname(__FILE__), ['..'] * 4, 'lib')).cleanpath.to_s
|
17
|
+
$:.unshift(libpath) unless $:.include?(libpath)
|
18
|
+
|
15
19
|
require 'test/unit'
|
16
20
|
require 'bio/db/nexus'
|
17
21
|
|
@@ -1233,7 +1233,7 @@ module Bio
|
|
1233
1233
|
"P11616",
|
1234
1234
|
"P23275",
|
1235
1235
|
"Q01338"]
|
1236
|
-
assert_equal(data, @obj.list_truepositive)
|
1236
|
+
assert_equal(data.sort, @obj.list_truepositive.sort)
|
1237
1237
|
end
|
1238
1238
|
|
1239
1239
|
def test_list_falsenegative
|
@@ -1301,7 +1301,7 @@ module Bio
|
|
1301
1301
|
"P77933",
|
1302
1302
|
"P34529",
|
1303
1303
|
"Q00126"]
|
1304
|
-
assert_equal(data, @obj.list_falsenegative)
|
1304
|
+
assert_equal(data.sort, @obj.list_falsenegative.sort)
|
1305
1305
|
end
|
1306
1306
|
|
1307
1307
|
def test_list_falsepositive
|
@@ -1353,7 +1353,7 @@ module Bio
|
|
1353
1353
|
"Q95137",
|
1354
1354
|
"Q62953",
|
1355
1355
|
"Q95195"]
|
1356
|
-
assert_equal(data, @obj.list_falsepositive)
|
1356
|
+
assert_equal(data.sort, @obj.list_falsepositive.sort)
|
1357
1357
|
end
|
1358
1358
|
|
1359
1359
|
def test_list_potentialhit
|
@@ -1405,7 +1405,7 @@ module Bio
|
|
1405
1405
|
"Q95137",
|
1406
1406
|
"Q62953",
|
1407
1407
|
"Q95195"]
|
1408
|
-
assert_equal(data, @obj.list_potentialhit)
|
1408
|
+
assert_equal(data.sort, @obj.list_potentialhit.sort)
|
1409
1409
|
end
|
1410
1410
|
|
1411
1411
|
def test_list_unknown
|
@@ -0,0 +1,375 @@
|
|
1
|
+
#
|
2
|
+
# = test/unit/bio/io/flatfile/test_autodetection.rb - unit test for Bio::FlatFile::AutoDetect
|
3
|
+
#
|
4
|
+
# Copyright (C) 2006 Naohisa Goto <ng@bioruby.org>
|
5
|
+
#
|
6
|
+
# License:: The Ruby License
|
7
|
+
#
|
8
|
+
# $Id: test_flatfile.rb,v 1.2 2007/04/05 23:35:43 trevor Exp $
|
9
|
+
#
|
10
|
+
|
11
|
+
require 'pathname'
|
12
|
+
libpath = Pathname.new(File.join(File.dirname(__FILE__), ['..'] * 5, 'lib')).cleanpath.to_s
|
13
|
+
$:.unshift(libpath) unless $:.include?(libpath)
|
14
|
+
|
15
|
+
require 'test/unit'
|
16
|
+
require 'bio'
|
17
|
+
|
18
|
+
module Bio::TestFlatFile
|
19
|
+
|
20
|
+
# testing default AutoDetect's behavior
|
21
|
+
class TestDefaultAutoDetect < Test::Unit::TestCase
|
22
|
+
|
23
|
+
bioruby_root = Pathname.new(File.join(File.dirname(__FILE__),
|
24
|
+
['..'] * 5)).cleanpath.to_s
|
25
|
+
TestDataPath = Pathname.new(File.join(bioruby_root,
|
26
|
+
'test', 'data')).cleanpath.to_s
|
27
|
+
|
28
|
+
def setup
|
29
|
+
@ad = Bio::FlatFile::AutoDetect.default
|
30
|
+
end
|
31
|
+
|
32
|
+
def test_genbank
|
33
|
+
# modified from GenBank AB009803.1
|
34
|
+
# (E-mail and telephone/FAX numbers are removed from original entry)
|
35
|
+
text = <<__END_OF_TEXT__
|
36
|
+
LOCUS AB009803 81 bp DNA linear PRI 14-APR-2000
|
37
|
+
DEFINITION Homo sapiens gene for osteonidogen, intron 4.
|
38
|
+
ACCESSION AB009803
|
39
|
+
VERSION AB009803.1 GI:2749808
|
40
|
+
KEYWORDS osteonidogen.
|
41
|
+
SOURCE Homo sapiens (human)
|
42
|
+
ORGANISM Homo sapiens
|
43
|
+
Eukaryota; Metazoa; Chordata; Craniata; Vertebrata; Euteleostomi;
|
44
|
+
Mammalia; Eutheria; Euarchontoglires; Primates; Haplorrhini;
|
45
|
+
Catarrhini; Hominidae; Homo.
|
46
|
+
REFERENCE 1
|
47
|
+
AUTHORS Ohno,I., Okubo,K. and Matsubara,K.
|
48
|
+
TITLE Human osteonidogen gene: intron-exon junctions and chromosomal
|
49
|
+
localization
|
50
|
+
JOURNAL Published Only in Database (1998)
|
51
|
+
REFERENCE 2 (bases 1 to 81)
|
52
|
+
AUTHORS Ohno,I., Okubo,K. and Matsubara,K.
|
53
|
+
TITLE Direct Submission
|
54
|
+
JOURNAL Submitted (13-DEC-1997) Ikko Ohno, Institute for Molecular and
|
55
|
+
Cellular Biology, Osaka University, Molecular Genetics; 1-3
|
56
|
+
Yamada-oka, Suita, Osaka 565, Japan
|
57
|
+
FEATURES Location/Qualifiers
|
58
|
+
source 1..81
|
59
|
+
/organism="Homo sapiens"
|
60
|
+
/mol_type="genomic DNA"
|
61
|
+
/db_xref="taxon:9606"
|
62
|
+
/chromosome="14"
|
63
|
+
/map="14q21-22"
|
64
|
+
/clone_lib="Lambda FIX II STRATAGENE"
|
65
|
+
intron 1..81
|
66
|
+
/number=4
|
67
|
+
ORIGIN
|
68
|
+
1 gtaggatctc ccctccagat tctgatctgt cctccccctt gcatccaaca cctacttatt
|
69
|
+
61 ggccattcta tcctgaaaca g
|
70
|
+
//
|
71
|
+
__END_OF_TEXT__
|
72
|
+
assert_equal(Bio::GenBank, @ad.autodetect(text))
|
73
|
+
end
|
74
|
+
|
75
|
+
def test_genpept
|
76
|
+
# modified from: NCBI: P04637.2 GI:129369
|
77
|
+
# (to shorten data, many elements are omitted)
|
78
|
+
text = <<__END_OF_TEXT__
|
79
|
+
LOCUS P04637 393 aa linear PRI 01-JUL-2008
|
80
|
+
DEFINITION Cellular tumor antigen p53 (Tumor suppressor p53) (Phosphoprotein
|
81
|
+
p53) (Antigen NY-CO-13).
|
82
|
+
ACCESSION P04637
|
83
|
+
VERSION P04637.2 GI:129369
|
84
|
+
KEYWORDS 3D-structure; Acetylation; Activator; Alternative splicing;
|
85
|
+
Anti-oncogene; Apoptosis; Cell cycle; Covalent protein-RNA linkage;
|
86
|
+
Cytoplasm; Disease mutation; DNA-binding; Endoplasmic reticulum;
|
87
|
+
Glycoprotein; Host-virus interaction; Li-Fraumeni syndrome;
|
88
|
+
Metal-binding; Methylation; Nucleus; Phosphoprotein; Polymorphism;
|
89
|
+
Transcription; Transcription regulation; Ubl conjugation; Zinc.
|
90
|
+
SOURCE Homo sapiens (human)
|
91
|
+
ORGANISM Homo sapiens
|
92
|
+
Eukaryota; Metazoa; Chordata; Craniata; Vertebrata; Euteleostomi;
|
93
|
+
Mammalia; Eutheria; Euarchontoglires; Primates; Haplorrhini;
|
94
|
+
Catarrhini; Hominidae; Homo.
|
95
|
+
REFERENCE 1 (residues 1 to 393)
|
96
|
+
AUTHORS Zakut-Houri,R., Bienz-Tadmor,B., Givol,D. and Oren,M.
|
97
|
+
TITLE Human p53 cellular tumor antigen: cDNA sequence and expression in
|
98
|
+
COS cells
|
99
|
+
JOURNAL EMBO J. 4 (5), 1251-1255 (1985)
|
100
|
+
PUBMED 4006916
|
101
|
+
REMARK NUCLEOTIDE SEQUENCE [MRNA].
|
102
|
+
FEATURES Location/Qualifiers
|
103
|
+
source 1..393
|
104
|
+
/organism="Homo sapiens"
|
105
|
+
/db_xref="taxon:9606"
|
106
|
+
gene 1..393
|
107
|
+
/gene="TP53"
|
108
|
+
/note="synonym: P53"
|
109
|
+
Protein 1..393
|
110
|
+
/gene="TP53"
|
111
|
+
/product="Cellular tumor antigen p53"
|
112
|
+
ORIGIN
|
113
|
+
1 meepqsdpsv epplsqetfs dlwkllpenn vlsplpsqam ddlmlspddi eqwftedpgp
|
114
|
+
61 deaprmpeaa ppvapapaap tpaapapaps wplsssvpsq ktyqgsygfr lgflhsgtak
|
115
|
+
121 svtctyspal nkmfcqlakt cpvqlwvdst pppgtrvram aiykqsqhmt evvrrcphhe
|
116
|
+
181 rcsdsdglap pqhlirvegn lrveylddrn tfrhsvvvpy eppevgsdct tihynymcns
|
117
|
+
241 scmggmnrrp iltiitleds sgnllgrnsf evrvcacpgr drrteeenlr kkgephhelp
|
118
|
+
301 pgstkralpn ntssspqpkk kpldgeyftl qirgrerfem frelnealel kdaqagkepg
|
119
|
+
361 gsrahsshlk skkgqstsrh kklmfktegp dsd
|
120
|
+
//
|
121
|
+
__END_OF_TEXT__
|
122
|
+
|
123
|
+
assert_equal(Bio::GenPept, @ad.autodetect(text))
|
124
|
+
end
|
125
|
+
|
126
|
+
def test_medline
|
127
|
+
# PMID: 13054692
|
128
|
+
text = <<__END_OF_TEXT__
|
129
|
+
PMID- 13054692
|
130
|
+
OWN - NLM
|
131
|
+
STAT- MEDLINE
|
132
|
+
DA - 19531201
|
133
|
+
DCOM- 20030501
|
134
|
+
LR - 20061115
|
135
|
+
PUBM- Print
|
136
|
+
IS - 0028-0836 (Print)
|
137
|
+
VI - 171
|
138
|
+
IP - 4356
|
139
|
+
DP - 1953 Apr 25
|
140
|
+
TI - Molecular structure of nucleic acids; a structure for deoxyribose nucleic acid.
|
141
|
+
PG - 737-8
|
142
|
+
FAU - WATSON, J D
|
143
|
+
AU - WATSON JD
|
144
|
+
FAU - CRICK, F H
|
145
|
+
AU - CRICK FH
|
146
|
+
LA - eng
|
147
|
+
PT - Journal Article
|
148
|
+
PL - Not Available
|
149
|
+
TA - Nature
|
150
|
+
JT - Nature
|
151
|
+
JID - 0410462
|
152
|
+
RN - 0 (Nucleic Acids)
|
153
|
+
SB - OM
|
154
|
+
MH - *Nucleic Acids
|
155
|
+
OID - CLML: 5324:25254:447
|
156
|
+
OTO - NLM
|
157
|
+
OT - *NUCLEIC ACIDS
|
158
|
+
EDAT- 1953/04/25
|
159
|
+
MHDA- 1953/04/25 00:01
|
160
|
+
PST - ppublish
|
161
|
+
SO - Nature. 1953 Apr 25;171(4356):737-8.
|
162
|
+
__END_OF_TEXT__
|
163
|
+
|
164
|
+
assert_equal(Bio::MEDLINE, @ad.autodetect(text))
|
165
|
+
end
|
166
|
+
|
167
|
+
def test_embl_oldrelease
|
168
|
+
fn = File.join(TestDataPath, 'embl', 'AB090716.embl')
|
169
|
+
text = File.read(fn)
|
170
|
+
assert_equal(Bio::EMBL, @ad.autodetect(text))
|
171
|
+
end
|
172
|
+
|
173
|
+
def test_embl
|
174
|
+
fn = File.join(TestDataPath, 'embl', 'AB090716.embl.rel89')
|
175
|
+
text = File.read(fn)
|
176
|
+
assert_equal(Bio::EMBL, @ad.autodetect(text))
|
177
|
+
end
|
178
|
+
|
179
|
+
def test_sptr
|
180
|
+
fn = File.join(TestDataPath, 'uniprot', 'p53_human.uniprot')
|
181
|
+
text = File.read(fn)
|
182
|
+
assert_equal(Bio::SPTR, @ad.autodetect(text))
|
183
|
+
end
|
184
|
+
|
185
|
+
def test_prosite
|
186
|
+
fn = File.join(TestDataPath, 'prosite', 'prosite.dat')
|
187
|
+
text = File.read(fn)
|
188
|
+
assert_equal(Bio::PROSITE, @ad.autodetect(text))
|
189
|
+
end
|
190
|
+
|
191
|
+
def test_transfac
|
192
|
+
# Dummy data; Generated from random data
|
193
|
+
text = <<__END_OF_TEXT__
|
194
|
+
AC M99999
|
195
|
+
XX
|
196
|
+
ID V$XXXX_99
|
197
|
+
XX
|
198
|
+
DT 13.01.98 (created); ewi.
|
199
|
+
DT 31.12.99 (updated); ewi.
|
200
|
+
XX
|
201
|
+
NA XXXX
|
202
|
+
XX
|
203
|
+
DE example gene protein
|
204
|
+
XX
|
205
|
+
BF T99998; XXXX; Species: human, Homo sapiens.
|
206
|
+
BF T99999; XXXX; Species: mouse, Mus musculus.
|
207
|
+
XX
|
208
|
+
P0 A C G T
|
209
|
+
01 1 2 2 2 N
|
210
|
+
02 0 2 2 3 N
|
211
|
+
03 1 1 5 0 G
|
212
|
+
04 3 1 1 2 N
|
213
|
+
05 7 0 0 0 A
|
214
|
+
06 2 0 1 4 W
|
215
|
+
07 0 1 6 0 G
|
216
|
+
08 0 3 0 4 Y
|
217
|
+
09 6 1 0 0 A
|
218
|
+
10 1 1 0 5 T
|
219
|
+
XX
|
220
|
+
BA 7 functional elements in 3 genes
|
221
|
+
XX
|
222
|
+
CC compiled sequences
|
223
|
+
XX
|
224
|
+
RN [1]
|
225
|
+
RA Anonymou S., Whoam I.
|
226
|
+
RT Example article title for XXXX
|
227
|
+
RL J. Example. 99:990-999 (1999).
|
228
|
+
__END_OF_TEXT__
|
229
|
+
|
230
|
+
assert_equal(Bio::TRANSFAC, @ad.autodetect(text))
|
231
|
+
end
|
232
|
+
|
233
|
+
def test_aaindex1
|
234
|
+
fn = File.join(TestDataPath, 'aaindex', 'PRAM900102')
|
235
|
+
text = File.read(fn)
|
236
|
+
assert_equal(Bio::AAindex1, @ad.autodetect(text))
|
237
|
+
end
|
238
|
+
|
239
|
+
def test_aaindex2
|
240
|
+
fn = File.join(TestDataPath, 'aaindex', 'DAYM780301')
|
241
|
+
text = File.read(fn)
|
242
|
+
assert_equal(Bio::AAindex2, @ad.autodetect(text))
|
243
|
+
end
|
244
|
+
|
245
|
+
# def test_litdb
|
246
|
+
# end
|
247
|
+
|
248
|
+
# def test_brite
|
249
|
+
# end
|
250
|
+
|
251
|
+
# def test_orthology
|
252
|
+
# end
|
253
|
+
|
254
|
+
# def test_drug
|
255
|
+
# end
|
256
|
+
|
257
|
+
# def test_glycan
|
258
|
+
# end
|
259
|
+
|
260
|
+
# def test_enzyme
|
261
|
+
# end
|
262
|
+
|
263
|
+
# def test_compound
|
264
|
+
# end
|
265
|
+
|
266
|
+
# def test_reaction
|
267
|
+
# end
|
268
|
+
|
269
|
+
# def test_genes
|
270
|
+
# end
|
271
|
+
|
272
|
+
# def test_genome
|
273
|
+
# end
|
274
|
+
|
275
|
+
def test_maxml_cluster
|
276
|
+
# dummy empty data
|
277
|
+
text = <<__END_OF_TEXT__
|
278
|
+
<?xml version="1.0"?>
|
279
|
+
<!DOCTYPE maxml-clusters SYSTEM "http://fantom.gsc.riken.go.jp/maxml/maxml.dtd"><maxml-clusters>
|
280
|
+
</maxml-clusters>
|
281
|
+
__END_OF_TEXT__
|
282
|
+
assert_equal(Bio::FANTOM::MaXML::Cluster, @ad.autodetect(text))
|
283
|
+
end
|
284
|
+
|
285
|
+
def test_maxml_sequence
|
286
|
+
# dummy empty data
|
287
|
+
text = <<__END_OF_TEXT__
|
288
|
+
<?xml version="1.0"?>
|
289
|
+
<!DOCTYPE maxml-sequences SYSTEM "http://fantom.gsc.riken.go.jp/maxml/maxml.dtd">
|
290
|
+
<maxml-sequences>
|
291
|
+
</maxml-sequences>
|
292
|
+
__END_OF_TEXT__
|
293
|
+
assert_equal(Bio::FANTOM::MaXML::Sequence, @ad.autodetect(text))
|
294
|
+
end
|
295
|
+
|
296
|
+
# def test_pdb
|
297
|
+
# end
|
298
|
+
|
299
|
+
# def test_chemicalcomponent
|
300
|
+
# end
|
301
|
+
|
302
|
+
# def test_clustal
|
303
|
+
# end
|
304
|
+
|
305
|
+
# def test_gcg_msf
|
306
|
+
# end
|
307
|
+
|
308
|
+
# def test_gcg_seq
|
309
|
+
# end
|
310
|
+
|
311
|
+
def test_blastxml
|
312
|
+
fn = File.join(TestDataPath, 'blast', '2.2.15.blastp.m7')
|
313
|
+
text = File.read(fn)
|
314
|
+
assert_equal(Bio::Blast::Report, @ad.autodetect(text))
|
315
|
+
end
|
316
|
+
|
317
|
+
# def test_wublast
|
318
|
+
# end
|
319
|
+
|
320
|
+
# def test_wutblast
|
321
|
+
# end
|
322
|
+
|
323
|
+
def test_blast
|
324
|
+
fn = File.join(TestDataPath, 'blast', 'b0002.faa.m0')
|
325
|
+
text = File.read(fn)
|
326
|
+
assert_equal(Bio::Blast::Default::Report, @ad.autodetect(text))
|
327
|
+
end
|
328
|
+
|
329
|
+
# def test_tblast
|
330
|
+
# end
|
331
|
+
|
332
|
+
# def test_blat
|
333
|
+
# end
|
334
|
+
|
335
|
+
# def test_spidey
|
336
|
+
# end
|
337
|
+
|
338
|
+
def test_hmmer
|
339
|
+
fn = File.join(TestDataPath, 'HMMER', 'hmmpfam.out')
|
340
|
+
text = File.read(fn)
|
341
|
+
assert_equal(Bio::HMMER::Report, @ad.autodetect(text))
|
342
|
+
|
343
|
+
fn = File.join(TestDataPath, 'HMMER', 'hmmsearch.out')
|
344
|
+
text = File.read(fn)
|
345
|
+
assert_equal(Bio::HMMER::Report, @ad.autodetect(text))
|
346
|
+
end
|
347
|
+
|
348
|
+
# def test_sim4
|
349
|
+
# end
|
350
|
+
|
351
|
+
def test_fastaformat
|
352
|
+
fn = File.join(TestDataPath, 'fasta', 'example1.txt')
|
353
|
+
text = File.read(fn)
|
354
|
+
assert_equal(Bio::FastaFormat, @ad.autodetect(text))
|
355
|
+
|
356
|
+
fn = File.join(TestDataPath, 'fasta', 'example2.txt')
|
357
|
+
text = File.read(fn)
|
358
|
+
assert_equal(Bio::FastaFormat, @ad.autodetect(text))
|
359
|
+
end
|
360
|
+
|
361
|
+
def test_fastanumericformat
|
362
|
+
text = <<__END_OF_TEXT__
|
363
|
+
>sample
|
364
|
+
30 21 16 11 8 6 3 34 28 34 28 28 35 28 28 37 33 15 27 28 28
|
365
|
+
27 37 33 17 27 27 28 28 33 26 33 26 28 27 37 33 15 27 26 27
|
366
|
+
28 37 33 16 34 26 27 33 26 28 33 25 28 28 38 34 23 13 2
|
367
|
+
__END_OF_TEXT__
|
368
|
+
|
369
|
+
assert_equal(Bio::FastaNumericFormat, @ad.autodetect(text))
|
370
|
+
end
|
371
|
+
|
372
|
+
end #class TestDefaultAutoDetect
|
373
|
+
|
374
|
+
end #module Bio::TestFlatFile
|
375
|
+
|