diff --git a/app/models/transformation_mapping.rb b/app/models/transformation_mapping.rb
index 396aab5a5844..3353414000c0 100644
--- a/app/models/transformation_mapping.rb
+++ b/app/models/transformation_mapping.rb
@@ -1,5 +1,7 @@
 class TransformationMapping < ApplicationRecord
   has_many :transformation_mapping_items, :dependent => :destroy
+  has_many :service_resources, :as => :resource
+  has_many :service_templates, :through => :service_resources
 
   validates :name, :presence => true, :uniqueness => true
 
diff --git a/spec/models/transformation_mapping_spec.rb b/spec/models/transformation_mapping_spec.rb
index 8fac97962c8b..7dccc5b63811 100644
--- a/spec/models/transformation_mapping_spec.rb
+++ b/spec/models/transformation_mapping_spec.rb
@@ -1,15 +1,15 @@
 describe TransformationMapping do
-  describe '#destination' do
-    let(:src) { FactoryGirl.create(:ems_cluster) }
-    let(:dst) { FactoryGirl.create(:ems_cluster) }
+  let(:src) { FactoryGirl.create(:ems_cluster) }
+  let(:dst) { FactoryGirl.create(:ems_cluster) }
 
-    let(:mapping) do
-      FactoryGirl.create(
-        :transformation_mapping,
-        :transformation_mapping_items => [TransformationMappingItem.new(:source => src, :destination => dst)]
-      )
-    end
+  let(:mapping) do
+    FactoryGirl.create(
+      :transformation_mapping,
+      :transformation_mapping_items => [TransformationMappingItem.new(:source => src, :destination => dst)]
+    )
+  end
 
+  describe '#destination' do
     it "finds the destination" do
       expect(mapping.destination(src)).to eq(dst)
     end
@@ -18,4 +18,13 @@
       expect(mapping.destination(FactoryGirl.create(:ems_cluster))).to be_nil
     end
   end
+
+  describe '#service_templates' do
+    let(:plan) { FactoryGirl.create(:service_template_transformation_plan) }
+    before { FactoryGirl.create(:service_resource, :resource => mapping, :service_template => plan) }
+
+    it 'finds the transformation plans' do
+      expect(mapping.service_templates).to match([plan])
+    end
+  end
 end