test/variable_mapping_test.rb in trailblazer-operation-0.1.3 vs test/variable_mapping_test.rb in trailblazer-operation-0.2.0
- old
+ new
@@ -18,13 +18,15 @@
[Activity::Right, [options, flow]]
end
let (:activity) do
- Activity.build do
- task Model
- task Uuid
+ Module.new do
+ extend Activity::Path()
+
+ task task: Model
+ task task: Uuid
end
end
describe "input/output" do
@@ -32,32 +34,37 @@
model_input = ->(options) { { "a" => options["a"]+1 } }
model_output = ->(options) { { "model.a" => options["a"] } }
uuid_input = ->(options) { { "a" => options["a"]*3, "model.a" => options["model.a"] } }
uuid_output = ->(options) { { "uuid.a" => options["a"] } }
- runtime = Hash.new([])
+ runtime = {}
# add filters around Model.
- runtime[ Model ] = Activity::Magnetic::Builder::Path.plan do
- task Activity::Wrap::Input.new( model_input ), id: "task_wrap.input", before: "task_wrap.call_task"
- task Activity::Wrap::Output.new( model_output ), id: "task_wrap.output", before: "End.success", group: :end
+ runtime[ Model ] = Module.new do
+ extend Activity::Path::Plan()
+
+ task Activity::TaskWrap::Input.new( model_input ), id: "task_wrap.input", before: "task_wrap.call_task"
+ task Activity::TaskWrap::Output.new( model_output ), id: "task_wrap.output", before: "End.success", group: :end
end
# add filters around Uuid.
- runtime[ Uuid ] = Activity::Magnetic::Builder::Path.plan do
- task Activity::Wrap::Input.new( uuid_input ), id: "task_wrap.input", before: "task_wrap.call_task"
- task Activity::Wrap::Output.new( uuid_output ), id: "task_wrap.output", before: "End.success", group: :end
+ runtime[ Uuid ] = Module.new do
+ extend Activity::Path::Plan()
+
+ task Activity::TaskWrap::Input.new( uuid_input ), id: "task_wrap.input", before: "task_wrap.call_task"
+ task Activity::TaskWrap::Output.new( uuid_output ), id: "task_wrap.output", before: "End.success", group: :end
end
signal, (options, flow_options) = activity.(
[
options = { "a" => 1 },
{},
],
wrap_runtime: runtime, # dynamic additions from the outside (e.g. tracing), also per task.
- runner: Activity::Wrap::Runner,
- wrap_static: Hash.new( Activity::Wrap.initial_activity ), # per activity?
+ runner: Activity::TaskWrap::Runner,
+ argumenters: [ Activity::TaskWrap::NonStatic.method(:arguments_for_call) ],
+ wrap_static: Hash.new( Activity::TaskWrap.initial_activity ),
)
signal.must_equal activity.outputs[:success].signal
options.must_equal({"a"=>1, "model.a"=>4, "uuid.a" => 7 })
end