rbbt-util 5.5.58 → 5.5.59

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- NzhmNWMwZjZlNmZlMjg4NTQ4NGZlYzYwOTU1YWY3NDQ5NmM2Y2IzMw==
4
+ Y2JmMzk4OWUzYjZkNTE2NTZkODI4NzQ3OGNmZTA3YTg0Y2NmMTMyMg==
5
5
  data.tar.gz: !binary |-
6
- Yzk4ZDk2ZTI5MjBkNTQxYzZiMjIwNzEwMTNhZjUzZTU5MDhhYTdiMA==
6
+ NDNlMTU0Y2JhMjcwMzlmYjkwMmY0NWU0OGJmODVlZDRmODdkZjVkZg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- YzljMTBlNmVmMDhlN2RhMGQzYjM2ODQ1OTA3N2EzYTZhYWVkZTliNzFjOGY4
10
- ZmMwOGMxZWYyNjNlNjQ4OTk4ZmZlZGU5Njk2OTNlYjI1Zjk5YzExODI3ZjEy
11
- NzUxNjRhYWRjNTgxODZmNmRmZTViNTJhNDA2MDNlZTlkY2ZhNTA=
9
+ YmI5ZGEyN2M4YjE0Mjg0YzVmMTM4NTk0NzhkZDJiODE1MTE5Zjk0NjQyM2Yy
10
+ MmY5MDIyNzRiMTJhMGI1OTM1MGFiZThmZDI1M2IyMDc2OGQ4OGRhMjVhNTEz
11
+ NWViMGU3MTlkMDA3N2QwNWVlNGEyNmQxNWM3ZWY4ZDA0ZmY1Yzc=
12
12
  data.tar.gz: !binary |-
13
- MGU4MDdjMmRiYzY2MmE1ZGU0Njg3MmQ2MDJmNDcwMjUzMGMwNzM0MWVjMTdj
14
- NTAxYTY1YjQxYTEwYjA4YjJiZjdjMTc0NDNkNzM2MzFjMTJjZTUyZDg1YTQ4
15
- NDMyZjdiMmM3ZTQ0MmFjYWFjYzcwODM4NjIxZWRjYjdjZTEzOTg=
13
+ NGNkMWM5OTFkY2ZiZTQyMDY1ZDhjZDFmMTM0YjQ2YTAwNGJhMTU5ZjM5ZWUy
14
+ YzBmMjM2ZjRjMTFkMTEwMDg0NmU2Mjk5MmY2NmFhNzMwMGNmNTUzOTljZmEx
15
+ ZjhkODIwN2Y4YzJiMDMxODVlZWZiZTIxMjcwOGZiMTM5MmU0MDQ=
@@ -8,7 +8,7 @@ module Persist
8
8
  TC_CONNECTIONS = {}
9
9
 
10
10
  def self.open_tokyocabinet(path, write, serializer = nil, tokyocabinet_class = TokyoCabinet::HDB)
11
- write = true if not File.exists?(path)
11
+ write = true unless File.exists? path
12
12
 
13
13
  tokyocabinet_class = TokyoCabinet::HDB if tokyocabinet_class == "HDB"
14
14
  tokyocabinet_class = TokyoCabinet::BDB if tokyocabinet_class == "BDB"
@@ -1,4 +1,5 @@
1
1
  require 'yaml'
2
+ require 'rbbt/annotations'
2
3
  module TSV
3
4
 
4
5
  TSV_SERIALIZER = YAML
@@ -248,6 +249,7 @@ module TSV
248
249
 
249
250
  def sort_by(field = nil, just_keys = false, &block)
250
251
  field = :all if field.nil?
252
+
251
253
  if field == :all
252
254
  elems = collect
253
255
  else
@@ -298,9 +300,8 @@ module TSV
298
300
  end
299
301
  end
300
302
  if just_keys
301
- #keys = elems.sort_by{|key, value| value }.collect{|key, value| key}
302
303
  keys = sorted.collect{|key, value| key}
303
- keys = prepare_entity(keys, key_field, entity_options.merge(:dup_array => true))
304
+ keys = prepare_entity(keys, key_field, entity_options.merge(:dup_array => true)) unless @unnamed
304
305
  keys
305
306
  else
306
307
  sorted.collect{|key, value| [key, self[key]]}
@@ -308,7 +309,9 @@ module TSV
308
309
  end
309
310
  else
310
311
  if just_keys
311
- elems.sort_by(&block).collect{|key, value| key}
312
+ keys = elems.sort_by(&block).collect{|key, value| key}
313
+ keys = prepare_entity(keys, key_field, entity_options.merge(:dup_array => true)) unless @unnamed
314
+ keys
312
315
  else
313
316
  elems.sort_by(&block).collect{|key, value| [key, self[key]]}
314
317
  end
@@ -414,7 +414,7 @@ module TSV
414
414
  case
415
415
  when (Array === method and (key == :key or key_field == key))
416
416
  with_unnamed do
417
- Annotated.purge(method).sort.uniq.each{|key|
417
+ Annotated.purge(method).uniq.each{|key|
418
418
  new[key] = self[key] if invert ^ (self.include? key)
419
419
  }
420
420
  end
@@ -30,6 +30,25 @@ class Color
30
30
  # Default value for #darken, #lighten etc.
31
31
  BRIGHTNESS_DEFAULT = 0.2
32
32
 
33
+ SOLARIZED = {
34
+ :base03 => '#002b36',
35
+ :base02 => '#073642',
36
+ :base01 => '#586e75',
37
+ :base00 => '#657b83',
38
+ :base0 => '#839496',
39
+ :base1 => '#93a1a1',
40
+ :base2 => '#eee8d5',
41
+ :base3 => '#fdf6e3',
42
+ :yellow => '#b58900',
43
+ :orange => '#cb4b16',
44
+ :red => '#dc322f',
45
+ :magenta => '#d33682',
46
+ :violet => '#6c71c4',
47
+ :blue => '#268bd2',
48
+ :cyan => '#2aa198',
49
+ :green => '#859900',
50
+ }
51
+
33
52
  # Constructor. Inits to white (#FFFFFF) by default, or accepts any params
34
53
  # supported by #parse.
35
54
  def initialize(*args)
data/lib/rbbt/util/log.rb CHANGED
@@ -1,4 +1,8 @@
1
+ require 'term/ansicolor'
2
+ require 'rbbt/util/color'
3
+
1
4
  module Log
5
+ extend Term::ANSIColor
2
6
 
3
7
  DEBUG = 0
4
8
  LOW = 1
@@ -17,21 +21,24 @@ module Log
17
21
  @logfile = nil
18
22
  end
19
23
 
20
- WHITE, DARK, GREEN, YELLOW, RED = ["0;37m", "0m", "0;32m", "0;33m", "0;31m"].collect{|e| "\033[#{e}"}
24
+ WHITE, DARK, GREEN, YELLOW, RED = Color::SOLARIZED.values_at :base0, :base00, :green, :yellow, :magenta
25
+
26
+ SEVERITY_COLOR = [reset, green, yellow, red, green, yellow, red] #.collect{|e| "\033[#{e}"}
21
27
 
22
- SEVERITY_COLOR = [WHITE, GREEN, YELLOW, RED, GREEN, YELLOW, ERROR].collect{|e| "\033[#{e}"}
28
+ HIGHLIGHT = "\033[1m"
23
29
 
24
30
  def self.log(message = nil, severity = MEDIUM, &block)
25
- message ||= block
31
+ return if severity < self.severity
32
+ message ||= block.call if block_given?
26
33
  return if message.nil?
34
+
27
35
  severity_color = SEVERITY_COLOR[severity]
28
- font_color = {true => WHITE, false => DARK}[severity >= INFO]
36
+ time = Time.now.strftime("%m/%d/%y-%H:%M:%S")
29
37
 
30
- return if severity < self.severity
31
- message = message.call if Proc === message
32
- return if message.nil? or message.empty?
38
+ prefix = time << "[" << severity_color << severity.to_s << SEVERITY_COLOR[0] << "]"
39
+ message = "" << HIGHLIGHT << message << SEVERITY_COLOR[0] if severity >= INFO
40
+ str = prefix << " " << message
33
41
 
34
- str = "\033[0;37m#{Time.now.strftime("[%m/%d/%y-%H:%M:%S]")}#{severity_color}[#{severity.to_s}]\033[0m:#{font_color} " << message.strip << "\033[0m"
35
42
  STDERR.puts str
36
43
  logfile.puts str unless logfile.nil?
37
44
  end
@@ -1,74 +1,77 @@
1
1
  module SOPT
2
+
3
+ #{{{ ACCESSORS
4
+
2
5
  class << self
3
6
  attr_accessor :command, :summary, :synopsys, :description
4
7
  attr_accessor :inputs, :input_shortcuts, :input_types, :input_descriptions, :input_defaults
8
+ end
5
9
 
6
- def command
7
- @command ||= File.basename($0)
8
- end
10
+ def self.command
11
+ @command ||= File.basename($0)
12
+ end
9
13
 
10
- def summary
11
- @summary ||= ""
12
- end
14
+ def self.summary
15
+ @summary ||= ""
16
+ end
13
17
 
14
- def synopsys
15
- @synopsys ||= begin
16
- "#{command} " <<
17
- inputs.collect{|name|
18
- "[" << input_format(name, input_types[name] || :string, input_defaults[name], input_shortcuts[name]).sub(/:$/,'') << "]"
19
- } * " "
20
- end
21
- end
18
+ def self.synopsys
19
+ @synopsys ||= begin
20
+ "#{command} " <<
21
+ inputs.collect{|name|
22
+ "[" << input_format(name, input_types[name] || :string, input_defaults[name], input_shortcuts[name]).sub(/:$/,'') << "]"
23
+ } * " "
24
+ end
25
+ end
22
26
 
23
- def description
24
- @description ||= "Missing"
25
- end
27
+ def self.description
28
+ @description ||= "Missing"
29
+ end
26
30
 
27
31
 
28
- def shortcuts
29
- @shortcuts ||= []
30
- end
32
+ def self.shortcuts
33
+ @shortcuts ||= []
34
+ end
31
35
 
32
- def all
33
- @all ||= {}
34
- end
35
-
36
- def inputs
37
- @inputs ||= []
38
- end
36
+ def self.all
37
+ @all ||= {}
38
+ end
39
39
 
40
- def input_shortcuts
41
- @input_shortcuts ||= {}
42
- end
40
+ def self.inputs
41
+ @inputs ||= []
42
+ end
43
43
 
44
- def input_types
45
- @input_types ||= {}
46
- end
47
-
48
- def input_descriptions
49
- @input_descriptions ||= {}
50
- end
51
-
52
- def input_defaults
53
- @input_defaults ||= {}
54
- end
44
+ def self.input_shortcuts
45
+ @input_shortcuts ||= {}
46
+ end
55
47
 
48
+ def self.input_types
49
+ @input_types ||= {}
50
+ end
56
51
 
57
- def reset
58
- @shortcuts = []
59
- @all = {}
60
- end
52
+ def self.input_descriptions
53
+ @input_descriptions ||= {}
54
+ end
61
55
 
62
- def record(info)
63
- input = info[:long].sub("--", '')
64
- inputs << input
65
- input_types[input] = info[:arg] ? :string : :boolean
66
- input_descriptions[input] = info[:description]
67
- input_defaults[input] = info[:default]
68
- input_shortcuts[input] = info[:short]? info[:short].sub("-",'') : nil
69
- end
56
+ def self.input_defaults
57
+ @input_defaults ||= {}
70
58
  end
71
59
 
60
+ def self.reset
61
+ @shortcuts = []
62
+ @all = {}
63
+ end
64
+
65
+ #{{{ PARSING
66
+
67
+ def self.record(info)
68
+ input = info[:long].sub("--", '')
69
+ inputs << input
70
+ input_types[input] = info[:arg] ? :string : :boolean
71
+ input_descriptions[input] = info[:description]
72
+ input_defaults[input] = info[:default]
73
+ input_shortcuts[input] = info[:short]? info[:short].sub("-",'') : nil
74
+ end
72
75
 
73
76
  def self.short_for(name)
74
77
  short = []
@@ -84,60 +87,6 @@ module SOPT
84
87
  short * ""
85
88
  end
86
89
 
87
- def self.input_format(name, type = nil, default = nil, short = "")
88
- short = short_for(name) if not short.nil? and short.empty?
89
-
90
- input_str = short.nil? ? "--#{name}" : "-#{short}, --#{name}"
91
- input_str << case type
92
- when nil
93
- "#{default != nil ? " (default '#{default}')" : ""}:"
94
- when :boolean
95
- "[=false]#{default != nil ? " (default '#{default}')" : ""}:"
96
- when :tsv, :text
97
- "=<filename.#{type}|->#{default != nil ? " (default '#{default}')" : ""}; Use '-' for STDIN:"
98
- when :array
99
- "=<string[,string]*|filename.list|->#{default != nil ? " (default '#{default}')" : ""}; Use '-' for STDIN:"
100
- else
101
- "=<#{ type }>#{default != nil ? " (default '#{default}')" : ""}:"
102
- end
103
- end
104
-
105
- def self.input_doc(inputs, input_types = nil, input_descriptions = nil, input_defaults = nil, input_shortcuts = nil)
106
- type = description = default = nil
107
- shortcut = ""
108
- inputs.collect do |name|
109
-
110
- type = input_types[name] unless input_types.nil?
111
- description = input_descriptions[name] unless input_descriptions.nil?
112
- default = input_defaults[name] unless input_defaults.nil?
113
- shortcut = input_shortcuts[name] unless input_shortcuts.nil?
114
-
115
- type = :string if type.nil?
116
-
117
- str = " * " << SOPT.input_format(name, type.to_sym, default, shortcut) << "\n"
118
- str << " " << description << "\n" if description and not description.empty?
119
- str
120
- end * "\n"
121
- end
122
-
123
- def self.doc
124
- doc = <<-EOF
125
- #{command}(1) -- #{summary}
126
- #{"=" * (command.length + summary.length + 7)}
127
-
128
- ## SYNOPSYS
129
-
130
- #{synopsys}
131
-
132
- ## DESCRIPTION
133
-
134
- #{description}
135
-
136
- ## OPTIONS
137
-
138
- #{input_doc(inputs, input_types, input_descriptions, input_defaults, input_shortcuts)}
139
- EOF
140
- end
141
90
 
142
91
  def self.name(info)
143
92
  (info[:long] || info[:short]).sub(/^-*/,'')
@@ -225,4 +174,61 @@ module SOPT
225
174
 
226
175
  options
227
176
  end
177
+
178
+ #{{{ DOCUMENTATION
179
+
180
+ def self.input_format(name, type = nil, default = nil, short = "")
181
+ short = short_for(name) if not short.nil? and short.empty?
182
+
183
+ input_str = short.nil? ? "--#{name}" : "-#{short}, --#{name}"
184
+ input_str << case type
185
+ when nil
186
+ "#{default != nil ? " (default '#{default}')" : ""}:"
187
+ when :boolean
188
+ "[=false]#{default != nil ? " (default '#{default}')" : ""}:"
189
+ when :tsv, :text
190
+ "=<filename.#{type}|->#{default != nil ? " (default '#{default}')" : ""}; Use '-' for STDIN:"
191
+ when :array
192
+ "=<string[,string]*|filename.list|->#{default != nil ? " (default '#{default}')" : ""}; Use '-' for STDIN:"
193
+ else
194
+ "=<#{ type }>#{default != nil ? " (default '#{default}')" : ""}:"
195
+ end
196
+ end
197
+
198
+ def self.input_doc(inputs, input_types = nil, input_descriptions = nil, input_defaults = nil, input_shortcuts = nil)
199
+ type = description = default = nil
200
+ shortcut = ""
201
+ inputs.collect do |name|
202
+
203
+ type = input_types[name] unless input_types.nil?
204
+ description = input_descriptions[name] unless input_descriptions.nil?
205
+ default = input_defaults[name] unless input_defaults.nil?
206
+ shortcut = input_shortcuts[name] unless input_shortcuts.nil?
207
+
208
+ type = :string if type.nil?
209
+
210
+ str = " * " << SOPT.input_format(name, type.to_sym, default, shortcut) << "\n"
211
+ str << " " << description << "\n" if description and not description.empty?
212
+ str
213
+ end * "\n"
214
+ end
215
+
216
+ def self.doc
217
+ doc = <<-EOF
218
+ #{command}(1) -- #{summary}
219
+ #{"=" * (command.length + summary.length + 7)}
220
+
221
+ ## SYNOPSYS
222
+
223
+ #{synopsys}
224
+
225
+ ## DESCRIPTION
226
+
227
+ #{description}
228
+
229
+ ## OPTIONS
230
+
231
+ #{input_doc(inputs, input_types, input_descriptions, input_defaults, input_shortcuts)}
232
+ EOF
233
+ end
228
234
  end
data/lib/rbbt/workflow.rb CHANGED
@@ -5,33 +5,16 @@ require 'rbbt/workflow/accessor'
5
5
 
6
6
  module Workflow
7
7
 
8
- class << self
9
- attr_accessor :autoinstall
10
-
11
- def autoinstall
12
- @autoload ||= ENV["RBBT_WORKFLOW_AUTOINSTALL"] == "true"
13
- end
14
- end
15
-
16
- def self.resolve_locals(inputs)
17
- inputs.each do |name, value|
18
- if value =~ /^local:(.*?):(.*)/ or
19
- (Array === value and value.length == 1 and value.first =~ /^local:(.*?):(.*)/) or
20
- (TSV === value and value.size == 1 and value.keys.first =~ /^local:(.*?):(.*)/)
21
- task_name = $1
22
- jobname = $2
23
- value = load_id(File.join(task_name, jobname)).load
24
- end
25
- inputs[name] = value
26
- end
27
- end
28
-
29
8
  #{{{ WORKFLOW MANAGEMENT
30
9
  class << self
31
- attr_accessor :workflows
10
+ attr_accessor :workflows, :autoinstall
32
11
  end
12
+
33
13
  self.workflows = []
34
14
 
15
+ def self.autoinstall
16
+ @autoload ||= ENV["RBBT_WORKFLOW_AUTOINSTALL"] == "true"
17
+ end
35
18
  def self.extended(base)
36
19
  self.workflows << base
37
20
  base.libdir = Path.caller_lib_dir.tap{|p| p.resource = base}
@@ -185,10 +168,25 @@ module Workflow
185
168
  end
186
169
 
187
170
  # {{{ JOB MANAGEMENT
171
+ DEFAULT_NAME="Default"
172
+
173
+ def self.resolve_locals(inputs)
174
+ inputs.each do |name, value|
175
+ if value =~ /^local:(.*?):(.*)/ or
176
+ (Array === value and value.length == 1 and value.first =~ /^local:(.*?):(.*)/) or
177
+ (TSV === value and value.size == 1 and value.keys.first =~ /^local:(.*?):(.*)/)
178
+ task_name = $1
179
+ jobname = $2
180
+ value = load_id(File.join(task_name, jobname)).load
181
+ inputs[name] = value
182
+ end
183
+ end
184
+ end
188
185
 
189
186
  def job(taskname, jobname = nil, inputs = {})
190
187
  taskname = taskname.to_sym
191
- jobname = "Default" if jobname.nil? or jobname.empty?
188
+ jobname = DEFAULT_NAME if jobname.nil? or jobname.empty?
189
+
192
190
  task = tasks[taskname]
193
191
  raise "Task not found: #{ taskname }" if task.nil?
194
192
 
@@ -244,6 +242,7 @@ module Workflow
244
242
  }
245
243
  end
246
244
 
245
+ #{{{ Make workflow resources local
247
246
  def local_persist_setup
248
247
  class << self
249
248
  include LocalPersist
@@ -6,7 +6,7 @@ class Step
6
6
  INFO_SERIALIAZER = Marshal
7
7
 
8
8
  def name
9
- @path.sub(/.*\/#{Regexp.quote task.name.to_s}\/(.*)/, '\1')
9
+ path.sub(/.*\/#{Regexp.quote task.name.to_s}\/(.*)/, '\1')
10
10
  end
11
11
 
12
12
  def clean_name
@@ -21,7 +21,7 @@ class Step
21
21
 
22
22
  def info_file
23
23
  @info_file ||= begin
24
- @path.nil? ? nil : @path + '.info'
24
+ path.nil? ? nil : path + '.info'
25
25
  end
26
26
  end
27
27
 
@@ -110,7 +110,7 @@ class Step
110
110
  # {{{ INFO
111
111
 
112
112
  def files_dir
113
- @path + '.files'
113
+ path + '.files'
114
114
  end
115
115
 
116
116
  def files
@@ -275,19 +275,21 @@ module Workflow
275
275
 
276
276
  TAG = :hash
277
277
  def step_path(taskname, jobname, inputs, dependencies)
278
- raise "Jobname makes an invalid path: #{ jobname }" if jobname =~ /\.\./
279
- if inputs.any? or dependencies.any?
280
- tagged_jobname = case TAG
281
- when :hash
282
- jobname + '_' + Misc.digest((inputs * "\n" + ";" + dependencies.collect{|dep| dep.name} * "\n"))
283
- else
284
- jobname
285
- end
286
- else
287
- tagged_jobname = jobname
288
- end
278
+ Proc.new{
279
+ raise "Jobname makes an invalid path: #{ jobname }" if jobname =~ /\.\./
280
+ if inputs.any? or dependencies.any?
281
+ tagged_jobname = case TAG
282
+ when :hash
283
+ jobname + '_' + Misc.digest((inputs * "\n" + ";" + dependencies.collect{|dep| dep.name} * "\n"))
284
+ else
285
+ jobname
286
+ end
287
+ else
288
+ tagged_jobname = jobname
289
+ end
289
290
 
290
- workdir[taskname][tagged_jobname].find
291
+ workdir[taskname][tagged_jobname].find
292
+ }
291
293
  end
292
294
 
293
295
 
@@ -4,7 +4,6 @@ require 'rbbt/workflow/annotate'
4
4
  module Workflow
5
5
  include AnnotatedModule
6
6
 
7
-
8
7
  AnnotatedModule.add_consummable_annotation(self,
9
8
  :result_description => "",
10
9
  :result_type => nil,
@@ -14,8 +14,8 @@ class Step
14
14
  class Aborted < Exception; end
15
15
 
16
16
  def initialize(path, task = nil, inputs = nil, dependencies = nil, bindings = nil)
17
- path = Misc.sanitize_filename path
18
- @path = Path.setup(path)
17
+ path = Path.setup(Misc.sanitize_filename(path)) if String === path
18
+ @path = path
19
19
  @task = task
20
20
  @bindings = bindings
21
21
  @dependencies = case
@@ -29,6 +29,11 @@ class Step
29
29
  @inputs = inputs || []
30
30
  end
31
31
 
32
+ def path
33
+ @path = Misc.sanitize_filename(Path.setup(@path.call)) if Proc === @path
34
+ @path
35
+ end
36
+
32
37
  class << self
33
38
  attr_accessor :log_relay_step
34
39
  end
@@ -88,7 +93,7 @@ class Step
88
93
  end
89
94
 
90
95
  def run(no_load = false)
91
- result = Persist.persist "Job", @task.result_type, :file => @path, :check => rec_dependencies.collect{|dependency| dependency.path }.uniq, :no_load => no_load do
96
+ result = Persist.persist "Job", @task.result_type, :file => path, :check => rec_dependencies.collect{|dependency| dependency.path }.uniq, :no_load => no_load do
92
97
  @exec = false
93
98
  if Step === Step.log_relay_step and not self == Step.log_relay_step
94
99
  relay_log(Step.log_relay_step) unless self.respond_to? :relay_step and self.relay_step
@@ -177,11 +182,11 @@ class Step
177
182
  begin
178
183
  run(true)
179
184
  rescue Step::Aborted
180
- Log.debug{"Forked process aborted: #{@path}"}
185
+ Log.debug{"Forked process aborted: #{path}"}
181
186
  log :aborted, "Aborted"
182
187
  raise $!
183
188
  rescue Exception
184
- Log.debug("Exception caught on forked process: #{@path}")
189
+ Log.debug("Exception caught on forked process: #{path}")
185
190
  raise $!
186
191
  end
187
192
 
@@ -1,11 +1,12 @@
1
1
  require File.join(File.expand_path(File.dirname(__FILE__)), '../..', 'test_helper.rb')
2
2
  require 'rbbt/workflow/task'
3
3
  require 'rbbt/workflow/step'
4
+ require 'rbbt/tsv'
4
5
  require 'rbbt'
5
6
 
6
7
  class TestStep < Test::Unit::TestCase
7
8
 
8
- def test_step
9
+ def _test_step
9
10
  task = Task.setup do "TEST" end
10
11
  task2 = Task.setup do raise "Persistence ignored" end
11
12
  TmpFile.with_file do |tmp|
@@ -17,7 +18,7 @@ class TestStep < Test::Unit::TestCase
17
18
  end
18
19
  end
19
20
 
20
- def test_dependency
21
+ def _test_dependency
21
22
  str = "TEST"
22
23
  str2 = "TEST2"
23
24
  TmpFile.with_file do |tmpfile|
@@ -46,7 +47,7 @@ class TestStep < Test::Unit::TestCase
46
47
  end
47
48
  end
48
49
 
49
- def test_dependency_log_relay
50
+ def _test_dependency_log_relay
50
51
  str = "TEST"
51
52
  TmpFile.with_file do |tmpfile|
52
53
  task1 = Task.setup :result_type => nil, :name => :task1 do
@@ -65,7 +66,7 @@ class TestStep < Test::Unit::TestCase
65
66
  end
66
67
  end
67
68
 
68
- def test_log_relay_step
69
+ def _test_log_relay_step
69
70
  str = "TEST"
70
71
  TmpFile.with_file do |tmpfile|
71
72
  task1 = Task.setup :result_type => nil, :name => :task1 do
@@ -87,7 +88,7 @@ class TestStep < Test::Unit::TestCase
87
88
  end
88
89
 
89
90
 
90
- def test_exec
91
+ def _test_exec
91
92
  TmpFile.with_file do |lock|
92
93
  task = Task.setup do "TEST" end
93
94
  TmpFile.with_file do |tmp|
@@ -98,7 +99,7 @@ class TestStep < Test::Unit::TestCase
98
99
  end
99
100
 
100
101
 
101
- def test_fork
102
+ def _test_fork
102
103
  TmpFile.with_file do |lock|
103
104
  task = Task.setup do while not File.exists?(lock) do sleep 1; end; "TEST" end
104
105
  TmpFile.with_file do |tmp|
@@ -114,7 +115,7 @@ class TestStep < Test::Unit::TestCase
114
115
  end
115
116
  end
116
117
 
117
- def test_abort
118
+ def _test_abort
118
119
  TmpFile.with_file do |lock|
119
120
  task = Task.setup do while not File.exists?(lock) do sleep 1; end; "TEST" end
120
121
  TmpFile.with_file do |tmp|
@@ -131,7 +132,7 @@ class TestStep < Test::Unit::TestCase
131
132
  end
132
133
  end
133
134
 
134
- def test_files
135
+ def _test_files
135
136
  TmpFile.with_file do |lock|
136
137
  task = Task.setup do
137
138
  Open.write(file("test"),"TEST")
@@ -145,7 +146,7 @@ class TestStep < Test::Unit::TestCase
145
146
  end
146
147
  end
147
148
 
148
- def test_messages
149
+ def _test_messages
149
150
  TmpFile.with_file do |lock|
150
151
  task = Task.setup do
151
152
  message "WRITE"
@@ -161,7 +162,7 @@ class TestStep < Test::Unit::TestCase
161
162
  end
162
163
  end
163
164
 
164
- def test_subdir
165
+ def _test_subdir
165
166
  TmpFile.with_file do |lock|
166
167
  task = Task.setup do
167
168
  message "WRITE"
@@ -178,7 +179,7 @@ class TestStep < Test::Unit::TestCase
178
179
  end
179
180
  end
180
181
 
181
- def test_semaphore
182
+ def _test_semaphore
182
183
  TmpFile.with_file do |semaphore|
183
184
  begin
184
185
  semaphore = "/" << semaphore.gsub('/','_')
@@ -210,5 +211,4 @@ class TestStep < Test::Unit::TestCase
210
211
 
211
212
  end
212
213
 
213
-
214
214
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbbt-util
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.5.58
4
+ version: 5.5.59
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miguel Vazquez
@@ -94,6 +94,20 @@ dependencies:
94
94
  - - ! '>='
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: term-ansicolor
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ! '>='
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ! '>='
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: ZenTest
99
113
  requirement: !ruby/object:Gem::Requirement