drbqs 0.0.19 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/docs/TestProfiler.md +30 -0
- data/drbqs.gemspec +2 -1
- data/{example → examples}/README.md +0 -0
- data/{example → examples}/command/server_def.rb +1 -1
- data/{example → examples}/error_server/error.rb +0 -0
- data/{example → examples}/error_server/server_def.rb +0 -0
- data/{example → examples}/error_task/error.rb +0 -0
- data/{example → examples}/error_task/server_def.rb +1 -1
- data/examples/execute/README.md +7 -0
- data/examples/execute/execute.rb +10 -0
- data/examples/execute/server.rb +27 -0
- data/{example/sum → examples/execute}/sum.rb +0 -0
- data/{example → examples}/group/execute.rb +5 -2
- data/{example → examples}/group/server.rb +0 -0
- data/{example → examples}/group/sum.rb +0 -0
- data/{example → examples}/mandelbrot/README.md +0 -0
- data/{example → examples}/mandelbrot/execute.rb +4 -1
- data/{example → examples}/mandelbrot/mandelbrot.rb +0 -0
- data/{example → examples}/mandelbrot/server.rb +0 -0
- data/examples/server/server.rb +20 -0
- data/{example → examples}/simple/README.md +0 -0
- data/{example → examples}/simple/execute.rb +0 -0
- data/{example → examples}/simple/server.rb +0 -0
- data/{example → examples}/simple/task.rb +0 -0
- data/{example → examples}/sum/server_def.rb +5 -1
- data/examples/sum/sum.rb +10 -0
- data/{example → examples}/sum2/execute_def.rb +0 -0
- data/{example → examples}/sum2/server_def.rb +3 -4
- data/{example → examples}/sum2/sum.rb +0 -0
- data/{example → examples}/transfer/file.rb +0 -0
- data/{example → examples}/transfer/server_def.rb +0 -0
- data/lib/drbqs.rb +5 -0
- data/lib/drbqs/command_line/command_execute.rb +1 -0
- data/lib/drbqs/command_line/command_server.rb +1 -1
- data/lib/drbqs/config/process_list.rb +9 -7
- data/lib/drbqs/execute/process_define.rb +109 -18
- data/lib/drbqs/execute/register.rb +41 -33
- data/lib/drbqs/ext/task/command_task.rb +20 -17
- data/lib/drbqs/node/connection.rb +1 -2
- data/lib/drbqs/node/node.rb +3 -4
- data/lib/drbqs/server/server.rb +9 -3
- data/lib/drbqs/setting/base.rb +1 -0
- data/lib/drbqs/setting/data_container.rb +2 -2
- data/lib/drbqs/setting/execute.rb +9 -2
- data/lib/drbqs/setting/node.rb +7 -1
- data/lib/drbqs/setting/server.rb +4 -1
- data/lib/drbqs/task/registrar.rb +1 -2
- data/lib/drbqs/utility/misc.rb +6 -1
- data/lib/drbqs/utility/temporary.rb +27 -34
- data/lib/drbqs/version.rb +1 -1
- data/lib/drbqs/worker/worker_process_set.rb +3 -1
- data/spec/command_line/command_base_spec.rb +2 -2
- data/spec/config/config_spec.rb +5 -4
- data/spec/config/ssh_host_spec.rb +1 -1
- data/spec/execute/process_define_spec.rb +65 -18
- data/spec/execute/register_spec.rb +31 -9
- data/spec/ext/task/command_task_spec.rb +3 -5
- data/spec/integration_test/09_server_process_data_spec.rb +1 -1
- data/spec/node/node_spec.rb +3 -3
- data/spec/node/task_client_spec.rb +10 -10
- data/spec/server/history_spec.rb +22 -10
- data/spec/server/queue_spec.rb +11 -11
- data/spec/server/server_spec.rb +2 -2
- data/spec/server/transfer_setting_spec.rb +1 -1
- data/spec/setting/source_spec.rb +11 -10
- data/spec/task/task_spec.rb +5 -5
- data/spec/utility/misc_spec.rb +1 -1
- data/spec/utility/temporary_spec.rb +1 -7
- data/spec/utility/transfer/transfer_client_connect_spec.rb +4 -4
- data/spec/utility/transfer/transfer_file_list_spec.rb +2 -2
- data/spec/utility/transfer/transfer_spec.rb +23 -8
- metadata +108 -70
- data/example/execute/execute.rb +0 -41
- data/example/execute/server.rb +0 -14
- data/example/execute/task.rb +0 -0
- data/example/server/server.rb +0 -11
@@ -2,39 +2,40 @@ require 'tmpdir'
|
|
2
2
|
|
3
3
|
module DRbQS
|
4
4
|
module Temporary
|
5
|
-
|
6
|
-
|
7
|
-
|
5
|
+
@root = nil
|
6
|
+
@pid = nil
|
7
|
+
@subdir = nil
|
8
|
+
@filename = nil
|
8
9
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
10
|
+
# Return root of temporary directory.
|
11
|
+
def self.root
|
12
|
+
if @pid != Process.pid
|
13
|
+
@pid = Process.pid
|
14
|
+
@root = File.join(Dir.tmpdir, sprintf("drbqs_%s_%d_%d", ENV['USER'], @pid, rand(10000)))
|
15
|
+
FileUtils.mkdir_p(@root, :mode => 0700)
|
14
16
|
end
|
17
|
+
@root
|
15
18
|
end
|
16
19
|
|
17
20
|
def self.set_sub_directory(dir)
|
18
|
-
|
19
|
-
|
20
|
-
@@subdir = File.join(@@root, dir)
|
21
|
+
@filename = nil
|
22
|
+
@subdir = File.join(self.root, dir)
|
21
23
|
end
|
22
24
|
|
23
25
|
def self.subdirectory
|
24
|
-
|
26
|
+
@subdir && File.exist?(@subdir) ? @subdir : nil
|
25
27
|
end
|
26
28
|
|
27
29
|
# Return FileName object to generate names of temporary files on DRbQS nodes.
|
28
30
|
def self.filename
|
29
|
-
unless
|
30
|
-
|
31
|
-
|
32
|
-
@@filename = FileName.new(File.join(@@subdir, sprintf("temp_%d", rand(10000))))
|
31
|
+
unless @filename
|
32
|
+
if @subdir
|
33
|
+
@filename = FileName.new(File.join(@subdir, sprintf("temp_%d", rand(10000))))
|
33
34
|
else
|
34
|
-
|
35
|
+
@filename = FileName.new(File.join(self.root, sprintf("temp_%d", rand(10000))))
|
35
36
|
end
|
36
37
|
end
|
37
|
-
|
38
|
+
@filename
|
38
39
|
end
|
39
40
|
|
40
41
|
# Create new temporary directory and return the path of directory.
|
@@ -52,26 +53,18 @@ module DRbQS
|
|
52
53
|
end
|
53
54
|
end
|
54
55
|
|
55
|
-
# Make root of temporary directory empty.
|
56
|
-
def self.delete
|
57
|
-
if @@root
|
58
|
-
FileUtils.rm_r(@@root)
|
59
|
-
FileUtils.mkdir_p(@@root, :mode => 0700)
|
60
|
-
end
|
61
|
-
end
|
62
|
-
|
63
56
|
# Delete all temporary directory.
|
64
|
-
def self.
|
65
|
-
if
|
66
|
-
FileUtils.rm_r(
|
67
|
-
|
68
|
-
|
57
|
+
def self.delete
|
58
|
+
if @root
|
59
|
+
FileUtils.rm_r(@root)
|
60
|
+
@pid = nil
|
61
|
+
@root = nil
|
62
|
+
@filename = nil
|
69
63
|
end
|
70
64
|
end
|
71
65
|
|
72
|
-
|
73
|
-
|
74
|
-
@@root
|
66
|
+
def self.socket_path
|
67
|
+
FileName.create(self.root, "socket", :add => :always, :type => :time)
|
75
68
|
end
|
76
69
|
end
|
77
70
|
end
|
data/lib/drbqs/version.rb
CHANGED
@@ -1,6 +1,5 @@
|
|
1
1
|
require 'drbqs/worker/serialize'
|
2
2
|
require 'drbqs/worker/forked_process'
|
3
|
-
require 'drbqs/utility/temporary.rb'
|
4
3
|
|
5
4
|
module DRbQS
|
6
5
|
class Worker
|
@@ -160,6 +159,9 @@ module DRbQS
|
|
160
159
|
data << h[:in].read_nonblock(READ_BYTE_SIZE)
|
161
160
|
end
|
162
161
|
rescue IO::WaitReadable
|
162
|
+
rescue
|
163
|
+
$stderr.puts "Stored data: " + data.inspect
|
164
|
+
raise
|
163
165
|
end
|
164
166
|
if !data.empty?
|
165
167
|
num += 1
|
@@ -5,7 +5,7 @@ require 'drbqs/command_line/command_line'
|
|
5
5
|
describe DRbQS::Command::Base do
|
6
6
|
context "when executing" do
|
7
7
|
it "should execute." do
|
8
|
-
setting =
|
8
|
+
setting = double('setting')
|
9
9
|
DRbQS::Setting::Base.stub(:new).and_return(setting)
|
10
10
|
setting.should_receive(:parse!)
|
11
11
|
setting.should_receive(:exec).with($stdout)
|
@@ -16,7 +16,7 @@ describe DRbQS::Command::Base do
|
|
16
16
|
|
17
17
|
it "should define DRbQS::Command::Base.exec." do
|
18
18
|
argv = [1, 2, 3]
|
19
|
-
obj =
|
19
|
+
obj = double
|
20
20
|
DRbQS::Command::Base.should_receive(:new).and_return(obj)
|
21
21
|
obj.should_receive(:parse_option)
|
22
22
|
obj.should_receive(:exec)
|
data/spec/config/config_spec.rb
CHANGED
@@ -3,10 +3,11 @@ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
|
3
3
|
describe DRbQS::Config do
|
4
4
|
before(:all) do
|
5
5
|
FileUtils.mkdir_p(HOME_FOR_SPEC)
|
6
|
+
@config = DRbQS::Config.new
|
6
7
|
end
|
7
8
|
|
8
9
|
subject do
|
9
|
-
|
10
|
+
@config
|
10
11
|
end
|
11
12
|
|
12
13
|
context "when setting new homedirectory" do
|
@@ -33,14 +34,14 @@ describe DRbQS::Config do
|
|
33
34
|
|
34
35
|
it "should get directory existing." do
|
35
36
|
lambda do
|
36
|
-
|
37
|
+
DRbQS::Config.new
|
37
38
|
end.should change { File.exist?(@dir) }.from(false).to(true)
|
38
39
|
end
|
39
40
|
end
|
40
41
|
|
41
42
|
context "when saving samples" do
|
42
43
|
before(:all) do
|
43
|
-
|
44
|
+
@config.save_sample
|
44
45
|
end
|
45
46
|
|
46
47
|
it "should get sample of ACL file." do
|
@@ -58,7 +59,7 @@ describe DRbQS::Config do
|
|
58
59
|
|
59
60
|
context "when managing ACL file" do
|
60
61
|
before(:all) do
|
61
|
-
@path =
|
62
|
+
@path = @config.directory.file_path('acl.txt')
|
62
63
|
FileUtils.rm(@path) if File.exist?(@path)
|
63
64
|
end
|
64
65
|
|
@@ -8,13 +8,14 @@ describe DRbQS::ProcessDefinition do
|
|
8
8
|
end
|
9
9
|
|
10
10
|
context "when creating without default process names" do
|
11
|
-
|
12
|
-
DRbQS::ProcessDefinition.new(nil, nil, nil)
|
11
|
+
before(:all) do
|
12
|
+
@process_def = DRbQS::ProcessDefinition.new(nil, nil, nil)
|
13
|
+
@process_def.load(definition_file('execute1.rb'))
|
14
|
+
@info = @process_def.information
|
13
15
|
end
|
14
16
|
|
15
|
-
|
16
|
-
|
17
|
-
@info = subject.information
|
17
|
+
subject do
|
18
|
+
@process_def
|
18
19
|
end
|
19
20
|
|
20
21
|
it "should get server list." do
|
@@ -68,13 +69,14 @@ describe DRbQS::ProcessDefinition do
|
|
68
69
|
end
|
69
70
|
|
70
71
|
context "when there is no definition" do
|
71
|
-
|
72
|
-
DRbQS::ProcessDefinition.new(nil, nil, nil)
|
72
|
+
before(:all) do
|
73
|
+
@process_def = DRbQS::ProcessDefinition.new(nil, nil, nil)
|
74
|
+
@process_def.load(definition_file('no_def.rb'))
|
75
|
+
@info = @process_def.information
|
73
76
|
end
|
74
77
|
|
75
|
-
|
76
|
-
|
77
|
-
@info = subject.information
|
78
|
+
subject do
|
79
|
+
@process_def
|
78
80
|
end
|
79
81
|
|
80
82
|
it "should get server list." do
|
@@ -117,9 +119,9 @@ describe DRbQS::ProcessDefinition do
|
|
117
119
|
@tmp = '/tmp/drbqs_tmp_log' # defined in execute1.rb
|
118
120
|
@process_def = DRbQS::ProcessDefinition.new(nil, nil, @port)
|
119
121
|
@process_def.load(definition_file('execute1.rb'))
|
120
|
-
@server_setting =
|
121
|
-
@node_local_setting =
|
122
|
-
@node_ssh_setting =
|
122
|
+
@server_setting = @process_def.__send__(:get_server_setting)[1][:setting]
|
123
|
+
@node_local_setting = @process_def.__send__(:get_node_data, :node_local)[:setting]
|
124
|
+
@node_ssh_setting = @process_def.__send__(:get_node_data, :node_ssh)[:setting]
|
123
125
|
end
|
124
126
|
|
125
127
|
subject do
|
@@ -153,8 +155,8 @@ describe DRbQS::ProcessDefinition do
|
|
153
155
|
@tmp = '/tmp/drbqs_tmp_log' # defined in execute1.rb
|
154
156
|
@process_def = DRbQS::ProcessDefinition.new(nil, [:node_local], nil)
|
155
157
|
@process_def.load(definition_file('execute1.rb'))
|
156
|
-
@server_setting =
|
157
|
-
@node_local_setting =
|
158
|
+
@server_setting = @process_def.__send__(:get_server_setting)[1][:setting]
|
159
|
+
@node_local_setting = @process_def.__send__(:get_node_data, :node_local)[:setting]
|
158
160
|
end
|
159
161
|
|
160
162
|
subject do
|
@@ -186,9 +188,9 @@ describe DRbQS::ProcessDefinition do
|
|
186
188
|
@tmp = '/tmp/drbqs_tmp_log' # defined in execute1.rb
|
187
189
|
@process_def = DRbQS::ProcessDefinition.new(nil, nil, nil)
|
188
190
|
@process_def.load(definition_file('execute2.rb'))
|
189
|
-
@server_setting =
|
190
|
-
@node_local_setting =
|
191
|
-
@node_ssh_setting =
|
191
|
+
@server_setting = @process_def.__send__(:get_server_setting)[1][:setting]
|
192
|
+
@node_local_setting = @process_def.__send__(:get_node_data, :node_local)[:setting]
|
193
|
+
@node_ssh_setting = @process_def.__send__(:get_node_data, :node_ssh)[:setting]
|
192
194
|
end
|
193
195
|
|
194
196
|
subject do
|
@@ -201,4 +203,49 @@ describe DRbQS::ProcessDefinition do
|
|
201
203
|
subject.execute_node
|
202
204
|
end
|
203
205
|
end
|
206
|
+
|
207
|
+
|
208
|
+
context "when testing consistency" do
|
209
|
+
before(:each) do
|
210
|
+
@process_def = DRbQS::ProcessDefinition.new(nil, nil, nil)
|
211
|
+
end
|
212
|
+
|
213
|
+
subject do
|
214
|
+
@process_def
|
215
|
+
end
|
216
|
+
|
217
|
+
it "should not raise error" do
|
218
|
+
subject.register.default(:server => :server_existent)
|
219
|
+
subject.register.server(:server_existent, "example.com") do |server, ssh|
|
220
|
+
end
|
221
|
+
lambda do
|
222
|
+
subject.test_consistency
|
223
|
+
end.should_not raise_error
|
224
|
+
end
|
225
|
+
|
226
|
+
it "should should raise error" do
|
227
|
+
subject.register.default(:server => :server_non_existent)
|
228
|
+
lambda do
|
229
|
+
subject.test_consistency
|
230
|
+
end.should_not raise_error
|
231
|
+
end
|
232
|
+
|
233
|
+
it "should not raise error" do
|
234
|
+
subject.register.default(:node => [:node1, :node2])
|
235
|
+
subject.register.node(:node1) do |node|
|
236
|
+
end
|
237
|
+
subject.register.node(:node2) do |node|
|
238
|
+
end
|
239
|
+
lambda do
|
240
|
+
subject.test_consistency
|
241
|
+
end.should_not raise_error
|
242
|
+
end
|
243
|
+
|
244
|
+
it "should raise an error for non-existent node" do
|
245
|
+
subject.register.default(:node => [:node1, :node2])
|
246
|
+
lambda do
|
247
|
+
subject.test_consistency
|
248
|
+
end.should raise_error
|
249
|
+
end
|
250
|
+
end
|
204
251
|
end
|
@@ -42,7 +42,7 @@ describe DRbQS::ProcessDefinition::Register do
|
|
42
42
|
it "should raise error for arguments without hostname." do
|
43
43
|
load_file = 'file.rb'
|
44
44
|
lambda do
|
45
|
-
subject.server(:server3) do |server|
|
45
|
+
subject.server(:server3) do |server, ssh|
|
46
46
|
server.load load_file
|
47
47
|
end
|
48
48
|
end.should raise_error
|
@@ -78,6 +78,14 @@ describe DRbQS::ProcessDefinition::Register do
|
|
78
78
|
setting.get(:shell).should == [bash]
|
79
79
|
setting.mode_setting.get(:load).should == [load_file]
|
80
80
|
end
|
81
|
+
|
82
|
+
it "should raise an error for invalid keys" do
|
83
|
+
lambda do
|
84
|
+
subject.server(:server6, "example.com", :invalid_key => "Hello") do |server|
|
85
|
+
ssh.shell "bash"
|
86
|
+
end
|
87
|
+
end.should raise_error
|
88
|
+
end
|
81
89
|
end
|
82
90
|
|
83
91
|
context "when registering a node" do
|
@@ -158,6 +166,15 @@ describe DRbQS::ProcessDefinition::Register do
|
|
158
166
|
subject.node(:node_group, :group => :node_error)
|
159
167
|
end.should raise_error
|
160
168
|
end
|
169
|
+
|
170
|
+
it "should raise an error for invalid keys" do
|
171
|
+
uri = 'druby://:12345'
|
172
|
+
lambda do
|
173
|
+
subject.node(:node_error, :invalid_key => "Hello") do |node|
|
174
|
+
node.connect uri
|
175
|
+
end
|
176
|
+
end.should raise_error
|
177
|
+
end
|
161
178
|
end
|
162
179
|
|
163
180
|
context "when loading other server difinition" do
|
@@ -452,20 +469,25 @@ describe DRbQS::ProcessDefinition::Register do
|
|
452
469
|
h[:node].should == nodes
|
453
470
|
end
|
454
471
|
|
455
|
-
it "should set default value
|
456
|
-
subject.default(:log => '/tmp/drbqs/log'
|
472
|
+
it "should set default value of log file." do
|
473
|
+
subject.default(:log => '/tmp/drbqs/log')
|
457
474
|
h = subject.__default__
|
458
475
|
h[:log].should == '/tmp/drbqs/log'
|
459
|
-
h[:some_key].should == 'some_value'
|
460
476
|
end
|
461
477
|
|
462
478
|
it "should clear values." do
|
463
|
-
subject.default(
|
464
|
-
subject.default_clear(:
|
479
|
+
subject.default(:log => 'val1', :port => '12345', :server => :server1)
|
480
|
+
subject.default_clear(:log, :port)
|
465
481
|
h = subject.__default__
|
466
|
-
h[:
|
467
|
-
h[:
|
468
|
-
h[:
|
482
|
+
h[:log].should be_nil
|
483
|
+
h[:port].should be_nil
|
484
|
+
h[:server].should == :server1
|
485
|
+
end
|
486
|
+
|
487
|
+
it "should raise an error for invalid keys" do
|
488
|
+
lambda do
|
489
|
+
subject.default(:invalid_key => 'val1')
|
490
|
+
end.should raise_error
|
469
491
|
end
|
470
492
|
end
|
471
493
|
end
|
@@ -1,16 +1,14 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
|
2
2
|
|
3
|
-
require 'drbqs/ext/task'
|
4
|
-
|
5
3
|
describe DRbQS::CommandTask::CommandExecute do
|
6
4
|
it "should execute command" do
|
7
|
-
cmd_exec = DRbQS::CommandTask::CommandExecute.new('ls > /dev/null')
|
8
|
-
cmd_exec.exec.should == 0
|
5
|
+
cmd_exec = DRbQS::CommandTask::CommandExecute.new(['ls > /dev/null', "echo hello > /dev/null"])
|
6
|
+
cmd_exec.exec.should == [0, 0]
|
9
7
|
end
|
10
8
|
|
11
9
|
it "should enqueue files" do
|
12
10
|
DRbQS::Transfer.should_receive(:enqueue).exactly(2)
|
13
11
|
cmd_exec = DRbQS::CommandTask::CommandExecute.new('ls > /dev/null', :transfer => ['hello', 'world'])
|
14
|
-
cmd_exec.exec
|
12
|
+
cmd_exec.exec.should == [0]
|
15
13
|
end
|
16
14
|
end
|
data/spec/node/node_spec.rb
CHANGED
@@ -24,12 +24,12 @@ describe DRbQS::Node do
|
|
24
24
|
it "should connect to server." do
|
25
25
|
node_number = 10
|
26
26
|
DRb::DRbObject.should_receive(:new_with_uri).and_return(@drb_object)
|
27
|
-
node_connection =
|
27
|
+
node_connection = double('node connection')
|
28
28
|
node_connection.stub(:node_number).and_return(node_number)
|
29
29
|
node_connection.stub(:get_initialization).and_return(nil)
|
30
|
-
task_client =
|
30
|
+
task_client = double('task client')
|
31
31
|
task_client.stub(:node_number).and_return(node_number)
|
32
|
-
worker =
|
32
|
+
worker = double('worker')
|
33
33
|
worker.stub(:create_process)
|
34
34
|
worker.stub(:on_error)
|
35
35
|
worker.stub(:on_result)
|
@@ -108,7 +108,7 @@ describe DRbQS::Node::TaskClient do
|
|
108
108
|
@task_id = 3
|
109
109
|
@task_ary = [[1, 3, 5, 7], :size, []]
|
110
110
|
add_task_to_tuplespace(@task_id, @task_ary)
|
111
|
-
@get_task_id =
|
111
|
+
@get_task_id = @task_client.add_new_task(1)
|
112
112
|
end
|
113
113
|
|
114
114
|
it "should have non empty task queue." do
|
@@ -138,8 +138,8 @@ describe DRbQS::Node::TaskClient do
|
|
138
138
|
@task_id = 8
|
139
139
|
@task_ary = [[1, 3, 5, 7], :size, []]
|
140
140
|
add_task_to_tuplespace(@task_id, @task_ary)
|
141
|
-
@get_task_id =
|
142
|
-
@dequeued_task =
|
141
|
+
@get_task_id = @task_client.add_new_task(1)
|
142
|
+
@dequeued_task = @task_client.dequeue_task
|
143
143
|
end
|
144
144
|
|
145
145
|
it "should get a task" do
|
@@ -165,9 +165,9 @@ describe DRbQS::Node::TaskClient do
|
|
165
165
|
@task_id = 27
|
166
166
|
@task_ary = ["abcdef", :size, []]
|
167
167
|
add_task_to_tuplespace(@task_id, @task_ary)
|
168
|
-
@get_task_id =
|
169
|
-
@dequeued_task =
|
170
|
-
|
168
|
+
@get_task_id = @task_client.add_new_task(1)
|
169
|
+
@dequeued_task = @task_client.dequeue_task
|
170
|
+
@task_client.queue_result(1, :result_object)
|
171
171
|
end
|
172
172
|
|
173
173
|
it "should have empty task queue." do
|
@@ -189,10 +189,10 @@ describe DRbQS::Node::TaskClient do
|
|
189
189
|
@task_id = 28
|
190
190
|
@task_ary = ["abcdef", :size, []]
|
191
191
|
add_task_to_tuplespace(@task_id, @task_ary)
|
192
|
-
|
193
|
-
@dequeued_task =
|
194
|
-
|
195
|
-
@send_returned_value =
|
192
|
+
@task_client.add_new_task(1)
|
193
|
+
@dequeued_task = @task_client.dequeue_task
|
194
|
+
@task_client.queue_result(@task_id, :result_object)
|
195
|
+
@send_returned_value = @task_client.send_result
|
196
196
|
end
|
197
197
|
|
198
198
|
it "should get nil returned value." do
|