diff --git a/app/models/service_template_transformation_plan.rb b/app/models/service_template_transformation_plan.rb index 8cef5662b83..fcb94d60c13 100644 --- a/app/models/service_template_transformation_plan.rb +++ b/app/models/service_template_transformation_plan.rb @@ -70,9 +70,7 @@ def self.validate_config_info(options) config_info[:transformation_mapping] end - if mapping.blank? - raise _('Must provide an existing transformation mapping') - end + raise _('Must provide an existing transformation mapping') if mapping.blank? vms = if config_info[:vm_ids] VmOrTemplate.find(config_info[:vm_ids]) @@ -80,14 +78,12 @@ def self.validate_config_info(options) config_info[:vms] end - if vms.blank? - raise _('Must select a list of valid vms') - end + raise _('Must select a list of valid vms') if vms.blank? { :transformation_mapping => mapping, :vms => vms, - :provision => {} + :provision => config_info[:provision] || {} } end private_class_method :validate_config_info diff --git a/app/models/service_template_transformation_plan_request.rb b/app/models/service_template_transformation_plan_request.rb index d66002fba8d..a1332c1adfa 100644 --- a/app/models/service_template_transformation_plan_request.rb +++ b/app/models/service_template_transformation_plan_request.rb @@ -16,6 +16,7 @@ def source_vms end def validate_vm(_vm_id) + # TODO: enhance the logic to determine whether this VM can be included in this request true end diff --git a/spec/models/service_template_transformation_plan_request_spec.rb b/spec/models/service_template_transformation_plan_request_spec.rb index f99ebed1638..db7c52f7751 100644 --- a/spec/models/service_template_transformation_plan_request_spec.rb +++ b/spec/models/service_template_transformation_plan_request_spec.rb @@ -15,8 +15,10 @@ end describe 'customize_request_task_attributes' do - it 'overrides #customize_request_task_attributes' do - expect(described_class.instance_methods(false)).to include(:customize_request_task_attributes) + it 'sets the source option to be the vm in the vm_request' do + req_task_attrs = {} + request.customize_request_task_attributes(req_task_attrs, vm_requests[0]) + expect(req_task_attrs[:source]).to eq(vms[0]) end end diff --git a/spec/models/service_template_transformation_plan_spec.rb b/spec/models/service_template_transformation_plan_spec.rb index 86f78edc3b3..b33700af5c7 100644 --- a/spec/models/service_template_transformation_plan_spec.rb +++ b/spec/models/service_template_transformation_plan_spec.rb @@ -33,7 +33,6 @@ describe '.create_catalog_item' do it 'creates and returns a transformation plan' do service_template = described_class.create_catalog_item(catalog_item_options) - service_template.reload expect(service_template.name).to eq('Transformation Plan') expect(service_template.transformation_mapping).to eq(transformation_mapping) diff --git a/spec/models/service_template_transformation_plan_task_spec.rb b/spec/models/service_template_transformation_plan_task_spec.rb index 1414606dd11..ab3d3f80a4f 100644 --- a/spec/models/service_template_transformation_plan_task_spec.rb +++ b/spec/models/service_template_transformation_plan_task_spec.rb @@ -4,8 +4,11 @@ end describe '#after_request_task_create' do - it 'overrides #after_request_task_create' do - expect(described_class.instance_methods(false)).to include(:after_request_task_create) + it 'does not create child tasks' do + allow(subject).to receive(:source).and_return(double('vm', :name => 'any')) + expect(subject).not_to receive(:create_child_tasks) + expect(subject).to receive(:update_attributes).with(hash_including(:description)) + subject.after_request_task_create end end