rbbt-util 5.21.104 → 5.21.106

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c0ffcca0065a417f82428c347e4283ec03ccfd75
4
- data.tar.gz: 65a8de0c4d9e0bca0e23a8d0c27e7c2b89d9ca9c
3
+ metadata.gz: 91cdec79d533941095ae1221a6048d03d0e64eb2
4
+ data.tar.gz: 3309d8b5e05b8d29f99b541d0b44d07bf9dfade3
5
5
  SHA512:
6
- metadata.gz: 871b8ef7151a8a47f91994061603859b7dfa57402b4631f74eb4f6e5f747524bb48a91ff6e1bef7abe27fb7194b3ac4c6416686c63de4c7531cf052d75b6ad7f
7
- data.tar.gz: 1db58bc5d69b28a0d58b6913cce05dae2a113c8a7723fa3bc34f08532a8886b4a2079ebd806292d92d8977c9d09591306ff7840d171473f4ff504a572ddee898
6
+ metadata.gz: 4e8af0810a521f6222f457c4193f6ba35f9727476b843c11e117737b118ca881cda79f7ebb8f7af7e7000128fafceeb8ba60e16e1afb6d4f201ed8892b159e00
7
+ data.tar.gz: c3cd43a48a8974a9a402ba268960c1359b5ea843102c72c37531d1e2b763008513596643920203a68c7e0f015fc71d38ab332a4b1e41ce82bbfca3f13261db15
data/lib/rbbt/tsv/util.rb CHANGED
@@ -320,7 +320,7 @@ module TSV
320
320
  new[k] = v.first
321
321
  end
322
322
  when :single
323
- self
323
+ return self
324
324
  when :list
325
325
  through do |k,v|
326
326
  new[k] = v.first
@@ -22,7 +22,7 @@ module Colorize
22
22
  end
23
23
  end
24
24
 
25
- def self.continuous(array, start = "#EABD5D", eend = "#40324F", percent = false)
25
+ def self.continuous(array, start = "#40324F", eend = "#EABD5D", percent = false)
26
26
  start_color = Color.new from_name(start)
27
27
  end_color = Color.new from_name(eend)
28
28
 
@@ -258,6 +258,8 @@ module Misc
258
258
  obj + " (file missing)"
259
259
  end
260
260
  when String
261
+
262
+ obj = obj.chomp if String === obj
261
263
  if obj.length > HASH2MD5_MAX_STRING_LENGTH
262
264
  sample_large_obj(obj, HASH2MD5_MAX_STRING_LENGTH) << "--" << txt_digest_str(obj)
263
265
  else
@@ -85,14 +85,22 @@ class Step
85
85
  (no_load or ENV["RBBT_NO_STREAM"]) ? @result : prepare_result(@result, @task.result_description)
86
86
  end
87
87
 
88
- def checks
89
- #rec_dependencies.collect{|dependency| (defined? WorkflowRESTClient and WorkflowRESTClient::RemoteStep === dependency) ? nil : dependency.path }.compact.uniq
88
+ def dependency_checks
90
89
  rec_dependencies.
91
90
  select{|dependency| ! (defined? WorkflowRESTClient and WorkflowRESTClient::RemoteStep === dependency) }.
92
91
  select{|dependency| ! dependency.error? }.
93
92
  collect{|dependency| dependency.path }.uniq
94
93
  end
95
94
 
95
+ def input_checks
96
+ inputs.select{|i| Step === i && i.done?}.
97
+ collect{|dependency| dependency.path }.uniq
98
+ end
99
+
100
+ def checks
101
+ dependency_checks + input_checks
102
+ end
103
+
96
104
  def updated?
97
105
  done? and checks.select{|path| File.mtime(path) > File.mtime(self.path) }.empty?
98
106
  end
@@ -83,14 +83,46 @@ Returns numer * 2 lines containing TEST
83
83
  end
84
84
  end
85
85
 
86
+ input :name, :string, "Name"
87
+ task :input_dep => :text do |name|
88
+ <<-EOF
89
+ Hi #{name}:
90
+ This is the input text
91
+ for this dependency
92
+ EOF
93
+ end
86
94
 
95
+ input :text, :text, "Input text"
96
+ task :reverse_input_text => :text do |text|
97
+ text.reverse
98
+ end
87
99
 
100
+ dep :input_dep
101
+ dep :reverse_input_text, :text => :input_dep
102
+ task :send_input_dep_to_reverse => :text do
103
+ TSV.get_stream step(:reverse_input_text)
104
+ end
88
105
  end
89
106
 
90
107
  TestWF.workdir = Rbbt.tmp.test.workflow
91
108
 
92
109
  class TestWorkflow < Test::Unit::TestCase
93
110
 
111
+ def test_update_on_input_dependency_update
112
+ send_input_dep_to_reverse_job = TestWF.job(:send_input_dep_to_reverse, nil, :name => "Miguel")
113
+ send_input_dep_to_reverse_job.clean
114
+ send_input_dep_to_reverse_job.run
115
+ input_dep_job = send_input_dep_to_reverse_job.step(:input_dep)
116
+ input_dep_job.clean
117
+ input_dep_job.run
118
+ send_input_dep_to_reverse_job = TestWF.job(:send_input_dep_to_reverse, nil, :name => "Miguel")
119
+ mtime_orig = File.mtime send_input_dep_to_reverse_job.step(:reverse_input_text).path
120
+ send_input_dep_to_reverse_job.run
121
+ mtime_new = File.mtime send_input_dep_to_reverse_job.step(:reverse_input_text).path
122
+ assert mtime_orig < mtime_new
123
+
124
+ end
125
+
94
126
  def test_helper
95
127
  assert_equal "User", TestWF.job(:user, "Default", :number => 3).run
96
128
  end
data/test/test_helper.rb CHANGED
@@ -24,6 +24,7 @@ class Test::Unit::TestCase
24
24
  end
25
25
 
26
26
  def teardown
27
+ FileUtils.rm_rf Rbbt.tmp.test.workflow.find
27
28
  #if defined? Persist
28
29
  # FileUtils.rm_rf Path.setup("", 'rbbt').tmp.test.find :user
29
30
  # Persist::CONNECTIONS.values.each do |c| c.close end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbbt-util
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.21.104
4
+ version: 5.21.106
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miguel Vazquez
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-11-13 00:00:00.000000000 Z
11
+ date: 2017-11-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake