rbbt-util 5.28.7 → 5.28.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (67) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rbbt/entity.rb +1 -1
  3. data/lib/rbbt/fix_width_table.rb +5 -4
  4. data/lib/rbbt/hpc.rb +2 -2
  5. data/lib/rbbt/persist.rb +9 -4
  6. data/lib/rbbt/persist/tsv/adapter.rb +0 -1
  7. data/lib/rbbt/persist/tsv/fix_width_table.rb +5 -3
  8. data/lib/rbbt/resource.rb +12 -6
  9. data/lib/rbbt/resource/path.rb +1 -1
  10. data/lib/rbbt/tsv/dumper.rb +6 -2
  11. data/lib/rbbt/util/R.rb +2 -2
  12. data/lib/rbbt/util/cmd.rb +10 -0
  13. data/lib/rbbt/util/misc/bgzf.rb +1 -1
  14. data/lib/rbbt/util/misc/indiferent_hash.rb +8 -0
  15. data/lib/rbbt/util/misc/inspect.rb +11 -7
  16. data/lib/rbbt/util/named_array.rb +1 -1
  17. data/lib/rbbt/util/open.rb +18 -17
  18. data/lib/rbbt/workflow/accessor.rb +1 -1
  19. data/lib/rbbt/workflow/definition.rb +3 -1
  20. data/lib/rbbt/workflow/integration/ansible.rb +53 -0
  21. data/lib/rbbt/workflow/integration/ansible/workflow.rb +60 -0
  22. data/lib/rbbt/workflow/step.rb +21 -2
  23. data/lib/rbbt/workflow/step/accessor.rb +24 -14
  24. data/lib/rbbt/workflow/step/dependencies.rb +8 -2
  25. data/lib/rbbt/workflow/step/run.rb +22 -19
  26. data/lib/rbbt/workflow/util/archive.rb +2 -0
  27. data/lib/rbbt/workflow/util/orchestrator.rb +49 -11
  28. data/lib/rbbt/workflow/util/provenance.rb +7 -3
  29. data/share/rbbt_commands/ansible +55 -0
  30. data/share/rbbt_commands/purge_job +0 -1
  31. data/share/rbbt_commands/system/status +22 -22
  32. data/share/rbbt_commands/workflow/forget_deps +10 -3
  33. data/share/rbbt_commands/workflow/info +12 -9
  34. data/share/rbbt_commands/workflow/prov +2 -1
  35. data/test/rbbt/association/test_index.rb +6 -6
  36. data/test/rbbt/knowledge_base/test_query.rb +3 -3
  37. data/test/rbbt/knowledge_base/test_registry.rb +1 -1
  38. data/test/rbbt/persist/tsv/test_cdb.rb +0 -7
  39. data/test/rbbt/persist/tsv/test_kyotocabinet.rb +2 -8
  40. data/test/rbbt/persist/tsv/test_leveldb.rb +0 -6
  41. data/test/rbbt/persist/tsv/test_lmdb.rb +0 -6
  42. data/test/rbbt/persist/tsv/test_tokyocabinet.rb +15 -14
  43. data/test/rbbt/test_entity.rb +0 -1
  44. data/test/rbbt/test_knowledge_base.rb +3 -4
  45. data/test/rbbt/test_persist.rb +10 -6
  46. data/test/rbbt/test_workflow.rb +49 -16
  47. data/test/rbbt/tsv/test_accessor.rb +11 -0
  48. data/test/rbbt/tsv/test_attach.rb +0 -2
  49. data/test/rbbt/tsv/test_index.rb +6 -7
  50. data/test/rbbt/tsv/test_manipulate.rb +2 -3
  51. data/test/rbbt/util/R/test_model.rb +2 -1
  52. data/test/rbbt/util/R/test_plot.rb +0 -2
  53. data/test/rbbt/util/concurrency/test_processes.rb +1 -1
  54. data/test/rbbt/util/misc/test_bgzf.rb +11 -7
  55. data/test/rbbt/util/misc/test_lock.rb +0 -1
  56. data/test/rbbt/util/misc/test_multipart_payload.rb +1 -1
  57. data/test/rbbt/util/misc/test_pipes.rb +0 -5
  58. data/test/rbbt/util/test_R.rb +1 -0
  59. data/test/rbbt/util/test_log.rb +4 -6
  60. data/test/rbbt/util/test_misc.rb +0 -2
  61. data/test/rbbt/util/test_open.rb +0 -1
  62. data/test/rbbt/util/test_python.rb +17 -1
  63. data/test/rbbt/workflow/test_remote_workflow.rb +1 -1
  64. data/test/rbbt/workflow/test_step.rb +8 -3
  65. data/test/rbbt/workflow/util/test_orchestrator.rb +155 -18
  66. metadata +5 -4
  67. data/test/rbbt/workflow/remote/test_client.rb +0 -56
@@ -199,7 +199,6 @@ class TestEntity < Test::Unit::TestCase
199
199
 
200
200
 
201
201
  $processed_multiple = []
202
- Log.severity = 0
203
202
 
204
203
  array = ReversableString.setup([string1, string2])
205
204
  assert_equal [string1, string2].collect{|s| s.chars}, array.multiple_annotation_list
@@ -62,7 +62,7 @@ class TestKnowledgeBase < Test::Unit::TestCase
62
62
  kb = KnowledgeBase.new tmpdir, Organism.default_code("Hsa")
63
63
  kb.format = {"Gene" => "Ensembl Gene ID"}
64
64
 
65
- kb.register :tfacts, TFacts.regulators, :source =>"=~Associated Gene Name"
65
+ kb.register :tfacts, TFactS.regulators, :source =>"=~Associated Gene Name"
66
66
 
67
67
  kb.get_index(:tfacts).reverse
68
68
  end
@@ -74,7 +74,7 @@ class TestKnowledgeBase < Test::Unit::TestCase
74
74
  kb = KnowledgeBase.new tmpdir, Organism.default_code("Hsa")
75
75
  kb.format = {"Gene" => "Ensembl Gene ID"}
76
76
 
77
- kb.register :tfacts, TFacts.regulators, :source =>"=~Associated Gene Name"
77
+ kb.register :tfacts, TFactS.regulators, :source =>"=~Associated Gene Name"
78
78
 
79
79
  assert_equal "Ensembl Gene ID", kb.get_database(:tfacts).key_field
80
80
 
@@ -113,10 +113,9 @@ class TestKnowledgeBase < Test::Unit::TestCase
113
113
 
114
114
  def test_knowledge_base_reuse
115
115
  organism = Organism.default_code("Hsa")
116
- Log.severity = 0
117
116
  TmpFile.with_file do |tmpdir|
118
117
  Path.setup(tmpdir)
119
- Association.index(TFacts.regulators, :persist_file => tmpdir.tfacts, :format => {"Gene" => "Ensembl Gene ID"}, :namespace => Organism.default_code("Hsa"))
118
+ Association.index(TFactS.regulators, :persist_file => tmpdir.tfacts, :format => {"Gene" => "Ensembl Gene ID"}, :namespace => Organism.default_code("Hsa"))
120
119
 
121
120
  kb = KnowledgeBase.load(tmpdir)
122
121
  assert kb.identify_source('tfacts', "TP53") =~ /ENSG/
@@ -4,12 +4,6 @@ require 'rbbt/annotations'
4
4
  require 'rbbt/util/tmpfile'
5
5
  require 'test/unit'
6
6
 
7
- module TestAnnotation
8
- extend Annotation
9
-
10
- self.annotation :test_annotation
11
- end
12
-
13
7
  class TestPersist < Test::Unit::TestCase
14
8
 
15
9
  def test_array_persist
@@ -78,4 +72,14 @@ class TestPersist < Test::Unit::TestCase
78
72
  stream.join
79
73
  end
80
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
81
85
  end
@@ -156,6 +156,15 @@ for this dependency
156
156
  Open.read(file).reverse
157
157
  end
158
158
 
159
+ task :create_file => :text do |file|
160
+ Open.write(file('a'), "A")
161
+ Open.write(file('b'), "B")
162
+ "DONE"
163
+ end
164
+
165
+ dep_task :reverse_step_file, TestWF, :reverse_file do |jobname, options, dependencies|
166
+ dep = dependencies.flatten.first
167
+ end
159
168
 
160
169
  end
161
170
 
@@ -204,7 +213,6 @@ class TestWorkflow < Test::Unit::TestCase
204
213
 
205
214
  def test_update_on_input_dependency_update
206
215
  Open.repository_dirs << File.join(ENV["HOME"],".rbbt/tmp/test/workflow")
207
- Log.severity = 0
208
216
  Misc.with_env "RBBT_UPDATE", "true" do
209
217
  send_input_dep_to_reverse_job = TestWF.job(:send_input_dep_to_reverse, nil, :name => "Miguel")
210
218
  send_input_dep_to_reverse_job.clean
@@ -376,21 +384,23 @@ class TestWorkflow < Test::Unit::TestCase
376
384
  def test_delete_dep
377
385
  job = TestWF.job(:t3).recursive_clean
378
386
  job.run
379
- assert job.checks.select{|d| d.task_name.to_s == "t1" }.any?
380
- job = TestWF.job(:t3)
381
- job.step(:t1).clean
382
- assert job.checks.select{|d| d.task_name.to_s == "t1" }.empty?
383
- job = TestWF.job(:t3).recursive_clean
384
- job.run
385
- assert job.checks.select{|d| d.task_name.to_s == "t1" }.any?
386
- job = TestWF.job(:t3)
387
- sleep 1
388
- Open.touch job.step(:t1).path
389
- Misc.with_env "RBBT_UPDATE", "false" do
390
- assert job.updated?
391
- end
392
- Misc.with_env "RBBT_UPDATE", "true" do
393
- assert ! job.updated?
387
+ Misc.with_env "RBBT_UPDATE", 'true' do
388
+ assert job.checks.select{|d| d.task_name.to_s == "t1" }.any?
389
+ job = TestWF.job(:t3)
390
+ job.step(:t1).clean
391
+ assert job.checks.select{|d| d.task_name.to_s == "t1" }.empty?
392
+ job = TestWF.job(:t3).recursive_clean
393
+ job.run
394
+ assert job.checks.select{|d| d.task_name.to_s == "t1" }.any?
395
+ job = TestWF.job(:t3)
396
+ sleep 1
397
+ Open.touch job.step(:t1).path
398
+ Misc.with_env "RBBT_UPDATE", "false" do
399
+ assert job.updated?
400
+ end
401
+ Misc.with_env "RBBT_UPDATE", "true" do
402
+ assert ! job.updated?
403
+ end
394
404
  end
395
405
  end
396
406
 
@@ -439,4 +449,27 @@ class TestWorkflow < Test::Unit::TestCase
439
449
  end
440
450
  end
441
451
  end
452
+
453
+ def test_input_step_file_check
454
+ job = TestWF.job(:t3).recursive_clean
455
+ job.run
456
+ Misc.with_env "RBBT_UPDATE", 'true' do
457
+ assert job.checks.select{|d| d.task_name.to_s == "t1" }.any?
458
+ job = TestWF.job(:t3)
459
+ job.step(:t1).clean
460
+ assert job.checks.select{|d| d.task_name.to_s == "t1" }.empty?
461
+ job = TestWF.job(:t3).recursive_clean
462
+ job.run
463
+ assert job.checks.select{|d| d.task_name.to_s == "t1" }.any?
464
+ job = TestWF.job(:t3)
465
+ sleep 1
466
+ Open.touch job.step(:t1).path
467
+ Misc.with_env "RBBT_UPDATE", "false" do
468
+ assert job.updated?
469
+ end
470
+ Misc.with_env "RBBT_UPDATE", "true" do
471
+ assert ! job.updated?
472
+ end
473
+ end
474
+ end
442
475
  end
@@ -222,6 +222,17 @@ row2 aa|aa|AA|AA b1|b2|B1|B2 Id1|Id1|Id2|Id2
222
222
  end
223
223
  end
224
224
 
225
+ def test_to_s_no_fields
226
+ file1 =<<-EOF
227
+ row6 dd dd ee
228
+ row1 a b c
229
+ row2 A B C
230
+ row3 1 2 3
231
+ EOF
232
+ tsv1 = TSV.open StringIO.new(file1), :sep => " "
233
+ assert tsv1.to_s(:sort, true).include?('dd')
234
+ end
235
+
225
236
  def test_to_s_unmerge_expand
226
237
  content =<<-EOF
227
238
  #Id ValueA ValueB OtherID
@@ -630,10 +630,8 @@ E B
630
630
  tsv1 = Rbbt.tmp.test.test1.data.tsv :double, :sep => /\s+/
631
631
  tsv2 = Rbbt.tmp.test.test2.data.tsv :double, :sep => /\s+/
632
632
 
633
- Log.severity = 0
634
633
  tsv1.attach tsv2, :fields => ["ValueE"] #, :persist_input => true
635
634
  Log.tsv tsv1
636
- ppp tsv1
637
635
 
638
636
  end
639
637
  end
@@ -29,7 +29,7 @@ row2 A B Id3
29
29
 
30
30
  TmpFile.with_file(content) do |filename|
31
31
  tsv = TSV.open(File.open(filename), :sep => /\s+/, :key_field => "OtherID", :persistence => false)
32
- index = tsv.index(:case_insensitive => true, :persistence => true)
32
+ index = tsv.index(:persistence => true)
33
33
  assert index["row1"].include? "Id1"
34
34
  assert_equal "OtherID", index.fields.first
35
35
  end
@@ -45,9 +45,8 @@ row2 A B Id3
45
45
 
46
46
  TmpFile.with_file(content) do |filename|
47
47
  tsv = TSV.open(File.open(filename), :sep => /\s+/, :key_field => "OtherID", :persistence => false)
48
- Log.tsv tsv
49
- index = tsv.index(:case_insensitive => true, :persistence => false, :fields => ["Id"], :target => "ValueA")
50
- Log.tsv index
48
+ index = tsv.index(:persistence => false, :fields => ["Id"], :target => "ValueA")
49
+ assert_equal "A", index["row2"]
51
50
  end
52
51
 
53
52
  end
@@ -243,7 +242,7 @@ g: ____
243
242
  EOF
244
243
  TmpFile.with_file(data) do |datafile|
245
244
  load_segment_data(datafile)
246
- TmpFile.with_file(load_segment_data(datafile)) do |tsvfile|
245
+ TmpFile.with_file(load_segment_data(datafile).to_s) do |tsvfile|
247
246
  f = TSV.range_index(tsvfile, "Start", "End", :persistence => true)
248
247
 
249
248
  #assert_equal %w(), f[0].sort
@@ -286,8 +285,8 @@ f: ___
286
285
  g: ____
287
286
  EOF
288
287
  TmpFile.with_file(data) do |datafile|
289
- TmpFile.with_file(load_segment_data(datafile)) do |tsvfile|
290
- f = TSV.range_index(tsvfile, "Start", "End", :filters => [["field:Start", "3"]])
288
+ TmpFile.with_file(load_segment_data(datafile).to_s) do |tsvfile|
289
+ f = TSV.range_index(tsvfile, "Start", "End", :filters => [["field:Start", "3"]], :persist_update => true)
291
290
 
292
291
  assert_equal %w(), f[0].sort
293
292
  assert_equal %w(), f[1].sort
@@ -284,7 +284,7 @@ row3 a C Id4
284
284
 
285
285
  def test_reorder_flat
286
286
  content =<<-EOF
287
- #Id ValueA
287
+ #Id ValueA
288
288
  row1 a aa aaa
289
289
  row2 A
290
290
  row3 a
@@ -292,9 +292,8 @@ row3 a
292
292
 
293
293
  TmpFile.with_file(content) do |filename|
294
294
  tsv = TSV.open(File.open(filename), :sep => /\s+/, :type => :flat)
295
-
296
- assert_equal ["row1", "row3"].sort, tsv.reorder("ValueA")["a"]
297
295
 
296
+ assert_equal ["row1", "row3"].sort, tsv.reorder("ValueA")["a"]
298
297
  end
299
298
  end
300
299
 
@@ -1,4 +1,5 @@
1
1
  require File.join(File.expand_path(File.dirname(__FILE__)), '../../..', 'test_helper.rb')
2
+ require 'rbbt/util/R'
2
3
  require 'rbbt/util/R/model'
3
4
 
4
5
  class TestRModel < Test::Unit::TestCase
@@ -49,7 +50,7 @@ data = rbbt.model.inpute(data, CI ~ Dose, method=drm, classes='numeric', fct=LL.
49
50
  assert_equal result.size, result.column("CI").values.flatten.reject{|p| p.nil? or p.empty? or p == "NA"}.length
50
51
  end
51
52
 
52
- def test_ab_surv_corr
53
+ def __test_ab_surv_corr
53
54
  require 'rbbt/workflow'
54
55
  Workflow.require_workflow "Miller"
55
56
 
@@ -5,7 +5,6 @@ require 'rbbt/util/R/plot'
5
5
  class TestRPlot < Test::Unit::TestCase
6
6
  def __test_ggplotgif
7
7
 
8
- Log.severity = 0
9
8
  x = R.eval_a 'rnorm(100, 0, 1)'
10
9
  data = TSV.setup(x, "Num~#:type=:single#:cast=:to_f")
11
10
 
@@ -22,7 +21,6 @@ ggplot(data) + geom_density(bw=frame.value, aes(x=Val))
22
21
 
23
22
  def test_gif
24
23
 
25
- Log.severity = 0
26
24
  x = R.eval_a 'rnorm(100, 0, 1)'
27
25
  data = TSV.setup(x, "Num~#:type=:single#:cast=:to_f")
28
26
 
@@ -7,7 +7,7 @@ require 'rbbt/util/concurrency/processes'
7
7
  class TestConcurrencyProcess < Test::Unit::TestCase
8
8
 
9
9
  def setup
10
- Log.severity = 0
10
+ #Log.severity = 0
11
11
  end
12
12
 
13
13
  def test_process_throttle
@@ -2,12 +2,14 @@ require File.join(File.expand_path(File.dirname(__FILE__)), '../../..', 'test_he
2
2
  require 'rbbt/util/misc/bgzf'
3
3
 
4
4
  class TestBgzf < Test::Unit::TestCase
5
- def test_Bgzf
5
+ def _test_Bgzf
6
6
  content = "1234567890" * 1000000
7
7
  TmpFile.with_file(content) do |file|
8
8
  compressed = file + '.gz'
9
9
  `bgzip #{file} -c > #{compressed}`
10
10
  stream = Bgzf.setup File.open(compressed)
11
+ assert_equal "1234", stream.read(4)
12
+ assert_equal "56", stream.read(2)
11
13
  stream.seek 500003
12
14
  assert_equal "4567", stream.read(4)
13
15
  assert_equal "89", stream.read(2)
@@ -20,23 +22,25 @@ class TestBgzf < Test::Unit::TestCase
20
22
  Misc.benchmark do
21
23
  tsv = TSV.open(Open.open(file))
22
24
  end
23
- compressed = file + '.bgz'
24
25
 
25
- `bgzip #{file} -c > #{compressed}`
26
- stream = Bgzf.setup File.open(compressed)
26
+ `gzip #{file}`
27
+ stream = Open.open(file + '.gz')
27
28
  Misc.benchmark do
28
29
  tsv = TSV.open(stream)
29
30
  end
30
31
 
31
- `gzip #{file}`
32
- stream = Open.open(file + '.gz')
32
+ `gunzip #{file}.gz`
33
+ compressed = file + '.bgz'
34
+ `bgzip #{file} -c > #{compressed}`
35
+ stream = Bgzf.setup File.open(compressed)
33
36
  Misc.benchmark do
34
37
  tsv = TSV.open(stream)
35
38
  end
39
+
36
40
  end
37
41
  end
38
42
 
39
- def test_bgzip
43
+ def _test_bgzip
40
44
  assert File.exist?(Bgzf.bgzip_cmd)
41
45
  assert 'bgzip', File.basename(Bgzf.bgzip_cmd)
42
46
  end
@@ -48,7 +48,6 @@ if __FILE__ == $0
48
48
  TmpFile.with_file do |dir|
49
49
  Structure.workdir = dir
50
50
  Path.setup dir
51
- Log.severity = 4
52
51
  TSV.traverse (0..size).to_a, :cpus => cpus, :type => :array, :bar => true do |i|
53
52
  begin
54
53
  v = rand(num).to_s
@@ -185,7 +185,7 @@ END
185
185
  inputs[:input2] = "Input2"
186
186
  num = 50
187
187
  cpus = 1
188
- Log.severity = 0
188
+
189
189
  Misc.bootstrap((0..num-1).to_a, cpus) do |n|
190
190
  puts mutipart
191
191
  TmpFile.with_file(mutipart, false) do |tmpfile|
@@ -131,7 +131,6 @@ row2 AA BB CC
131
131
  row3 AAA BBB CCC
132
132
  row1 A B C
133
133
  EOF
134
- Log.severity = 0
135
134
 
136
135
  text = text * 10000
137
136
  TmpFile.with_file(text) do |tmp|
@@ -159,7 +158,6 @@ row2 AA BB CC
159
158
  row3 AAA BBB CCC
160
159
  row1 A B C
161
160
  EOF
162
- Log.severity = 0
163
161
 
164
162
  text = text * 10000
165
163
  num = 5
@@ -200,7 +198,6 @@ line3
200
198
  line1
201
199
  EOF
202
200
 
203
- Log.severity = 0
204
201
  TmpFile.with_file(text1) do |file1|
205
202
  TmpFile.with_file(text2) do |file2|
206
203
  assert ! Misc.remove_lines(file1, file2, true).read.split("\n").include?("line1")
@@ -224,7 +221,6 @@ line1
224
221
  line5
225
222
  EOF
226
223
 
227
- Log.severity = 0
228
224
  TmpFile.with_file(text1) do |file1|
229
225
  TmpFile.with_file(text2) do |file2|
230
226
  assert Misc.select_lines(file1, file2, true).read.split("\n").include?("line1")
@@ -258,7 +254,6 @@ line3
258
254
  line4
259
255
  EOF
260
256
 
261
- Log.severity = 0
262
257
  TmpFile.with_file(text) do |file|
263
258
  io = Open.open(file)
264
259
  lines = Set.new
@@ -9,6 +9,7 @@ class TestR < Test::Unit::TestCase
9
9
  def test_tsv_R
10
10
  tsv = TSV.setup({:a => 1, :b => 2})
11
11
  tsv2 = tsv.R <<-EOF
12
+ str(data)
12
13
  data = data + 1
13
14
  EOF
14
15
  assert_equal "2", tsv2["a"].first
@@ -2,7 +2,7 @@ require File.join(File.expand_path(File.dirname(__FILE__)), '../..', 'test_helpe
2
2
  require 'rbbt/util/log'
3
3
 
4
4
  class TestLog < Test::Unit::TestCase
5
- def _test_get_level
5
+ def test_get_level
6
6
  assert_equal 0, Log.get_level(:debug)
7
7
  assert_equal 1, Log.get_level(:low)
8
8
  assert_equal 1, Log.get_level("LOW")
@@ -10,18 +10,17 @@ class TestLog < Test::Unit::TestCase
10
10
  assert_equal 0, Log.get_level(nil)
11
11
  end
12
12
 
13
- def _test_color
13
+ def test_color
14
14
  assert Log.color(:green, "green")
15
15
  end
16
16
 
17
- def _test_no_stderr
17
+ def test_no_stderr
18
18
  Log.ignore_stderr do
19
19
  STDERR.puts "NOPRINT"
20
20
  end
21
21
  end
22
22
 
23
- def _test_trap_stderr
24
- Log.severity = 0
23
+ def test_trap_stderr
25
24
  Log.trap_stderr do
26
25
  STDERR.puts "NOPRINT"
27
26
  STDERR.puts "NOPRINT"
@@ -40,7 +39,6 @@ class TestLog < Test::Unit::TestCase
40
39
  end
41
40
 
42
41
  def test_trap_std
43
- Log.severity = 0
44
42
  Log.trap_std do
45
43
  STDERR.puts "NOPRINT STDERR"
46
44
  STDOUT.puts "NOPRINT STDOUT"
@@ -475,7 +475,6 @@ eum fugiat quo voluptas nulla pariatur?"
475
475
  end
476
476
 
477
477
  def test_bootstrap
478
- Log.severity = 0
479
478
  res = Misc.bootstrap((1..10).to_a, 2, :bar => "Test bootstrap ticks", :respawn => :always, :into => []) do |num|
480
479
  sleep 1 + rand(2)
481
480
  num
@@ -550,7 +549,6 @@ eum fugiat quo voluptas nulla pariatur?"
550
549
  end
551
550
 
552
551
  def __test_bench_log
553
- Log.severity = 1
554
552
  Misc.benchmark(1000) do
555
553
  Log.info { "Hola" }
556
554
  end