rbbt-util 5.43.0 → 5.44.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/rbbt/association/util.rb +1 -1
- data/lib/rbbt/hpc/batch.rb +19 -17
- data/lib/rbbt/tsv/accessor.rb +6 -11
- data/lib/rbbt/tsv/dumper.rb +21 -10
- data/lib/rbbt/tsv/index.rb +2 -1
- data/lib/rbbt/util/misc/math.rb +0 -1
- data/lib/rbbt/util/open.rb +1 -1
- data/lib/rbbt/workflow/step/info.rb +1 -0
- data/lib/rbbt/workflow/step.rb +2 -1
- data/python/rbbt/__init__.py +2 -2
- data/share/rbbt_commands/workflow/task +1 -1
- metadata +4 -220
- data/test/rbbt/annotations/test_util.rb +0 -43
- data/test/rbbt/association/test_database.rb +0 -87
- data/test/rbbt/association/test_index.rb +0 -127
- data/test/rbbt/association/test_item.rb +0 -15
- data/test/rbbt/association/test_open.rb +0 -63
- data/test/rbbt/association/test_util.rb +0 -108
- data/test/rbbt/entity/test_identifiers.rb +0 -34
- data/test/rbbt/hpc/orchestrate/test_batches.rb +0 -70
- data/test/rbbt/hpc/orchestrate/test_chains.rb +0 -108
- data/test/rbbt/hpc/orchestrate/test_rules.rb +0 -59
- data/test/rbbt/hpc/test_batch.rb +0 -64
- data/test/rbbt/hpc/test_hpc_test_workflows.rb +0 -0
- data/test/rbbt/hpc/test_orchestrate.rb +0 -144
- data/test/rbbt/hpc/test_pbs.rb +0 -43
- data/test/rbbt/hpc/test_slurm.rb +0 -28
- data/test/rbbt/knowledge_base/test_enrichment.rb +0 -50
- data/test/rbbt/knowledge_base/test_entity.rb +0 -62
- data/test/rbbt/knowledge_base/test_query.rb +0 -46
- data/test/rbbt/knowledge_base/test_registry.rb +0 -74
- data/test/rbbt/knowledge_base/test_syndicate.rb +0 -48
- data/test/rbbt/knowledge_base/test_traverse.rb +0 -133
- data/test/rbbt/persist/test_tsv.rb +0 -88
- data/test/rbbt/persist/tsv/test_cdb.rb +0 -18
- data/test/rbbt/persist/tsv/test_kyotocabinet.rb +0 -27
- data/test/rbbt/persist/tsv/test_leveldb.rb +0 -18
- data/test/rbbt/persist/tsv/test_lmdb.rb +0 -20
- data/test/rbbt/persist/tsv/test_sharder.rb +0 -164
- data/test/rbbt/persist/tsv/test_tokyocabinet.rb +0 -262
- data/test/rbbt/resource/test_path.rb +0 -49
- data/test/rbbt/test_annotations.rb +0 -167
- data/test/rbbt/test_association.rb +0 -103
- data/test/rbbt/test_entity.rb +0 -252
- data/test/rbbt/test_fix_width_table.rb +0 -135
- data/test/rbbt/test_knowledge_base.rb +0 -226
- data/test/rbbt/test_monitor.rb +0 -11
- data/test/rbbt/test_packed_index.rb +0 -68
- data/test/rbbt/test_persist.rb +0 -85
- data/test/rbbt/test_resource.rb +0 -110
- data/test/rbbt/test_tsv.rb +0 -669
- data/test/rbbt/test_workflow.rb +0 -609
- data/test/rbbt/tsv/parallel/test_through.rb +0 -40
- data/test/rbbt/tsv/parallel/test_traverse.rb +0 -456
- data/test/rbbt/tsv/test_accessor.rb +0 -319
- data/test/rbbt/tsv/test_attach.rb +0 -715
- data/test/rbbt/tsv/test_change_id.rb +0 -61
- data/test/rbbt/tsv/test_csv.rb +0 -49
- data/test/rbbt/tsv/test_excel.rb +0 -171
- data/test/rbbt/tsv/test_field_index.rb +0 -19
- data/test/rbbt/tsv/test_filter.rb +0 -187
- data/test/rbbt/tsv/test_index.rb +0 -308
- data/test/rbbt/tsv/test_manipulate.rb +0 -334
- data/test/rbbt/tsv/test_marshal.rb +0 -24
- data/test/rbbt/tsv/test_matrix.rb +0 -20
- data/test/rbbt/tsv/test_parallel.rb +0 -7
- data/test/rbbt/tsv/test_parser.rb +0 -101
- data/test/rbbt/tsv/test_stream.rb +0 -253
- data/test/rbbt/tsv/test_util.rb +0 -52
- data/test/rbbt/util/R/test_eval.rb +0 -43
- data/test/rbbt/util/R/test_model.rb +0 -128
- data/test/rbbt/util/R/test_plot.rb +0 -38
- data/test/rbbt/util/concurrency/processes/test_socket.rb +0 -70
- data/test/rbbt/util/concurrency/test_processes.rb +0 -192
- data/test/rbbt/util/concurrency/test_threads.rb +0 -40
- data/test/rbbt/util/log/test_progress.rb +0 -111
- data/test/rbbt/util/misc/test_bgzf.rb +0 -48
- data/test/rbbt/util/misc/test_communication.rb +0 -13
- data/test/rbbt/util/misc/test_development.rb +0 -26
- data/test/rbbt/util/misc/test_format.rb +0 -10
- data/test/rbbt/util/misc/test_indiferent_hash.rb +0 -14
- data/test/rbbt/util/misc/test_lock.rb +0 -77
- data/test/rbbt/util/misc/test_multipart_payload.rb +0 -202
- data/test/rbbt/util/misc/test_omics.rb +0 -116
- data/test/rbbt/util/misc/test_pipes.rb +0 -343
- data/test/rbbt/util/misc/test_serialize.rb +0 -24
- data/test/rbbt/util/python/test_util.rb +0 -25
- data/test/rbbt/util/simpleopt/test_get.rb +0 -12
- data/test/rbbt/util/simpleopt/test_parse.rb +0 -10
- data/test/rbbt/util/simpleopt/test_setup.rb +0 -76
- data/test/rbbt/util/test_R.rb +0 -37
- data/test/rbbt/util/test_chain_methods.rb +0 -22
- data/test/rbbt/util/test_cmd.rb +0 -87
- data/test/rbbt/util/test_colorize.rb +0 -22
- data/test/rbbt/util/test_concurrency.rb +0 -6
- data/test/rbbt/util/test_config.rb +0 -69
- data/test/rbbt/util/test_excel2tsv.rb +0 -10
- data/test/rbbt/util/test_filecache.rb +0 -36
- data/test/rbbt/util/test_log.rb +0 -52
- data/test/rbbt/util/test_migrate.rb +0 -34
- data/test/rbbt/util/test_misc.rb +0 -728
- data/test/rbbt/util/test_open.rb +0 -200
- data/test/rbbt/util/test_procpath.rb +0 -23
- data/test/rbbt/util/test_python.rb +0 -144
- data/test/rbbt/util/test_semaphore.rb +0 -36
- data/test/rbbt/util/test_simpleDSL.rb +0 -55
- data/test/rbbt/util/test_simpleopt.rb +0 -11
- data/test/rbbt/util/test_ssh.rb +0 -10
- data/test/rbbt/util/test_tmpfile.rb +0 -32
- data/test/rbbt/workflow/step/test_dependencies.rb +0 -295
- data/test/rbbt/workflow/step/test_save_load_inputs.rb +0 -136
- data/test/rbbt/workflow/test_doc.rb +0 -30
- data/test/rbbt/workflow/test_remote_workflow.rb +0 -99
- data/test/rbbt/workflow/test_schedule.rb +0 -0
- data/test/rbbt/workflow/test_step.rb +0 -231
- data/test/rbbt/workflow/test_task.rb +0 -85
- data/test/rbbt/workflow/util/test_archive.rb +0 -27
- data/test/rbbt/workflow/util/test_data.rb +0 -67
- data/test/rbbt/workflow/util/test_orchestrator.rb +0 -263
- data/test/test_helper.rb +0 -114
@@ -1,226 +0,0 @@
|
|
1
|
-
require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
|
2
|
-
require 'rbbt/util/tmpfile'
|
3
|
-
require 'test/unit'
|
4
|
-
|
5
|
-
require 'rbbt/workflow'
|
6
|
-
require 'rbbt/entity'
|
7
|
-
require 'rbbt/entity/identifiers'
|
8
|
-
|
9
|
-
require 'rbbt/association'
|
10
|
-
require 'rbbt/knowledge_base'
|
11
|
-
|
12
|
-
module Gene
|
13
|
-
extend Entity
|
14
|
-
property :follow => :single do |kb,name,annotate=nil|
|
15
|
-
if annotate.nil? or annotate
|
16
|
-
l = kb.children(name, self).target_entity
|
17
|
-
self.annotate l if annotate and kb.source(name) == format
|
18
|
-
l
|
19
|
-
else
|
20
|
-
kb._children(name, self).collect{|v| v.partition("~").last }
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
property :backtrack => :single do |kb,name,annotate=nil|
|
25
|
-
if annotate.nil? or annotate
|
26
|
-
l = kb.parents(name, self).target_entity
|
27
|
-
self.annotate l if annotate and kb.target(name) == format
|
28
|
-
l
|
29
|
-
else
|
30
|
-
kb._parents(name, self).collect{|v| v.partition("~").last }
|
31
|
-
end
|
32
|
-
end
|
33
|
-
|
34
|
-
property :expand => :single do |kb,name,annotate=nil|
|
35
|
-
if annotate.nil? or annotate
|
36
|
-
n = kb.neighbours(name, self)
|
37
|
-
if kb.source(name) == kb.target(name)
|
38
|
-
self.annotate n.collect{|k,v| v.target}.flatten
|
39
|
-
else
|
40
|
-
n.collect{|k,v| v.target_entity.to_a}.flatten
|
41
|
-
end
|
42
|
-
else
|
43
|
-
n = kb._neighbours(name, self)
|
44
|
-
n.values.flatten.collect{|v| v.partition("~").last}
|
45
|
-
end
|
46
|
-
end
|
47
|
-
end
|
48
|
-
|
49
|
-
|
50
|
-
class TestKnowledgeBase < Test::Unit::TestCase
|
51
|
-
def setup
|
52
|
-
require 'rbbt/sources/organism'
|
53
|
-
|
54
|
-
Gene.add_identifiers Organism.identifiers("NAMESPACE"), "Ensembl Gene ID", "Associated Gene Name"
|
55
|
-
end
|
56
|
-
|
57
|
-
def test_knowledge_base_simple
|
58
|
-
organism = Organism.default_code("Hsa")
|
59
|
-
TmpFile.with_file do |tmpdir|
|
60
|
-
kb = KnowledgeBase.new tmpdir, Organism.default_code("Hsa")
|
61
|
-
kb.format = {"Gene" => "Ensembl Gene ID"}
|
62
|
-
|
63
|
-
kb.register :gene_ages, datadir_test.gene_ages
|
64
|
-
|
65
|
-
i = kb.get_index(:gene_ages)
|
66
|
-
|
67
|
-
assert_include i.match("ENSG00000000003"), "ENSG00000000003~Bilateria"
|
68
|
-
end
|
69
|
-
end
|
70
|
-
|
71
|
-
def test_knowledge_base_translate
|
72
|
-
organism = Organism.default_code("Hsa")
|
73
|
-
TmpFile.with_file do |tmpdir|
|
74
|
-
kb = KnowledgeBase.new tmpdir, Organism.default_code("Hsa")
|
75
|
-
kb.format = {"Gene" => "Ensembl Gene ID"}
|
76
|
-
|
77
|
-
kb.register :gene_ages, datadir_test.gene_ages, :source => "FamilyAge", :target => "=>Associated Gene Name"
|
78
|
-
|
79
|
-
i = kb.get_index(:gene_ages)
|
80
|
-
|
81
|
-
assert_include i.match("Bilateria"), "Bilateria~SMAD4"
|
82
|
-
end
|
83
|
-
end
|
84
|
-
|
85
|
-
|
86
|
-
def test_knowledge_base_reverse
|
87
|
-
organism = Organism.default_code("Hsa")
|
88
|
-
TmpFile.with_file do |tmpdir|
|
89
|
-
kb = KnowledgeBase.new tmpdir, Organism.default_code("Hsa")
|
90
|
-
kb.format = {"Gene" => "Ensembl Gene ID"}
|
91
|
-
|
92
|
-
kb.register :gene_ages, datadir_test.gene_ages
|
93
|
-
|
94
|
-
ri = kb.get_index(:gene_ages).reverse
|
95
|
-
|
96
|
-
assert_include ri.match("Bilateria"), "Bilateria~ENSG00000000003"
|
97
|
-
end
|
98
|
-
end
|
99
|
-
|
100
|
-
def test_entity
|
101
|
-
organism = Organism.default_code("Hsa")
|
102
|
-
TmpFile.with_file do |tmpdir|
|
103
|
-
kb = KnowledgeBase.new tmpdir, Organism.default_code("Hsa")
|
104
|
-
kb.format = {"Gene" => "Ensembl Gene ID"}
|
105
|
-
|
106
|
-
kb.register :gene_ages, datadir_test.gene_ages, :source => "=>Associated Gene Name"
|
107
|
-
|
108
|
-
kb.register :CollecTRI, datadir_test.CollecTRI,
|
109
|
-
:source => "Transcription Factor", :target => "Target Gene",
|
110
|
-
:fields => ["[ExTRI] Confidence", "[ExTRI] PMID"]
|
111
|
-
|
112
|
-
smad4 = Gene.setup("SMAD4", "Associated Gene Name", kb.namespace)
|
113
|
-
smad7 = Gene.setup("SMAD7", "Associated Gene Name", kb.namespace)
|
114
|
-
|
115
|
-
|
116
|
-
assert_include smad4.follow(kb, :CollecTRI), smad7
|
117
|
-
assert_include smad7.backtrack(kb, :CollecTRI), smad4
|
118
|
-
refute smad7.follow(kb, :CollecTRI).include?(smad4)
|
119
|
-
assert_include smad7.expand(kb, :CollecTRI), smad4
|
120
|
-
assert_include smad4.expand(kb, :CollecTRI), smad7
|
121
|
-
|
122
|
-
end
|
123
|
-
end
|
124
|
-
|
125
|
-
def __test_benchmark
|
126
|
-
organism = Organism.default_code("Hsa")
|
127
|
-
TmpFile.with_file do |tmpdir|
|
128
|
-
kb = KnowledgeBase.new tmpdir, Organism.default_code("Hsa")
|
129
|
-
kb.format = {"Gene" => "Ensembl Gene ID"}
|
130
|
-
|
131
|
-
kb.register :gene_ages, datadir_test.gene_ages, :source => "=>Associated Gene Name"
|
132
|
-
|
133
|
-
kb.register :CollecTRI, datadir_test.CollecTRI,
|
134
|
-
:source => "Transcription Factor", :target => "Target Gene (Associated Gene Name)",
|
135
|
-
:fields => ["[ExTRI] Confidence", "[ExTRI] PMID"]
|
136
|
-
|
137
|
-
|
138
|
-
smad4 = Gene.setup("SMAD4", "Associated Gene Name", kb.namespace)
|
139
|
-
downstream = smad4.follow(kb, :CollecTRI, true)
|
140
|
-
Gene.setup(downstream)
|
141
|
-
|
142
|
-
downstream.follow(kb, :CollecTRI)
|
143
|
-
downstream.backtrack(kb, :CollecTRI)
|
144
|
-
downstream.expand(kb, :CollecTRI)
|
145
|
-
|
146
|
-
Misc.benchmark(50) do
|
147
|
-
downstream.follow(kb, :CollecTRI)
|
148
|
-
downstream.backtrack(kb, :CollecTRI)
|
149
|
-
downstream.expand(kb, :CollecTRI)
|
150
|
-
end
|
151
|
-
|
152
|
-
Misc.benchmark(50) do
|
153
|
-
downstream.follow(kb, :CollecTRI, true)
|
154
|
-
downstream.backtrack(kb, :CollecTRI, true)
|
155
|
-
downstream.expand(kb, :CollecTRI, true)
|
156
|
-
end
|
157
|
-
end
|
158
|
-
end
|
159
|
-
|
160
|
-
def test_identifier_files
|
161
|
-
organism = Organism.default_code("Hsa")
|
162
|
-
TmpFile.with_file do |tmpdir|
|
163
|
-
Path.setup(tmpdir)
|
164
|
-
kb = KnowledgeBase.new tmpdir, Organism.default_code("Hsa")
|
165
|
-
|
166
|
-
kb.register :gene_ages, datadir_test.gene_ages
|
167
|
-
|
168
|
-
assert_include kb.get_database(:gene_ages).identifier_files.first, "test/data"
|
169
|
-
assert_include kb.get_index(:gene_ages).identifier_files.first, "test/data"
|
170
|
-
|
171
|
-
end
|
172
|
-
end
|
173
|
-
|
174
|
-
def test_knowledge_base_reuse
|
175
|
-
organism = Organism.default_code("Hsa")
|
176
|
-
TmpFile.with_file do |tmpdir|
|
177
|
-
Path.setup(tmpdir)
|
178
|
-
kb = KnowledgeBase.new tmpdir, Organism.default_code("Hsa")
|
179
|
-
kb.register :CollecTRI, datadir_test.CollecTRI,
|
180
|
-
:source => "Transcription Factor=~Associated Gene Name=>Ensembl Gene ID", :target => "Target Gene",
|
181
|
-
:fields => ["[ExTRI] Confidence", "[ExTRI] PMID"]
|
182
|
-
|
183
|
-
assert kb.get_database(:CollecTRI).identifier_files.any?
|
184
|
-
|
185
|
-
i = Association.index(datadir_test.CollecTRI, :persist_file => tmpdir.CollecTRI,
|
186
|
-
:source => "Transcription Factor=~Associated Gene Name=>Ensembl Gene ID", :target => "Target Gene",
|
187
|
-
:fields => ["[ExTRI] Confidence", "[ExTRI] PMID"],
|
188
|
-
:format => {"Gene" => "Ensembl Gene ID"},
|
189
|
-
:namespace => Organism.default_code("Hsa"))
|
190
|
-
|
191
|
-
assert i.identifier_files.any?
|
192
|
-
|
193
|
-
kb = KnowledgeBase.load(tmpdir)
|
194
|
-
|
195
|
-
assert kb.get_database(:CollecTRI).identifier_files.any?
|
196
|
-
|
197
|
-
i = kb.get_index(:CollecTRI)
|
198
|
-
|
199
|
-
assert i.identifier_files.any?
|
200
|
-
assert kb.identify_source('CollecTRI', "SMAD4") =~ /ENSG/
|
201
|
-
end
|
202
|
-
end
|
203
|
-
|
204
|
-
|
205
|
-
def test_flat
|
206
|
-
organism = Organism.default_code("Hsa")
|
207
|
-
TmpFile.with_file do |tmpdir|
|
208
|
-
kbfile = File.join(tmpdir, 'kb')
|
209
|
-
file = File.join(tmpdir, 'file')
|
210
|
-
kb = KnowledgeBase.new kbfile
|
211
|
-
kb.register :test_flat do
|
212
|
-
str =<<-EOF
|
213
|
-
#: :type=:flat#:sep=' '
|
214
|
-
#Key Value
|
215
|
-
a b c d e
|
216
|
-
A B C D E
|
217
|
-
EOF
|
218
|
-
Open.write(file, str)
|
219
|
-
file
|
220
|
-
end
|
221
|
-
db = kb.get_database(:test_flat)
|
222
|
-
assert db["a"].first.length > 1
|
223
|
-
end
|
224
|
-
end
|
225
|
-
end
|
226
|
-
|
data/test/rbbt/test_monitor.rb
DELETED
@@ -1,68 +0,0 @@
|
|
1
|
-
require File.join(File.expand_path(File.dirname(__FILE__)), '..', 'test_helper.rb')
|
2
|
-
require 'rbbt/packed_index'
|
3
|
-
|
4
|
-
class TestPackedIndex < Test::Unit::TestCase
|
5
|
-
def test_packed_index
|
6
|
-
|
7
|
-
TmpFile.with_file do |tmpfile|
|
8
|
-
pi = PackedIndex.new tmpfile, true, %w(i i 23s f f f f f)
|
9
|
-
100.times do |i|
|
10
|
-
pi << [i, i+2, i.to_s * 10, rand, rand, rand, rand, rand]
|
11
|
-
end
|
12
|
-
pi << nil
|
13
|
-
pi << nil
|
14
|
-
pi.close
|
15
|
-
pi = PackedIndex.new(tmpfile, false)
|
16
|
-
Misc.benchmark(1000) do
|
17
|
-
100.times do |i|
|
18
|
-
assert_equal i, pi[i][0]
|
19
|
-
assert_equal i+2, pi[i][1]
|
20
|
-
end
|
21
|
-
end
|
22
|
-
assert_equal nil, pi[100]
|
23
|
-
assert_equal nil, pi[101]
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
27
|
-
def test_bgzip
|
28
|
-
|
29
|
-
size = 1000000
|
30
|
-
density = 0.1
|
31
|
-
|
32
|
-
access = []
|
33
|
-
(size * density).to_i.times do
|
34
|
-
access << rand(size-1) + 1
|
35
|
-
end
|
36
|
-
access.sort!
|
37
|
-
access.uniq!
|
38
|
-
|
39
|
-
TmpFile.with_file do |tmpfile|
|
40
|
-
pi = PackedIndex.new tmpfile, true, %w(i i 23s f f f f f)
|
41
|
-
size.times do |i|
|
42
|
-
pi << [i, i+2, i.to_s * 10, rand, rand, rand, rand, rand]
|
43
|
-
end
|
44
|
-
pi << nil
|
45
|
-
pi << nil
|
46
|
-
pi.close
|
47
|
-
|
48
|
-
pi = PackedIndex.new(tmpfile, false)
|
49
|
-
Misc.benchmark do
|
50
|
-
access.each do |point|
|
51
|
-
assert_equal point+2, pi[point][1]
|
52
|
-
end
|
53
|
-
end
|
54
|
-
|
55
|
-
`bgzip #{tmpfile} `
|
56
|
-
`mv #{tmpfile}.gz #{tmpfile}.bgz`
|
57
|
-
|
58
|
-
pi = PackedIndex.new(tmpfile + '.bgz', false)
|
59
|
-
pi[0]
|
60
|
-
Misc.benchmark do
|
61
|
-
access.each do |point|
|
62
|
-
assert_equal point+2, pi[point][1]
|
63
|
-
end
|
64
|
-
end
|
65
|
-
end
|
66
|
-
end
|
67
|
-
end
|
68
|
-
|
data/test/rbbt/test_persist.rb
DELETED
@@ -1,85 +0,0 @@
|
|
1
|
-
require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
|
2
|
-
require 'rbbt/persist'
|
3
|
-
require 'rbbt/annotations'
|
4
|
-
require 'rbbt/util/tmpfile'
|
5
|
-
require 'test/unit'
|
6
|
-
|
7
|
-
class TestPersist < Test::Unit::TestCase
|
8
|
-
|
9
|
-
def test_array_persist
|
10
|
-
TmpFile.with_file do |tmp|
|
11
|
-
10.times do
|
12
|
-
assert_equal ["1", "2"],(Persist.persist("Test", :array, :file => tmp) do
|
13
|
-
["1", "2"]
|
14
|
-
end)
|
15
|
-
end
|
16
|
-
end
|
17
|
-
|
18
|
-
TmpFile.with_file do |tmp|
|
19
|
-
10.times do
|
20
|
-
assert_equal [],(Persist.persist("Test", :array, :file => tmp) do
|
21
|
-
[]
|
22
|
-
end)
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
TmpFile.with_file do |tmp|
|
27
|
-
10.times do
|
28
|
-
assert_equal ["1"],(Persist.persist("Test", :array, :file => tmp) do
|
29
|
-
["1"]
|
30
|
-
end)
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
35
|
-
def test_tsv_dumper
|
36
|
-
TmpFile.with_file do |tmpdir|
|
37
|
-
tsv = Persist.persist("Dumper", :tsv, :dir => tmpdir) do
|
38
|
-
dumper = TSV::Dumper.new :key_field => "Field 1", :fields => ["Field 2"], :type => :single
|
39
|
-
|
40
|
-
dumper.init
|
41
|
-
Thread.new do
|
42
|
-
10.times do |i|
|
43
|
-
key = i.to_s
|
44
|
-
dumper.add key, key + " - 2"
|
45
|
-
end
|
46
|
-
dumper.close
|
47
|
-
end
|
48
|
-
dumper
|
49
|
-
end
|
50
|
-
|
51
|
-
assert_equal 10, tsv.size
|
52
|
-
end
|
53
|
-
end
|
54
|
-
|
55
|
-
def test_tsv_dumper_stream
|
56
|
-
TmpFile.with_file do |tmpdir|
|
57
|
-
stream = Persist.persist("Dumper", :tsv, :dir => tmpdir, :no_load => :stream) do
|
58
|
-
dumper = TSV::Dumper.new :key_field => "Field 1", :fields => ["Field 2"], :type => :single
|
59
|
-
|
60
|
-
Thread.new do
|
61
|
-
10.times do |i|
|
62
|
-
key = i.to_s
|
63
|
-
dumper.add key, key + " - 2"
|
64
|
-
end
|
65
|
-
dumper.close
|
66
|
-
end
|
67
|
-
|
68
|
-
dumper
|
69
|
-
end
|
70
|
-
|
71
|
-
assert_equal 10, stream.read.split("\n").length
|
72
|
-
stream.join
|
73
|
-
end
|
74
|
-
end
|
75
|
-
|
76
|
-
def test_newer
|
77
|
-
TmpFile.with_file("Test1") do |tmp1|
|
78
|
-
sleep 1
|
79
|
-
TmpFile.with_file("Test1") do |tmp2|
|
80
|
-
assert Persist.newer?(tmp1, tmp2)
|
81
|
-
assert ! Persist.newer?(tmp2, tmp1)
|
82
|
-
end
|
83
|
-
end
|
84
|
-
end
|
85
|
-
end
|
data/test/rbbt/test_resource.rb
DELETED
@@ -1,110 +0,0 @@
|
|
1
|
-
require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
|
2
|
-
require 'rbbt'
|
3
|
-
require 'rbbt/resource'
|
4
|
-
require 'rbbt/util/tmpfile'
|
5
|
-
require 'test/unit'
|
6
|
-
|
7
|
-
module TestResource
|
8
|
-
extend Resource
|
9
|
-
|
10
|
-
self.subdir = 'tmp/tmp-share/resource/TestResource/'
|
11
|
-
|
12
|
-
claim tmp.test.google, :url, "http://google.com"
|
13
|
-
claim tmp.test.string, :string, "TEST"
|
14
|
-
claim tmp.test.proc, :proc do
|
15
|
-
"PROC TEST"
|
16
|
-
end
|
17
|
-
|
18
|
-
claim tmp.test.rakefiles.foo , :string , <<-EOF
|
19
|
-
file 'foo' do |t|
|
20
|
-
Open.write(t.name, "TEST")
|
21
|
-
end
|
22
|
-
|
23
|
-
rule /.*/ do |t|
|
24
|
-
Open.write(t.name, "bar")
|
25
|
-
end
|
26
|
-
EOF
|
27
|
-
|
28
|
-
claim tmp.test.work.footest, :rake, TestResource.tmp.test.rakefiles.foo
|
29
|
-
|
30
|
-
claim tmp.test.work.file_proc, :file_proc do |file,filename|
|
31
|
-
Open.write(filename, file)
|
32
|
-
nil
|
33
|
-
end
|
34
|
-
end
|
35
|
-
|
36
|
-
class TestTSV < Test::Unit::TestCase
|
37
|
-
|
38
|
-
def test_tsv
|
39
|
-
require 'rbbt/tsv'
|
40
|
-
TestResource.claim TestResource.tmp.test.test_tsv, :proc do
|
41
|
-
tsv = {"a" => 1, "b" => 2}
|
42
|
-
TSV.setup(tsv, :key_field => "Letter", :fields => ["Value"], :type => :single)
|
43
|
-
end
|
44
|
-
assert TSV === TestResource.tmp.test.test_tsv.tsv
|
45
|
-
end
|
46
|
-
|
47
|
-
def test_rake
|
48
|
-
assert_equal TestResource.tmp.test.work.footest.foo.read, "TEST"
|
49
|
-
assert_equal TestResource.tmp.test.work.footest.bar.read, "bar"
|
50
|
-
end
|
51
|
-
|
52
|
-
|
53
|
-
def test_proc
|
54
|
-
assert TestResource.tmp.test.proc.read == "PROC TEST"
|
55
|
-
end
|
56
|
-
|
57
|
-
def test_string
|
58
|
-
assert TestResource.tmp.test.string.read == "TEST"
|
59
|
-
end
|
60
|
-
|
61
|
-
def test_url
|
62
|
-
assert TestResource[].tmp.test.google.read =~ /google/
|
63
|
-
end
|
64
|
-
|
65
|
-
|
66
|
-
def __test_resolve
|
67
|
-
assert_equal File.join(ENV['HOME'], '.rbbt/etc/foo'), Path.setup('etc/foo').find(:user)
|
68
|
-
assert_equal File.join(ENV['HOME'], '.phgx/etc/foo'), Path.setup('etc/foo', 'phgx').find(:user)
|
69
|
-
|
70
|
-
assert_equal File.join('/', 'etc/rbbt/foo'), Path.setup('etc/foo').find(:global)
|
71
|
-
assert_equal File.join('/', 'etc/phgx/foo'), Path.setup('etc/foo', 'phgx').find(:global)
|
72
|
-
|
73
|
-
assert_equal File.join('/usr/local', 'etc/rbbt/foo'), Path.setup('etc/foo').find(:local)
|
74
|
-
assert_equal File.join('/usr/local', 'etc/phgx/foo'), Path.setup('etc/foo', 'phgx').find(:local)
|
75
|
-
|
76
|
-
assert_equal File.expand_path(File.join(File.dirname(File.expand_path(__FILE__)), '../../', 'etc/foo')), Path.setup('etc/foo').find(:lib)
|
77
|
-
assert_equal File.expand_path(File.join(File.dirname(File.expand_path(__FILE__)), '../../', 'etc/foo')), Path.setup('etc/foo').find(:lib)
|
78
|
-
|
79
|
-
assert_equal File.join(ENV['HOME'], '.rbbt/etc/foo'), Path.setup('etc/foo').find()
|
80
|
-
assert_equal File.join(ENV['HOME'], '.phgx/etc/foo'), Path.setup('etc/foo', 'phgx').find()
|
81
|
-
end
|
82
|
-
|
83
|
-
def test_libdir
|
84
|
-
assert File.exist?(Rbbt.share.Rlib["util.R"].find(:lib))
|
85
|
-
assert File.exist?(Rbbt.share.Rlib["util.R"].find)
|
86
|
-
end
|
87
|
-
|
88
|
-
def __test_server
|
89
|
-
require 'rbbt/sources/organism'
|
90
|
-
TmpFile.with_file :extension => 'gz' do |tmp|
|
91
|
-
Organism.get_from_server("Hsa/b37/known_sites/dbsnp_138.vcf.gz", tmp, 'http://rbbt.bsc.es')
|
92
|
-
Open.open(tmp) do |f|
|
93
|
-
assert f.gets =~ /^#/
|
94
|
-
end
|
95
|
-
end
|
96
|
-
end
|
97
|
-
|
98
|
-
def test_identify
|
99
|
-
assert_equal 'etc/', Rbbt.identify(File.join(ENV["HOME"], '.rbbt/etc/'))
|
100
|
-
assert_equal 'share/databases/', Rbbt.identify('/usr/local/share/rbbt/databases/')
|
101
|
-
assert_equal 'share/databases/DATABASE', Rbbt.identify('/usr/local/share/rbbt/databases/DATABASE')
|
102
|
-
assert_equal 'share/databases/DATABASE/FILE', Rbbt.identify('/usr/local/share/rbbt/databases/DATABASE/FILE')
|
103
|
-
assert_equal 'share/databases/DATABASE/FILE', Rbbt.identify(File.join(ENV["HOME"], '.rbbt/share/databases/DATABASE/FILE'))
|
104
|
-
assert_equal 'share/databases/DATABASE/FILE', Rbbt.identify('/usr/local/share/rbbt/databases/DATABASE/FILE')
|
105
|
-
|
106
|
-
assert_equal 'etc/somefile', TestResource.identify(TestResource.etc.somefile.find(:user))
|
107
|
-
assert_equal 'etc/somefile', TestResource.identify(TestResource.etc.somefile.find(:local))
|
108
|
-
end
|
109
|
-
|
110
|
-
end
|