Merge "Reorder modifiers"
[so.git] / mso-catalog-db / src / test / java / org / openecomp / mso / db / catalog / test / CatalogDatabaseTest.java
index d65928f..b98fb43 100644 (file)
@@ -7,9 +7,9 @@
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
- * 
+ *
  *      http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
 package org.openecomp.mso.db.catalog.test;
 
-import mockit.Mock;
-import mockit.MockUp;
-import org.hibernate.HibernateException;
-import org.hibernate.NonUniqueResultException;
-import org.hibernate.Query;
-import org.hibernate.Session;
-import org.junit.Before;
-import org.junit.Test;
-import org.openecomp.mso.db.catalog.CatalogDatabase;
-import org.openecomp.mso.db.catalog.beans.AllottedResource;
-import org.openecomp.mso.db.catalog.beans.AllottedResourceCustomization;
-import org.openecomp.mso.db.catalog.beans.HeatEnvironment;
-import org.openecomp.mso.db.catalog.beans.HeatFiles;
-import org.openecomp.mso.db.catalog.beans.HeatTemplate;
-import org.openecomp.mso.db.catalog.beans.HeatTemplateParam;
-import org.openecomp.mso.db.catalog.beans.NetworkResource;
-import org.openecomp.mso.db.catalog.beans.NetworkResourceCustomization;
-import org.openecomp.mso.db.catalog.beans.Service;
-import org.openecomp.mso.db.catalog.beans.ServiceRecipe;
-import org.openecomp.mso.db.catalog.beans.ServiceToResourceCustomization;
-import org.openecomp.mso.db.catalog.beans.TempNetworkHeatTemplateLookup;
-import org.openecomp.mso.db.catalog.beans.ToscaCsar;
-import org.openecomp.mso.db.catalog.beans.VfModule;
-import org.openecomp.mso.db.catalog.beans.VfModuleCustomization;
-import org.openecomp.mso.db.catalog.beans.VfModuleToHeatFiles;
-import org.openecomp.mso.db.catalog.beans.VnfComponent;
-import org.openecomp.mso.db.catalog.beans.VnfComponentsRecipe;
-import org.openecomp.mso.db.catalog.beans.VnfRecipe;
-import org.openecomp.mso.db.catalog.beans.VnfResource;
-import org.openecomp.mso.db.catalog.beans.VnfResourceCustomization;
-import org.openecomp.mso.db.catalog.utils.RecordNotFoundException;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
 
 import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
+import org.hibernate.HibernateException;
+import org.hibernate.NonUniqueResultException;
+import org.hibernate.Query;
+import org.hibernate.Session;
+import org.junit.After;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Ignore;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.openecomp.mso.db.catalog.CatalogDatabase;
+import org.openecomp.mso.db.catalog.beans.*;
+import org.openecomp.mso.db.catalog.utils.RecordNotFoundException;
+
+import mockit.Mock;
+import mockit.MockUp;
 
 public class CatalogDatabaseTest {
 
     CatalogDatabase cd = null;
-
+    @Rule
+    public ExpectedException thrown = ExpectedException.none();
+    private MockUp<CatalogDatabase> mockCd = null;
+    private MockUp<Session> mockedSession = null;
+    private MockUp<Query> mockUpQuery = null;
+    private MockUp<Query> mockUpQuery2 = null;
+    private MockUp<Query> mockUpQuery3 = null;
+    private MockUp<Query> mockUpQuery4 = null;
     @Before
     public void setup(){
         cd = CatalogDatabase.getInstance();
     }
+    
+  
+        @After
+        public void tearDown() {
+                if (mockCd!=null) { mockCd.tearDown(); mockCd = null; }
+                if (mockedSession!=null) { mockedSession.tearDown(); mockedSession = null; }
+                if (mockUpQuery!=null) { mockUpQuery.tearDown(); mockUpQuery = null; }
+                if (mockUpQuery2!=null) { mockUpQuery2.tearDown(); mockUpQuery2 = null; }
+                if (mockUpQuery3!=null) { mockUpQuery3.tearDown(); mockUpQuery3 = null; }
+                if (mockUpQuery4!=null) { mockUpQuery4.tearDown(); mockUpQuery4 = null; }
+    }
+
 
 
     @Test
     public void getAllHeatTemplatesTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
             @Mock
             public List<HeatTemplate> list() {
                 HeatTemplate heatTemplate = new HeatTemplate();
@@ -84,14 +93,14 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
@@ -100,12 +109,14 @@ public class CatalogDatabaseTest {
 
         List <HeatTemplate> list = cd.getAllHeatTemplates();
         assertEquals(list.size(), 1);
+
+
     }
 
     @Test
     public void getHeatTemplateByIdTest(){
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Object get(Class cls, Serializable id) {
                 HeatTemplate heatTemplate = new HeatTemplate();
@@ -114,7 +125,7 @@ public class CatalogDatabaseTest {
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
@@ -123,12 +134,14 @@ public class CatalogDatabaseTest {
 
         HeatTemplate ht = cd.getHeatTemplate(10);
         assertEquals("123-uuid", ht.getAsdcUuid());
+
+
     }
 
     @Test
     public void getHeatTemplateByNameEmptyListTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
             @Mock
             public List<HeatTemplate> list() {
                 HeatTemplate heatTemplate = new HeatTemplate();
@@ -136,14 +149,14 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
@@ -152,12 +165,14 @@ public class CatalogDatabaseTest {
 
         HeatTemplate ht = cd.getHeatTemplate("heat123");
         assertEquals(null, ht);
+
+
     }
 
     @Test
     public void getHeatTemplateByNameTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
             @Mock
             public List<HeatTemplate> list() {
                 HeatTemplate heatTemplate1 = new HeatTemplate();
@@ -170,14 +185,14 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
@@ -186,12 +201,14 @@ public class CatalogDatabaseTest {
 
         HeatTemplate ht = cd.getHeatTemplate("heat123");
         assertEquals("456-uuid", ht.getAsdcUuid());
+
+
     }
 
     @Test
     public void getHeatTemplateByTemplateNameTest() {
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
             @Mock
             public List<HeatTemplate> list() {
                 HeatTemplate heatTemplate = new HeatTemplate();
@@ -200,14 +217,14 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
@@ -216,26 +233,28 @@ public class CatalogDatabaseTest {
 
         HeatTemplate ht = cd.getHeatTemplate("heat123","v2");
         assertEquals("1234-uuid", ht.getAsdcUuid());
+
+
     }
 
     @Test
     public void getHeatTemplateByTemplateNameEmptyResultTest() {
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
             @Mock
             public List<HeatTemplate> list() {
                 return Arrays.asList();
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
@@ -244,12 +263,14 @@ public class CatalogDatabaseTest {
 
         HeatTemplate ht = cd.getHeatTemplate("heat123","v2");
         assertEquals(null, ht);
+
+
     }
 
     @Test
     public void getHeatTemplateByArtifactUuidException(){
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Object get(Class cls, Serializable id) {
                 HeatTemplate heatTemplate = new HeatTemplate();
@@ -258,7 +279,7 @@ public class CatalogDatabaseTest {
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
@@ -267,12 +288,14 @@ public class CatalogDatabaseTest {
 
         HeatTemplate ht = cd.getHeatTemplateByArtifactUuid("123");
         assertEquals("123-uuid", ht.getAsdcUuid());
+
+
     }
 
     @Test
     public void getHeatTemplateByArtifactUuidTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
 
             @Mock
             public Object uniqueResult() {
@@ -282,14 +305,14 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
@@ -298,12 +321,45 @@ public class CatalogDatabaseTest {
 
         HeatTemplate ht = cd.getHeatTemplateByArtifactUuidRegularQuery("123-uuid");
         assertEquals("123-uuid", ht.getAsdcUuid());
+
+
+    }
+
+    @Test
+    public void getHeatTemplateByArtifactUuidNullTest(){
+
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() {
+                return null;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        HeatTemplate ht = cd.getHeatTemplateByArtifactUuidRegularQuery("123-uuid");
+        assertNull(ht);
+
+
     }
 
-    @Test(expected = HibernateException.class)
+    @Test
     public void getHeatTemplateByArtifactUuidHibernateErrorTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
 
             @Mock
             public Object uniqueResult() {
@@ -311,27 +367,29 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
             }
         };
-
+        thrown.expect(HibernateException.class);
         HeatTemplate ht = cd.getHeatTemplateByArtifactUuidRegularQuery("123-uuid");
+
+
     }
 
-    @Test(expected = NonUniqueResultException.class)
+    @Test
     public void getHeatTemplateByArtifactUuidNonUniqueResultTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
 
             @Mock
             public Object uniqueResult() {
@@ -339,27 +397,29 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
             }
         };
-
+        thrown.expect(NonUniqueResultException.class);
         HeatTemplate ht = cd.getHeatTemplateByArtifactUuidRegularQuery("123-uuid");
+
+
     }
 
-    @Test(expected = Exception.class)
+    @Test
     public void getHeatTemplateByArtifactUuidGenericExceptionTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
 
             @Mock
             public Object uniqueResult() throws Exception {
@@ -367,27 +427,29 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
             }
         };
-
+        thrown.expect(Exception.class);
         HeatTemplate ht = cd.getHeatTemplateByArtifactUuidRegularQuery("123-uuid");
+
+
     }
 
     @Test
     public void getParametersForHeatTemplateTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
             @Mock
             public List<HeatTemplate> list() {
                 HeatTemplate heatTemplate = new HeatTemplate();
@@ -396,14 +458,14 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
@@ -412,66 +474,73 @@ public class CatalogDatabaseTest {
 
         List<HeatTemplateParam> htList = cd.getParametersForHeatTemplate("12l3");
         assertEquals(1, htList.size());
+
+
     }
 
-    @Test(expected = HibernateException.class)
+    @Test
     public void getParametersForHeatTemplateHibernateExceptionTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
             @Mock
             public List<HeatTemplate> list() {
                 throw new HibernateException("hibernate exception");
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
             }
         };
-
+        thrown.expect(HibernateException.class);
         List<HeatTemplateParam> htList = cd.getParametersForHeatTemplate("12l3");
+  
+
+
     }
 
-    @Test(expected = Exception.class)
+    @Test
     public void getParametersForHeatTemplateExceptionTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
             @Mock
             public List<HeatTemplate> list() throws Exception {
                 throw new Exception();
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
             }
         };
-
+        thrown.expect(Exception.class);
         List<HeatTemplateParam> htList = cd.getParametersForHeatTemplate("12l3");
+
+
     }
 
     @Test
     public void getHeatEnvironmentByArtifactUuidTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
 
             @Mock
             public Object uniqueResult() {
@@ -481,14 +550,14 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
@@ -497,12 +566,14 @@ public class CatalogDatabaseTest {
 
         HeatEnvironment he = cd.getHeatEnvironmentByArtifactUuid("123");
         assertEquals("123-uuid", he.getArtifactUuid());
+
+
     }
 
-    @Test(expected = HibernateException.class)
+    @Test
     public void getHeatEnvironmentByArtifactUuidHibernateExceptionTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
 
             @Mock
             public Object uniqueResult() {
@@ -510,27 +581,29 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
             }
         };
-
+        thrown.expect(HibernateException.class);
         HeatEnvironment he = cd.getHeatEnvironmentByArtifactUuid("123");
+
+
     }
 
-    @Test(expected = Exception.class)
+    @Test
     public void getHeatEnvironmentByArtifactUuidExceptionTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
 
             @Mock
             public Object uniqueResult() throws Exception {
@@ -538,14 +611,44 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(Exception.class);
+        HeatEnvironment he = cd.getHeatEnvironmentByArtifactUuid("123");
+
+
+    }
+
+    @Test
+    public void getHeatEnvironmentByArtifactUuidNonUniqueTest(){
+
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() throws Exception {
+                throw new org.hibernate.NonUniqueResultException(2);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
@@ -553,12 +656,14 @@ public class CatalogDatabaseTest {
         };
 
         HeatEnvironment he = cd.getHeatEnvironmentByArtifactUuid("123");
+        assertNull(he);
+
     }
 
     @Test
     public void getServiceByInvariantUUIDTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
 
             @Mock
             public List<Service> list() {
@@ -568,14 +673,14 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
@@ -584,12 +689,14 @@ public class CatalogDatabaseTest {
 
         Service service = cd.getServiceByInvariantUUID("123");
         assertEquals("123-uuid", service.getModelUUID());
+
+
     }
 
     @Test
     public void getServiceByInvariantUUIDEmptyResultTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
 
             @Mock
             public List<Service> list() {
@@ -597,14 +704,14 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
@@ -613,12 +720,14 @@ public class CatalogDatabaseTest {
 
         Service service = cd.getServiceByInvariantUUID("123");
         assertEquals(null, service);
+
+
     }
 
     @Test
     public void getServiceTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
 
             @Mock
             public Object uniqueResult() throws Exception {
@@ -628,14 +737,14 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
@@ -644,12 +753,45 @@ public class CatalogDatabaseTest {
 
         Service service = cd.getService("123");
         assertEquals("123-uuid", service.getModelUUID());
+
+
+    }
+
+    @Test
+    public void getServiceNullTest(){
+
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() throws Exception {
+                return null;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        Service service = cd.getService("123");
+        assertNull(service);
+
+
     }
 
-    @Test(expected = NonUniqueResultException.class)
+    @Test
     public void getServiceNoUniqueResultTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
 
             @Mock
             public Object uniqueResult() throws Exception {
@@ -657,27 +799,29 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
             }
         };
-
+        thrown.expect(NonUniqueResultException.class);
         Service service = cd.getService("123");
+
+
     }
 
-    @Test(expected = HibernateException.class)
+    @Test
     public void getServiceHibernateExceptionTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
 
             @Mock
             public Object uniqueResult() throws Exception {
@@ -685,27 +829,29 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
             }
         };
-
+        thrown.expect(HibernateException.class);
         Service service = cd.getService("123");
+
+
     }
 
-    @Test(expected = Exception.class)
+    @Test
     public void getServiceExceptionTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
 
             @Mock
             public Object uniqueResult() throws Exception {
@@ -713,27 +859,29 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
             }
         };
-
+        thrown.expect(Exception.class);
         Service service = cd.getService("123");
+
+
     }
 
     @Test
     public void getServiceByModelUUIDTest(){
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
 
             @Mock
             public Object uniqueResult() throws Exception {
@@ -743,14 +891,14 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
@@ -758,11 +906,13 @@ public class CatalogDatabaseTest {
         };
         Service service = cd.getServiceByModelUUID("123");
         assertEquals("123-uuid", service.getModelUUID());
+
+
     }
 
     @Test
     public void getService2Test(){
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+        mockUpQuery = new MockUp<Query>() {
 
             @Mock
             public Object uniqueResult() throws Exception {
@@ -772,14 +922,14 @@ public class CatalogDatabaseTest {
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
@@ -791,739 +941,5215 @@ public class CatalogDatabaseTest {
         Service service = cd.getService(map, "123");
 
         assertEquals("123-uuid", service.getModelUUID());
+
+        map.remove("serviceNameVersionId");
+        service = cd.getService(map, "123");
+        assertNotNull(service);
     }
 
     @Test
-    public void getServiceByModelNameTest(){
+    public void getService2NonUniqueTest(){
+        mockUpQuery = new MockUp<Query>() {
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
             @Mock
-            public List<Service> list() throws Exception {
-                Service service = new Service();
-                service.setModelUUID("123-uuid");
-                return Arrays.asList(service);
+            public Object uniqueResult() throws Exception {
+               throw new org.hibernate.NonUniqueResultException(2);
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
             }
         };
 
-        Service service = cd.getServiceByModelName("123");
-        assertEquals("123-uuid", service.getModelUUID());
+        HashMap<String, String> map = new HashMap<>();
+        map.put("serviceNameVersionId", "v2");
+
+        thrown.expect(org.hibernate.NonUniqueResultException.class);
+        Service service = cd.getService(map, "123");
     }
 
     @Test
-    public void getServiceByModelNameEmptyTest(){
+    public void getService2HibernateExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
             @Mock
-            public List<Service> list() throws Exception {
-                return Arrays.asList();
+            public Object uniqueResult() throws Exception {
+               throw new org.hibernate.HibernateException("test case");
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
             }
         };
 
-        Service service = cd.getServiceByModelName("123");
-        assertEquals(null, service);
+        HashMap<String, String> map = new HashMap<>();
+        map.put("serviceNameVersionId", "v2");
+        
+        thrown.expect(org.hibernate.HibernateException.class);
+        Service service = cd.getService(map, "123");
     }
 
     @Test
-    public void getServiceByVersionAndInvariantIdTest() throws Exception{
-
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+    public void getService2ExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
 
-            @Mock
+               @Mock
             public Object uniqueResult() throws Exception {
-                Service service = new Service();
-                service.setModelUUID("123-uuid");
-                return service;
+               throw new NullPointerException();
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
             }
         };
-        Service service = cd.getServiceByVersionAndInvariantId("123","tetwe");
-        assertEquals("123-uuid", service.getModelUUID());
-    }
 
-    @Test(expected = Exception.class)
-    public void getServiceByVersionAndInvariantIdNonUniqueResultTest() throws Exception{
+        HashMap<String, String> map = new HashMap<>();
+        map.put("serviceNameVersionId", "v2");
+        
+        thrown.expect(NullPointerException.class);
+        Service service = cd.getService(map, "123");
+    }
 
-        MockUp<Query> mockUpQuery = new MockUp<Query>() {
+    @Test
+    public void getService2NullTest(){
+        mockUpQuery = new MockUp<Query>() {
 
             @Mock
             public Object uniqueResult() throws Exception {
-                throw new NonUniqueResultException(-1);
+                return null;
             }
         };
 
-        MockUp<Session> mockedSession = new MockUp<Session>() {
+        mockedSession = new MockUp<Session>() {
             @Mock
             public Query createQuery(String hql) {
                 return mockUpQuery.getMockInstance();
             }
         };
 
-        new MockUp<CatalogDatabase>() {
+        mockCd = new MockUp<CatalogDatabase>() {
             @Mock
             private Session getSession() {
                 return mockedSession.getMockInstance();
             }
         };
-        Service service = cd.getServiceByVersionAndInvariantId("123","tetwe");
-    }
 
-    @Test(expected = Exception.class)
-    public void getServiceRecipeTestException() throws Exception{
-        ServiceRecipe ht = cd.getServiceRecipe("123","tetwe");
+        HashMap<String, String> map = new HashMap<>();
+        map.put("serviceNameVersionId", "v2");
+        
+        Service service = cd.getService(map, "123");
+        assertNull(service);
     }
 
-    @Test(expected = Exception.class)
-    public void getServiceRecipeByServiceModelUuidTestException() throws Exception{
-        ServiceRecipe ht = cd.getServiceRecipeByServiceModelUuid("123","tetwe");
-    }
+    @Test
+    public void getServiceByModelNameTest(){
 
-    @Test(expected = Exception.class)
-    public void getServiceRecipesTestException() throws Exception{
-        List<ServiceRecipe> ht = cd.getServiceRecipes("123");
-    }
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<Service> list() throws Exception {
+                Service service = new Service();
+                service.setModelUUID("123-uuid");
+                return Arrays.asList(service);
+            }
+        };
 
-    @Test(expected = Exception.class)
-    public void getVnfComponentTestException() throws Exception{
-        VnfComponent ht = cd.getVnfComponent(123,"vnf");
-    }
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
 
-    @Test(expected = Exception.class)
-    public void getVnfResourceTestException() throws Exception{
-        VnfResource ht = cd.getVnfResource("vnf");
-    }
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
 
-    @Test(expected = Exception.class)
-    public void getVnfResource2TestException() throws Exception{
-        VnfResource ht = cd.getVnfResource("vnf","3992");
-    }
+        Service service = cd.getServiceByModelName("123");
+        assertEquals("123-uuid", service.getModelUUID());
 
-    @Test(expected = Exception.class)
-    public void getVnfResourceByModelCustomizationIdTestException() throws Exception{
-        VnfResource ht = cd.getVnfResourceByModelCustomizationId("3992");
-    }
 
-    @Test(expected = Exception.class)
-    public void getServiceRecipeTest2Exception() throws Exception{
-        ServiceRecipe ht = cd.getServiceRecipe(1001,"3992");
     }
 
-    @Test(expected = Exception.class)
-    public void getVnfResourceCustomizationByModelCustomizationNameTestException(){
-        VnfResourceCustomization vnf = cd.getVnfResourceCustomizationByModelCustomizationName("test", "test234");
-    }
+    @Test
+    public void getServiceByModelNameEmptyTest(){
 
-    @Test(expected = Exception.class)
-    public void getVnfResourceByModelInvariantIdTestException(){
-        VnfResource vnf = cd.getVnfResourceByModelInvariantId("test", "test234");
-    }
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<Service> list() throws Exception {
+                return Arrays.asList();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        Service service = cd.getServiceByModelName("123");
+        assertEquals(null, service);
+
+
+    }
+
+    @Test
+    public void getServiceByVersionAndInvariantIdTest() throws Exception{
+
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() throws Exception {
+                Service service = new Service();
+                service.setModelUUID("123-uuid");
+                return service;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        Service service = cd.getServiceByVersionAndInvariantId("123","tetwe");
+        assertEquals("123-uuid", service.getModelUUID());
+
+
+    }
+
+    @Test
+    public void getServiceByVersionAndInvariantIdNullTest() throws Exception{
+
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() throws Exception {
+                return null;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        Service service = cd.getServiceByVersionAndInvariantId("123","tetwe");
+        assertNull(service);
+
+
+    }
+
+    @Test
+    public void getServiceByVersionAndInvariantIdNonUniqueResultTest() throws Exception{
+
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() throws Exception {
+                throw new NonUniqueResultException(-1);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(Exception.class);
+        Service service = cd.getServiceByVersionAndInvariantId("123","tetwe");
+
+
+    }
+
+    @Test
+    public void getServiceRecipeTestException() throws Exception{
+       thrown.expect(Exception.class);
+        ServiceRecipe ht = cd.getServiceRecipe("123","tetwe");
+    }
+
+    @Test
+    public void getServiceRecipeByServiceModelUuidTest() {
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<ServiceRecipe> list() throws Exception {
+                ServiceRecipe serviceRecipe = new ServiceRecipe();
+                serviceRecipe.setId(1);
+                return Arrays.asList(serviceRecipe);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        ServiceRecipe serviceRecipe = cd.getServiceRecipeByServiceModelUuid("123","tetwe");
+        assertEquals(1, serviceRecipe.getId());
+
+        serviceRecipe = cd.getServiceRecipeByServiceModelUuid("123", null);
+        assertEquals(1, serviceRecipe.getId());
+    }
+
+    @Test
+    public void getServiceRecipeByServiceModelUuidEmptyTest() {
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<ServiceRecipe> list() throws Exception {
+                return Arrays.asList();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        ServiceRecipe serviceRecipe = cd.getServiceRecipeByServiceModelUuid("123","tetwe");
+        assertEquals(null, serviceRecipe);
+
+
+    }
+
+    @Test
+    public void getServiceRecipesTestException() throws Exception{
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<ServiceRecipe> list() {
+                ServiceRecipe serviceRecipe = new ServiceRecipe();
+                serviceRecipe.setId(1);
+                return Arrays.asList(serviceRecipe);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        List<ServiceRecipe> serviceRecipes = cd.getServiceRecipes("123");
+        assertEquals(1, serviceRecipes.size());
+
+
+    }
+
+    @Test
+    public void getServiceRecipesEmptyTest() throws Exception{
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<ServiceRecipe> list() {
+                return Arrays.asList();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        List<ServiceRecipe> serviceRecipes = cd.getServiceRecipes("123");
+        assertEquals(0, serviceRecipes.size());
+
+
+    }
+
+    @Test
+    public void getVnfComponentTest() throws Exception{
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public Object uniqueResult() {
+               VnfComponent vnfComponent = new VnfComponent();
+               vnfComponent.setHeatTemplateId(1234);
+                return vnfComponent;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VnfComponent ht = cd.getVnfComponent(123,"vnf");
+        assertEquals(new Integer(1234), ht.getHeatTemplateId());
+    }
+
+    @Test
+    public void getVnfComponentNullTest() throws Exception{
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public Object uniqueResult() {
+                return null;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VnfComponent ht = cd.getVnfComponent(123,"vnf");
+        assertNull(ht);
+    }
+
+    @Test
+    public void getVnfComponentNonUniqueTest() throws Exception{
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public Object uniqueResult() {
+               throw new org.hibernate.NonUniqueResultException(2);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        thrown.expect(org.hibernate.NonUniqueResultException.class);
+        VnfComponent ht = cd.getVnfComponent(123,"vnf");
+    }
+
+    @Test
+    public void getVnfComponentHibernateExceptionTest() throws Exception{
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public Object uniqueResult() {
+               throw new org.hibernate.HibernateException("test case");
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        thrown.expect(org.hibernate.HibernateException.class);
+        VnfComponent ht = cd.getVnfComponent(123,"vnf");
+    }
+
+    @Test
+    public void getVnfComponentExceptionTest() throws Exception{
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public Object uniqueResult() {
+               throw new NullPointerException();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        thrown.expect(NullPointerException.class);
+        VnfComponent ht = cd.getVnfComponent(123,"vnf");
+    }
+
+    @Test
+    public void getVnfResourceTest() throws Exception{
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VnfResource> list() {
+                VnfResource vnfResource = new VnfResource();
+                vnfResource.setModelUuid("123-uuid");
+                return Arrays.asList(vnfResource);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        VnfResource vnfResource = cd.getVnfResourceByType("vnf");
+        assertEquals("123-uuid", vnfResource.getModelUuid());
+
+
+    }
+
+    @Test
+    public void getVnfResourceEmptyTest() throws Exception{
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VnfResource> list() {
+                return Arrays.asList();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        VnfResource vnfResource = cd.getVnfResourceByType("vnf");
+        assertEquals(null, vnfResource);
+
+
+    }
+
+    @Test
+    public void getVnfResourceByTypeTest() {
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() {
+                VnfResource vnfResource = new VnfResource();
+                vnfResource.setModelUuid("123-uuid");
+                return vnfResource;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        VnfResource vnfResource = cd.getVnfResource("vnf","3992");
+        assertEquals("123-uuid", vnfResource.getModelUuid());
+
+
+    }
+
+    @Test
+    public void getVnfResourceNURExceptionTest() {
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() {
+                throw new NonUniqueResultException(-1);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(NonUniqueResultException.class);
+        VnfResource vnfResource = cd.getVnfResource("vnf","3992");
+
+
+    }
+
+    @Test
+    public void getVnfResourceHibernateExceptionTest() {
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() {
+                throw new HibernateException("hibernate exception");
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(HibernateException.class);
+        VnfResource vnfResource = cd.getVnfResource("vnf","3992");
+
+
+    }
+
+    @Test
+    public void getVnfResourceExceptionTest() {
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() throws Exception {
+                throw new Exception();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(Exception.class);
+        VnfResource vnfResource = cd.getVnfResource("vnf","3992");
+
+
+    }
+
+    @Test
+    public void getVnfResourceByModelCustomizationIdTest() {
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() throws Exception {
+                VnfResource vnfResource = new VnfResource();
+                vnfResource.setModelUuid("123-uuid");
+                return vnfResource;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VnfResource vnfResource = cd.getVnfResourceByModelCustomizationId("3992");
+        assertEquals("123-uuid",vnfResource.getModelUuid());
+
+
+    }
+
+    @Test
+    public void getVnfResourceByModelCustomizationIdNullTest() {
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public Object uniqueResult() throws Exception {
+                return null;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VnfResource vnfResource = cd.getVnfResourceByModelCustomizationId("3992");
+        assertNull(vnfResource);
+    }
+
+    @Test
+    public void getVnfResourceByModelCustomizationIdNURExceptionTest() {
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() throws Exception {
+                throw new NonUniqueResultException(-1);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(NonUniqueResultException.class);
+        VnfResource vnfResource = cd.getVnfResourceByModelCustomizationId("3992");
+
+
+    }
+
+    @Test
+    public void getVnfResourceByModelCustomizationIdHibernateExceptionTest() {
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() throws Exception {
+                throw new HibernateException("hibernate exception");
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(HibernateException.class);
+        VnfResource vnfResource = cd.getVnfResourceByModelCustomizationId("3992");
+    }
+
+    @Test
+    public void getVnfResourceByModelCustomizationIdExceptionTest() {
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() throws Exception {
+                throw new NullPointerException();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(NullPointerException.class);
+        VnfResource vnfResource = cd.getVnfResourceByModelCustomizationId("3992");
+    }
+
+
+    @Test
+    public void getServiceRecipeTest2() throws Exception{
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List <ServiceRecipe> list() throws Exception {
+                ServiceRecipe serviceRecipe = new ServiceRecipe();
+                serviceRecipe.setServiceModelUUID("123-uuid");
+                return Arrays.asList(serviceRecipe);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        ServiceRecipe ht = cd.getServiceRecipe(1001,"3992");
+        assertEquals("123-uuid", ht.getServiceModelUUID());
+        
+        ht = cd.getServiceRecipe(1001, null);
+        assertEquals("123-uuid", ht.getServiceModelUUID());
+        
+    }
+
+    @Test
+    public void getServiceRecipeTest2Exception() throws Exception{
+       thrown.expect(Exception.class);
+        ServiceRecipe ht = cd.getServiceRecipe(1001,"3992");
+    }
+
+    @Test
+    public void getVnfResourceCustomizationByModelCustomizationNameTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VnfResourceCustomization> list() throws Exception {
+                VnfResourceCustomization vnfResourceCustomization = new VnfResourceCustomization();
+                vnfResourceCustomization.setVnfResourceModelUUID("123-uuid");
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        VnfResourceCustomization vnf = cd.getVnfResourceCustomizationByModelCustomizationName("test", "test234");
+        assertEquals("123-uuid", vnf.getVnfResourceModelUUID());
+
+
+    }
+
+    @Test
+    public void getVnfResourceCustomizationByModelCustomizationNameEmptyTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VnfResourceCustomization> list() throws Exception {
+                return Arrays.asList();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        VnfResourceCustomization vnf = cd.getVnfResourceCustomizationByModelCustomizationName("test", "test234");
+        assertEquals(null, vnf);
+
+
+    }
+
+    @Test
+    public void getVnfResourceByModelInvariantIdTest(){
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult(){
+                VnfResource vnfResource = new VnfResource();
+                vnfResource.setModelUuid("123-uuid");
+                return vnfResource;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        VnfResource vnf = cd.getVnfResourceByModelInvariantId("test", "test234");
+        assertEquals("123-uuid", vnf.getModelUuid());
+
+
+    }
+
+    @Test
+    public void getVnfResourceByModelInvariantIdNURExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult(){
+                throw new NonUniqueResultException(-1);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(NonUniqueResultException.class);
+        VnfResource vnf = cd.getVnfResourceByModelInvariantId("test", "test234");
+
+
+    }
+
+    @Test
+    public void getVnfResourceByModelInvariantIdHibernateExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult(){
+                throw new HibernateException("hibernate exception");
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(HibernateException.class);
+        VnfResource vnf = cd.getVnfResourceByModelInvariantId("test", "test234");
+
+
+    }
+
+    @Test
+    public void getVnfResourceByModelInvariantIdExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() throws Exception {
+                throw new Exception();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(Exception.class);
+        VnfResource vnf = cd.getVnfResourceByModelInvariantId("test", "test234");
+
+
+    }
+
+    @Test
+    public void getVnfResourceByIdTestException(){
+        mockUpQuery = new MockUp<Query>() {
+               int id = 0;
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       id = (Integer)val;
+                       return this.getMockInstance();
+               }
+               
+            @Mock
+            public List<VnfResource> list() throws Exception {
+               if (id==0) return new ArrayList<VnfResource>();
+               VnfResource vm = new VnfResource();
+               vm.setModelInvariantUuid(Integer.toString(id));
+                return Arrays.asList(vm);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
 
-    @Test(expected = Exception.class)
-    public void getVnfResourceByIdTestException(){
         VnfResource vnf = cd.getVnfResourceById(19299);
+        assertEquals("19299", vnf.getModelInvariantUuid());
+
+               vnf = cd.getVnfResourceById(0);
+               assertNull(vnf);
+    }
+
+    @Test
+    public void getVfModuleModelName(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VfModule> list() throws Exception {
+                VfModule vfModule = new VfModule();
+                vfModule.setModelUUID("123-uuid");
+                return Arrays.asList(vfModule);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        VfModule vfModule = cd.getVfModuleModelName("vfmodule");
+        assertEquals("123-uuid", vfModule.getModelUUID());
+
+
+    }
+
+    @Test
+    public void getVfModuleModelNameExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VfModule> list() throws Exception {
+                return Arrays.asList();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        VfModule vfModule = cd.getVfModuleModelName("vfmodule");
+        assertEquals(null, vfModule);
+
+
+    }
+
+    @Test
+    public void getVfModuleModelNameTest() {
+        mockUpQuery = new MockUp<Query>() {
+               String modelVersion = null;
+               
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("model_version")) modelVersion = (String)val;
+                       return this.getMockInstance();
+               }
+
+            @Mock
+            public Object uniqueResult() {
+               if (modelVersion==null || modelVersion.equals("nil")) {
+                       return null;
+               }
+                VfModule vfModule = new VfModule();
+                vfModule.setModelUUID("123-uuid");
+                return vfModule;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VfModule vfModule = cd.getVfModuleModelName("tetes","4kidsl");
+        assertEquals("123-uuid", vfModule.getModelUUID());
+
+        vfModule = cd.getVfModuleModelName("tetes","nil");
+        assertNull(vfModule);
+    }
+
+    @Test
+    public void getVfModuleModelNameNURExceptionTest() {
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() {
+                throw new NonUniqueResultException(-1);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(NonUniqueResultException.class);
+        VfModule vfModule = cd.getVfModuleModelName("tetes","4kidsl");
+
+
+    }
+
+    @Test
+    public void getVfModuleModelNameHibernateExceptionTest() {
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() {
+                throw new HibernateException("hibernate exception");
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(HibernateException.class);
+        VfModule vfModule = cd.getVfModuleModelName("tetes","4kidsl");
+
+
+    }
+
+    @Test
+    public void getVfModuleModelNameGenericExceptionTest() {
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() throws Exception {
+                throw new Exception();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(Exception.class);
+        VfModule vfModule = cd.getVfModuleModelName("tetes","4kidsl");
+
+
+    }
+
+    @Test
+    public void ggetVfModuleCustomizationByModelNameTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VfModuleCustomization> list() throws Exception {
+                VfModuleCustomization vfModuleCustomization = new VfModuleCustomization();
+                vfModuleCustomization.setVfModuleModelUuid("123-uuid");
+                return Arrays.asList(vfModuleCustomization);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        VfModuleCustomization vfModuleCustomization = cd.getVfModuleCustomizationByModelName("tetes");
+        assertEquals("123-uuid", vfModuleCustomization.getVfModuleModelUuid());
+
+
+    }
+
+    @Test
+    public void ggetVfModuleCustomizationByModelNameEmptyTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VfModuleCustomization> list() throws Exception {
+                return Arrays.asList();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        VfModuleCustomization vfModuleCustomization = cd.getVfModuleCustomizationByModelName("tetes");
+        assertEquals(null, vfModuleCustomization);
+
+
+    }
+
+    @Test
+    public void getNetworkResourceTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<NetworkResource> list() throws Exception {
+                NetworkResource networkResource = new NetworkResource();
+                networkResource.setModelUUID("123-uuid");
+                return Arrays.asList(networkResource);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        NetworkResource networkResource = cd.getNetworkResource("tetes");
+        assertEquals("123-uuid", networkResource.getModelUUID());
+
+
+    }
+
+    @Test
+    public void getNetworkResourceTestEmptyException(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<NetworkResource> list() throws Exception {
+                return Arrays.asList();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        NetworkResource networkResource = cd.getNetworkResource("tetes");
+        assertEquals(null, networkResource);
+
+
+    }
+
+    @Test
+    public void getVnfRecipeTest(){
+
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VnfRecipe> list() throws Exception {
+                VnfRecipe vnfRecipe = new VnfRecipe();
+                vnfRecipe.setVfModuleId("123-id");
+                return Arrays.asList(vnfRecipe);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VnfRecipe vnfRecipe = cd.getVnfRecipe("tetes","ergfedrf","4993493");
+        assertEquals("123-id", vnfRecipe.getVfModuleId());
+
+
+    }
+
+    @Test
+    public void getVnfRecipeEmptyTest(){
+
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VnfRecipe> list() throws Exception {
+                return Collections.emptyList();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VnfRecipe vnfRecipe = cd.getVnfRecipe("tetes","ergfedrf","4993493");
+        assertEquals(null, vnfRecipe);
+
+
+    }
+
+    @Test
+    public void getVnfRecipe2Test(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VnfRecipe> list() throws Exception {
+                VnfRecipe vnfRecipe = new VnfRecipe();
+                vnfRecipe.setId(1);
+                return Arrays.asList(vnfRecipe);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        VnfRecipe vnfRecipe = cd.getVnfRecipe("tetes","4993493");
+        assertEquals(1, vnfRecipe.getId());
+
+
+    }
+
+    @Test
+    public void getVnfRecipe2EmptyTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VnfRecipe> list() throws Exception {
+                return Collections.emptyList();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        VnfRecipe vnfRecipe = cd.getVnfRecipe("tetes","4993493");
+        assertEquals(null, vnfRecipe);
+
+
+    }
+
+    @Test
+    public void getVnfRecipeByVfModuleIdTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VnfRecipe> list() throws Exception {
+                VnfRecipe vnfRecipe = new VnfRecipe();
+                vnfRecipe.setId(1);
+                return Arrays.asList(vnfRecipe);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VnfRecipe vnfRecipe = cd.getVnfRecipeByVfModuleId("tetes","4993493","vnf");
+        assertEquals(1, vnfRecipe.getId());
+
+
+    }
+
+    @Test
+    public void getVnfRecipeByVfModuleIdEmptyTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VnfRecipe> list() throws Exception {
+                return Collections.emptyList();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VnfRecipe vnfRecipe = cd.getVnfRecipeByVfModuleId("tetes","4993493","vnf");
+        assertEquals(null, vnfRecipe);
+
+
+    }
+
+    @Test
+    public void getVfModuleTypeTestException(){
+        mockUpQuery = new MockUp<Query>() {
+               String type = null;
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       type = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+            public List<VfModule> list() {
+                       if ("nil".equals(type)) return new ArrayList<VfModule>();
+
+                       VfModule vm = new VfModule();
+                       vm.setModelUUID("123-uuid");
+                return Arrays.asList(vm);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VfModule vnf = cd.getVfModuleType("4993493");
+        assertEquals("123-uuid", vnf.getModelUUID());
+        
+        vnf = cd.getVfModuleType("nil");
+        assertNull(vnf);
+    }
+
+    @Test
+    public void getVnfResourceByServiceUuidTest(){
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() {
+                VnfResource vnfResource = new VnfResource();
+                vnfResource.setModelUuid("123-uuid");
+                return vnfResource;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        VnfResource vnfResource = cd.getVnfResourceByServiceUuid("4993493");
+        assertEquals("123-uuid", vnfResource.getModelUuid());
+
+
+    }
+
+    @Test
+    public void getVnfResourceByServiceUuidNURExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() {
+                throw new NonUniqueResultException(-1);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(NonUniqueResultException.class);
+        VnfResource vnfResource = cd.getVnfResourceByServiceUuid("4993493");
+
+
+    }
+
+    @Test
+    public void getVnfResourceByServiceUuidHibernateExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() {
+                throw new HibernateException("hibernate exception");
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(HibernateException.class);
+        VnfResource vnfResource = cd.getVnfResourceByServiceUuid("4993493");
+
+
+    }
+
+    @Test
+    public void getVnfResourceByServiceUuidExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() throws Exception {
+                throw new Exception();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(Exception.class);
+        VnfResource vnfResource = cd.getVnfResourceByServiceUuid("4993493");
+
+
+    }
+
+    @Test
+    public void getVnfResourceByVnfUuidTest(){
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() {
+                VnfResource vnfResource = new VnfResource();
+                vnfResource.setModelUuid("123-uuid");
+                return vnfResource;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VnfResource vnfResource = cd.getVnfResourceByVnfUuid("4993493");
+        assertEquals("123-uuid", vnfResource.getModelUuid());
+
+
+    }
+
+    @Test
+    public void getVnfResourceByVnfUuidNURExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() {
+                throw new NonUniqueResultException(-1);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(NonUniqueResultException.class);
+        VnfResource vnfResource = cd.getVnfResourceByVnfUuid("4993493");
+
+
+    }
+
+    @Test
+    public void getVnfResourceByVnfUuidHibernateExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() {
+                throw new HibernateException("hibernate exception");
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(HibernateException.class);
+        VnfResource vnfResource = cd.getVnfResourceByVnfUuid("4993493");
+
+
+    }
+
+    @Test
+    public void getVnfResourceByVnfUuidExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() throws Exception {
+                throw new Exception();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        thrown.expect(Exception.class);
+        VnfResource vnfResource = cd.getVnfResourceByVnfUuid("4993493");
+
+
+    }
+
+    @Test
+    public void getVfModuleByModelInvariantUuidTest(){
+
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<VfModule> list() throws Exception {
+                VfModule vfModule = new VfModule();
+                vfModule.setModelUUID("123-uuid");
+                return Arrays.asList(vfModule);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VfModule vfModule = cd.getVfModuleByModelInvariantUuid("4993493");
+        assertEquals("123-uuid", vfModule.getModelUUID());
+
+
+    }
+
+    @Test
+    public void getVfModuleByModelInvariantUuidEmptyTest(){
+
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<VfModule> list() throws Exception {
+                return Collections.emptyList();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VfModule vfModule = cd.getVfModuleByModelInvariantUuid("4993493");
+        assertEquals(null, vfModule);
+
+
+    }
+
+    @Test
+    public void getVfModuleByModelCustomizationUuidTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public Object uniqueResult() {
+               VfModuleCustomization vc = new VfModuleCustomization();
+                vc.setModelCustomizationUuid("4993493");
+                return vc;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VfModuleCustomization vnf = cd.getVfModuleByModelCustomizationUuid("4993493");
+        assertEquals("4993493", vnf.getModelCustomizationUuid());
+    }
+    
+    @Test
+    public void getVfModuleByModelCustomizationUuidNullTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public Object uniqueResult() {
+               return null;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VfModuleCustomization vnf = cd.getVfModuleByModelCustomizationUuid("4993493");
+        assertNull(vnf);
+    }
+    
+    @Test
+    public void getVfModuleByModelCustomizationUuidNonUniqueExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public Object uniqueResult() {
+               throw new org.hibernate.NonUniqueResultException(2);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        thrown.expect(org.hibernate.NonUniqueResultException.class);
+        VfModuleCustomization vnf = cd.getVfModuleByModelCustomizationUuid("4993493");
+    }
+    
+    @Test
+    public void getVfModuleByModelCustomizationUuidHibernateExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public Object uniqueResult() {
+               throw new org.hibernate.HibernateException("test case");
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        thrown.expect(org.hibernate.HibernateException.class);
+        VfModuleCustomization vnf = cd.getVfModuleByModelCustomizationUuid("4993493");
+    }
+    
+    @Test
+    public void getVfModuleByModelCustomizationUuidExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public Object uniqueResult() {
+                throw new NullPointerException();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        thrown.expect(NullPointerException.class);
+        VfModuleCustomization vnf = cd.getVfModuleByModelCustomizationUuid("4993493");
     }
+    
+    @Test
+    public void getVfModuleCustomizationByModelCustomizationIdTest(){
+        mockUpQuery = new MockUp<Query>() {
+               String modelCustomizationUuid = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("modelCustomizationUuid")) modelCustomizationUuid = (String)val;
+                       return this.getMockInstance();
+               }
+
+            @Mock
+            public Object uniqueResult() {
+                       if ("nil".equals(modelCustomizationUuid)) return null;
+                       if ("multi".equals(modelCustomizationUuid)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(modelCustomizationUuid)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(modelCustomizationUuid)) throw new NullPointerException();
+
+                       VfModuleCustomization vm = new VfModuleCustomization();
+               vm.setModelCustomizationUuid("4993493");
+                return vm;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VfModuleCustomization vnf = cd.getVfModuleCustomizationByModelCustomizationId("4993493");
+        assertEquals("4993493", vnf.getModelCustomizationUuid());
+        
+        vnf = cd.getVfModuleCustomizationByModelCustomizationId("nil");
+        assertNull(vnf);
+        
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.NonUniqueResultException.class);
+               vnf = cd.getVfModuleCustomizationByModelCustomizationId("multi");
+       } catch (org.hibernate.NonUniqueResultException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.HibernateException.class);
+               vnf = cd.getVfModuleCustomizationByModelCustomizationId("he");
+       } catch (org.hibernate.HibernateException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(NullPointerException.class);
+               vnf = cd.getVfModuleCustomizationByModelCustomizationId("npe");
+       } catch (NullPointerException e) {
+               // noop
+       }
+
+    }
+
+    @Test
+    public void getVfModuleByModelUuidTestException(){
+       mockUpQuery = new MockUp<Query>() {
+               String modelUuidValue = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("modelUuidValue")) modelUuidValue = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public List<VfModule> list() {
+                       if ("nil".equals(modelUuidValue)) return null;
+                       if ("multi".equals(modelUuidValue)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(modelUuidValue)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(modelUuidValue)) throw new NullPointerException();
+
+                       VfModule vfModule = new VfModule();
+                       vfModule.setModelInvariantUuid(modelUuidValue);
+                       return Arrays.asList(vfModule);
+               }
+       };
+
+       mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+       };
+
+       mockCd = new MockUp<CatalogDatabase>() {
+               @Mock
+               private Session getSession() {
+                       return mockedSession.getMockInstance();
+               }
+       };
+
+       VfModule vnf = cd.getVfModuleByModelUuid("4993493");
+       assertEquals("4993493", vnf.getModelInvariantUuid());
+
+       vnf = cd.getVfModuleByModelUuid("nil");
+       assertNull(vnf);
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.NonUniqueResultException.class);
+               vnf = cd.getVfModuleByModelUuid("multi");
+       } catch (org.hibernate.NonUniqueResultException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.HibernateException.class);
+               vnf = cd.getVfModuleByModelUuid("he");
+       } catch (org.hibernate.HibernateException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(NullPointerException.class);
+               vnf = cd.getVfModuleByModelUuid("npe");
+       } catch (NullPointerException e) {
+               // noop
+       }
+    }
+
+    
+    @Test
+    public void getVnfResourceCustomizationByModelVersionIdTest(){
+       mockUpQuery = new MockUp<Query>() {
+               String modelVersionId = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("modelVersionId")) modelVersionId = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public Object uniqueResult() {
+                       if ("nil".equals(modelVersionId)) return null;
+                       if ("multi".equals(modelVersionId)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(modelVersionId)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(modelVersionId)) throw new NullPointerException();
+
+                       VnfResourceCustomization vnfResourceCustomization = new VnfResourceCustomization();
+                       vnfResourceCustomization.setVnfResourceModelUuid(modelVersionId);
+                       return vnfResourceCustomization;
+               }
+       };
+
+       mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+       };
+
+       mockCd = new MockUp<CatalogDatabase>() {
+               @Mock 
+           public VnfResource getVnfResourceByModelUuid(String modelUuid) {
+                       return new VnfResource();
+               }
+               
+               @Mock
+           public ArrayList<VfModuleCustomization> getAllVfModuleCustomizations(String vnfResourceCustomizationMCU) {
+                       ArrayList<VfModuleCustomization> toRet = new ArrayList<VfModuleCustomization>();
+                       VfModuleCustomization vmc = new VfModuleCustomization();
+                       toRet.add(vmc);
+                       return toRet;
+               }
+               
+               @Mock
+               private Session getSession() {
+                       return mockedSession.getMockInstance();
+               }
+       };
+
+       VnfResourceCustomization vnf = cd.getVnfResourceCustomizationByModelVersionId("4993493");
+       assertEquals("4993493", vnf.getVnfResourceModelUuid());
+
+       vnf = cd.getVnfResourceCustomizationByModelVersionId("nil");
+       assertNull(vnf);
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.NonUniqueResultException.class);
+               vnf = cd.getVnfResourceCustomizationByModelVersionId("multi");
+       } catch (org.hibernate.NonUniqueResultException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.HibernateException.class);
+               vnf = cd.getVnfResourceCustomizationByModelVersionId("he");
+       } catch (org.hibernate.HibernateException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(NullPointerException.class);
+               vnf = cd.getVnfResourceCustomizationByModelVersionId("npe");
+       } catch (NullPointerException e) {
+               // noop
+       }
+    }
+
+    
+    @Test
+    public void getVfModuleByModelCustomizationIdAndVersionTestException(){
+       mockUpQuery = new MockUp<Query>() {
+               String modelVersionId = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("modelVersionId")) modelVersionId = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public Object uniqueResult() {
+                       if ("nil".equals(modelVersionId)) return null;
+                       if ("multi".equals(modelVersionId)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(modelVersionId)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(modelVersionId)) throw new NullPointerException();
+
+                       VfModule vfModule = new VfModule();
+                       vfModule.setModelVersion(modelVersionId);
+                       return vfModule;
+               }
+       };
+
+       mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+       };
+
+       mockCd = new MockUp<CatalogDatabase>() {
+               @Mock
+               private Session getSession() {
+                       return mockedSession.getMockInstance();
+               }
+       };
+
+       VfModule vm = cd.getVfModuleByModelCustomizationIdAndVersion("4993493","test");
+       assertEquals("test", vm.getModelVersion());
+
+       vm = cd.getVfModuleByModelCustomizationIdAndVersion("4993493", "nil");
+       assertNull(vm);
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.NonUniqueResultException.class);
+               vm = cd.getVfModuleByModelCustomizationIdAndVersion("4993493", "multi");
+       } catch (org.hibernate.NonUniqueResultException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.HibernateException.class);
+               vm = cd.getVfModuleByModelCustomizationIdAndVersion("4993493", "he");
+       } catch (org.hibernate.HibernateException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(NullPointerException.class);
+               vm = cd.getVfModuleByModelCustomizationIdAndVersion("4993493", "npe");
+       } catch (NullPointerException e) {
+               // noop
+       }
+    }
+    
+    @Test
+    public void getVfModuleCustomizationByVnfModuleCustomizationUuidTest(){
+       mockUpQuery = new MockUp<Query>() {
+               String modelCustomizationUuid = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("modelCustomizationUuid")) modelCustomizationUuid = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public List<VfModuleCustomization> list() {
+                       if ("nil".equals(modelCustomizationUuid)) return null;
+                       if ("multi".equals(modelCustomizationUuid)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(modelCustomizationUuid)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(modelCustomizationUuid)) throw new NullPointerException();
+
+                       VfModuleCustomization vfModuleCustomization = new VfModuleCustomization();
+                       vfModuleCustomization.setVfModuleModelUuid(modelCustomizationUuid);
+                       return Arrays.asList(vfModuleCustomization);
+               }
+       };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        
+
+        List<VfModuleCustomization> vmcl = cd.getVfModuleCustomizationByVnfModuleCustomizationUuid("4993493");
+       assertEquals(1, vmcl.size());
+       assertEquals("4993493", vmcl.get(0).getVfModuleModelUuid());
+
+       vmcl = cd.getVfModuleCustomizationByVnfModuleCustomizationUuid("nil");
+       assertEquals(0, vmcl.size());
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.HibernateException.class);
+               vmcl = cd.getVfModuleCustomizationByVnfModuleCustomizationUuid("he");
+       } catch (org.hibernate.HibernateException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(NullPointerException.class);
+               vmcl = cd.getVfModuleCustomizationByVnfModuleCustomizationUuid("npe");
+       } catch (NullPointerException e) {
+               // noop
+       }
+    }
+
+    @Test
+    public void getVnfResourceCustomizationByVnfModelCustomizationNameAndModelVersionIdTest(){
+
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<VnfResourceCustomization> list() {
+                VnfResourceCustomization vnfResourceCustomization = new VnfResourceCustomization();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                assertTrue(hql.contains("SELECT vrc FROM VnfResourceCustomization as vrc WHERE vrc.vnfResourceModelUuid IN (SELECT vr.modelUuid FROM VnfResource vr WHERE vr.modelUuid = :modelVersionId)AND vrc.modelInstanceName = :modelCustomizationName"));
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        assertNotNull(cd.getVnfResourceCustomizationByVnfModelCustomizationNameAndModelVersionId("modelCustomizationName","modelVersionId"));
 
-    @Test(expected = Exception.class)
-    public void getVfModuleModelNameTestException(){
-        VfModule vnf = cd.getVfModuleModelName("tetes");
+        VnfResourceCustomization result = cd.getVnfResourceCustomizationByVnfModelCustomizationNameAndModelVersionId("4993493", "test");
+        assertNotNull(result);
     }
 
-    @Test(expected = Exception.class)
-    public void getVfModuleModelName2TestException(){
-        VfModule vnf = cd.getVfModuleModelName("tetes","4kidsl");
-    }
+    @Test
+    public void getVnfResourceCustomizationByVnfModelCustomizationNameAndModelVersionId_NullReturnTest(){
 
-    @Test(expected = Exception.class)
-    public void ggetVfModuleCustomizationByModelNameTestException(){
-        VfModuleCustomization vnf = cd.getVfModuleCustomizationByModelName("tetes");
-    }
+        mockUpQuery = new MockUp<Query>() {
 
-    @Test(expected = Exception.class)
-    public void getNetworkResourceTestException(){
-        NetworkResource vnf = cd.getNetworkResource("tetes");
-    }
+            @Mock
+            public List<VnfResourceCustomization> list() {
+                return Arrays.asList();
+            }
+        };
 
-    @Test(expected = Exception.class)
-    public void getVnfRecipeTestException(){
-        VnfRecipe vnf = cd.getVnfRecipe("tetes","ergfedrf","4993493");
-    }
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                assertTrue(hql.contains("SELECT vrc FROM VnfResourceCustomization as vrc WHERE vrc.vnfResourceModelUuid IN (SELECT vr.modelUuid FROM VnfResource vr WHERE vr.modelUuid = :modelVersionId)AND vrc.modelInstanceName = :modelCustomizationName"));
+                return mockUpQuery.getMockInstance();
+            }
+        };
 
-    @Test(expected = Exception.class)
-    public void getVnfRecipe2TestException(){
-        VnfRecipe vnf = cd.getVnfRecipe("tetes","4993493");
-    }
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
 
-    @Test(expected = Exception.class)
-    public void getVnfRecipeByVfModuleIdTestException(){
-        VnfRecipe vnf = cd.getVnfRecipeByVfModuleId("tetes","4993493","vnf");
+        VnfResourceCustomization result = cd.getVnfResourceCustomizationByVnfModelCustomizationNameAndModelVersionId("4993493", "test");
+        assertNull(result);
     }
+    @Test
+    public void getAllVfModuleCustomizationsStrTest(){
+       mockUpQuery = new MockUp<Query>() {
+               String vrcMcu = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("vrc_mcu")) vrcMcu = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public List<VnfResCustomToVfModuleCustom> list() {
+                       if ("nil".equals(vrcMcu)) return null;
+                       if ("multi".equals(vrcMcu)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(vrcMcu)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(vrcMcu)) throw new NullPointerException();
+
+                       VnfResCustomToVfModuleCustom vnfResCustomToVfModuleCustom = new VnfResCustomToVfModuleCustom();
+                       vnfResCustomToVfModuleCustom.setVfModuleCustModelCustomizationUuid(vrcMcu);
+                       return Arrays.asList(vnfResCustomToVfModuleCustom);
+               }
+               
+               @Mock
+               public Object uniqueResult() {
+                       if ("nil".equals(vrcMcu)) return null;
+                       if ("multi".equals(vrcMcu)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(vrcMcu)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(vrcMcu)) throw new NullPointerException();
+
+                       VfModuleCustomization vfModuleCustomization = new VfModuleCustomization();
+                       vfModuleCustomization.setVfModuleModelUuid(vrcMcu);
+                       return vfModuleCustomization;
+               }
+
+       };
+
+       mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+       };
+
+       mockCd = new MockUp<CatalogDatabase>() {
+               @Mock
+               private Session getSession() {
+                       return mockedSession.getMockInstance();
+               }
 
-    @Test(expected = Exception.class)
-    public void getVfModuleTypeTestException(){
-        VfModule vnf = cd.getVfModuleType("4993493");
-    }
+            @Mock
+            public VfModule getVfModuleByModelUuid(String modelUuid) {
+               return new VfModule();
+            }
+       };
+
+       ArrayList<VfModuleCustomization> vmcl = cd.getAllVfModuleCustomizations("4993493");
+       assertNotNull(vmcl);
+       assertEquals(1, vmcl.size());
+       assertEquals("4993493", vmcl.get(0).getVfModuleModelUuid());
+       
+       vmcl = cd.getAllVfModuleCustomizations("nil");
+       assertNotNull(vmcl);
+       assertEquals(0, vmcl.size());
 
-    @Test(expected = Exception.class)
-    public void getVfModuleType2TestException(){
-        VfModule vnf = cd.getVfModuleType("4993493","vnf");
-    }
-    @Test(expected = Exception.class)
-    public void getVnfResourceByServiceUuidTestException(){
-        VnfResource vnf = cd.getVnfResourceByServiceUuid("4993493");
-    }
-    @Test(expected = Exception.class)
-    public void getVnfResourceByVnfUuidTestException(){
-        VnfResource vnf = cd.getVnfResourceByVnfUuid("4993493");
-    }
-    @Test(expected = Exception.class)
-    public void getVfModuleByModelInvariantUuidTestException(){
-        VfModule vnf = cd.getVfModuleByModelInvariantUuid("4993493");
-    }
-    @Test(expected = Exception.class)
-    public void getVfModuleByModelCustomizationUuidTestException(){
-        VfModuleCustomization vnf = cd.getVfModuleByModelCustomizationUuid("4993493");
-    }
-    @Test(expected = Exception.class)
-    public void getVfModuleByModelInvariantUuidAndModelVersionTestException(){
-        VfModule vnf = cd.getVfModuleByModelInvariantUuidAndModelVersion("4993493","vnf");
-    }
-    @Test(expected = Exception.class)
-    public void getVfModuleCustomizationByModelCustomizationIdTestException(){
-        VfModuleCustomization vnf = cd.getVfModuleCustomizationByModelCustomizationId("4993493");
-    }
-    @Test(expected = Exception.class)
-    public void getVfModuleByModelUuidTestException(){
-        VfModule vnf = cd.getVfModuleByModelUuid("4993493");
-    }
-    @Test(expected = Exception.class)
-    public void getVnfResourceCustomizationByModelCustomizationUuidTestException(){
-        VnfResourceCustomization vnf = cd.getVnfResourceCustomizationByModelCustomizationUuid("4993493");
-    }
-    @Test(expected = Exception.class)
-    public void getVnfResourceCustomizationByModelVersionIdTestException(){
-        VnfResourceCustomization vnf = cd.getVnfResourceCustomizationByModelVersionId("4993493");
-    }
-    @Test(expected = Exception.class)
-    public void getVfModuleByModelCustomizationIdAndVersionTestException(){
-        cd.getVfModuleByModelCustomizationIdAndVersion("4993493","test");
-    }
-    @Test(expected = Exception.class)
-    public void getVfModuleByModelCustomizationIdModelVersionAndModelInvariantIdTestException(){
-        cd.getVfModuleByModelCustomizationIdModelVersionAndModelInvariantId("4993493","vnf","test");
-    }
-    @Test(expected = Exception.class)
-    public void getVnfResourceCustomizationByModelInvariantIdTest(){
-        cd.getVnfResourceCustomizationByModelInvariantId("4993493","vnf","test");
-    }
-    @Test(expected = Exception.class)
-    public void getVfModuleCustomizationByVnfModuleCustomizationUuidTest(){
-        cd.getVfModuleCustomizationByVnfModuleCustomizationUuid("4993493");
-    }
-    @Test(expected = Exception.class)
-    public void getVnfResourceCustomizationByVnfModelCustomizationNameAndModelVersionIdTest(){
-        cd.getVnfResourceCustomizationByVnfModelCustomizationNameAndModelVersionId("4993493","test");
-    }
-    @Test(expected = Exception.class)
-    public void getAllVfModuleCustomizationstest(){
-        cd.getAllVfModuleCustomizations("4993493");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getVnfResourceByModelUuidTest(){
-        cd.getVnfResourceByModelUuid("4993493");
-    }
-    @Test(expected = Exception.class)
+       mockUpQuery = new MockUp<Query>() {
+               String modelUuid = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("modelUuid")) modelUuid = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public Object uniqueResult() {
+                       if ("nil".equals(modelUuid)) return null;
+                       if ("multi".equals(modelUuid)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(modelUuid)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(modelUuid)) throw new NullPointerException();
+
+                       VnfResource vnfResource = new VnfResource();
+                       vnfResource.setModelUuid(modelUuid);
+                       return vnfResource;
+               }
+       };
+
+       mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+       };
+
+       mockCd = new MockUp<CatalogDatabase>() {
+               @Mock
+               private Session getSession() {
+                       return mockedSession.getMockInstance();
+               }
+       };
+
+       VnfResource vr = cd.getVnfResourceByModelUuid("4993493");
+       assertEquals("4993493", vr.getModelUuid());
+
+       vr = cd.getVnfResourceByModelUuid("nil");
+       assertNull(vr);
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.NonUniqueResultException.class);
+               vr = cd.getVnfResourceByModelUuid("multi");
+       } catch (org.hibernate.NonUniqueResultException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.HibernateException.class);
+               vr = cd.getVnfResourceByModelUuid("he");
+       } catch (org.hibernate.HibernateException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(NullPointerException.class);
+               vr = cd.getVnfResourceByModelUuid("npe");
+       } catch (NullPointerException e) {
+               // noop
+       }
+    }
+    
+    @Test
     public void getVnfResCustomToVfModuleTest(){
-        cd.getVnfResCustomToVfModule("4993493","test");
+       mockUpQuery = new MockUp<Query>() {
+               String vfIdValue = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("vfIdValue")) vfIdValue = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public Object uniqueResult() {
+                       if ("nil".equals(vfIdValue)) return null;
+                       if ("multi".equals(vfIdValue)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(vfIdValue)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(vfIdValue)) throw new NullPointerException();
+
+                       VnfResCustomToVfModuleCustom vr = new VnfResCustomToVfModuleCustom();
+                       vr.setVfModuleCustModelCustomizationUuid(vfIdValue);
+                       return vr;
+               }
+       };
+
+       mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+       };
+
+       mockCd = new MockUp<CatalogDatabase>() {
+               @Mock
+               private Session getSession() {
+                       return mockedSession.getMockInstance();
+               }
+       };
+
+       VnfResCustomToVfModuleCustom vm = cd.getVnfResCustomToVfModule("4993493","test");
+       assertEquals("test", vm.getVfModuleCustModelCustomizationUuid());
+
+       vm = vm = cd.getVnfResCustomToVfModule("4993493", "nil");
+       assertNull(vm);
     }
-    @Test(expected = Exception.class)
+
+    @Test
     public void getVfModulesForVnfResourceTest(){
         VnfResource vnfResource = new VnfResource();
         vnfResource.setModelUuid("48839");
+        thrown.expect(Exception.class);
         cd.getVfModulesForVnfResource(vnfResource);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getVfModulesForVnfResource2Test(){
-        cd.getVfModulesForVnfResource("4993493");
-    }
-    @Test(expected = Exception.class)
+       mockUpQuery = new MockUp<Query>() {
+               String vnfResourceModelUUId = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("vnfResourceModelUUId")) vnfResourceModelUUId = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public List<VfModule> list() {
+                       if ("nil".equals(vnfResourceModelUUId)) return null;
+                       if ("multi".equals(vnfResourceModelUUId)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(vnfResourceModelUUId)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(vnfResourceModelUUId)) throw new NullPointerException();
+
+                       VfModule vfModule = new VfModule();
+                       vfModule.setVnfResourceModelUUId(vnfResourceModelUUId);
+                       return Arrays.asList(vfModule);
+               }
+       };
+
+       mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+       };
+
+       mockCd = new MockUp<CatalogDatabase>() {
+               @Mock
+               private Session getSession() {
+                       return mockedSession.getMockInstance();
+               }
+       };
+
+       List<VfModule> vm = cd.getVfModulesForVnfResource("4993493");
+       assertNotNull(vm);
+       assertEquals(1, vm.size());
+       assertEquals("4993493", vm.get(0).getVnfResourceModelUUId());
+
+       vm = cd.getVfModulesForVnfResource("nil");
+       assertNotNull(vm);
+       assertEquals(0, vm.size());
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.HibernateException.class);
+               cd.getVfModulesForVnfResource("he");
+       } catch (org.hibernate.HibernateException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(NullPointerException.class);
+               cd.getVfModulesForVnfResource("npe");
+       } catch (NullPointerException e) {
+               // noop
+       }
+    }
+    
+    @Test
     public void getServiceByUuidTest(){
+       mockUpQuery = new MockUp<Query>() {
+               String serviceModelInvariantUuid = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("serviceModelInvariantUuid")) serviceModelInvariantUuid = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public Object uniqueResult() {
+                       if ("nil".equals(serviceModelInvariantUuid)) return null;
+                       if ("multi".equals(serviceModelInvariantUuid)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(serviceModelInvariantUuid)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(serviceModelInvariantUuid)) throw new NullPointerException();
+
+                       Service service = new Service();
+                       service.setModelInvariantUUID(serviceModelInvariantUuid);
+                       return service;
+               }
+       };
+
+       mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+       };
+
+       mockCd = new MockUp<CatalogDatabase>() {
+               @Mock
+               private Session getSession() {
+                       return mockedSession.getMockInstance();
+               }
+       };
+
+       Service s = cd.getServiceByUuid("4993493");
+       assertEquals("4993493", s.getModelInvariantUUID());
+
+       s = cd.getServiceByUuid("nil");
+       assertNull(s);
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.NonUniqueResultException.class);
+               s = cd.getServiceByUuid("multi");
+       } catch (org.hibernate.NonUniqueResultException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.HibernateException.class);
+               s = cd.getServiceByUuid("he");
+       } catch (org.hibernate.HibernateException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(NullPointerException.class);
+               s = cd.getServiceByUuid("npe");
+       } catch (NullPointerException e) {
+               // noop
+       }
+
+       
+       thrown.expect(Exception.class);
         cd.getServiceByUuid("4993493");
     }
-    @Test(expected = Exception.class)
+    
+    @Test
     public void getNetworkResourceById2Test(){
-        cd.getNetworkResourceById(4993493);
+       mockUpQuery = new MockUp<Query>() {
+               Integer id = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("id")) id = (Integer)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public Object uniqueResult() {
+                       if (id==null || -1 == id) return null;
+                       if (-2 == id) throw new org.hibernate.NonUniqueResultException(2);
+                       if (-3 == id) throw new org.hibernate.HibernateException("test case");
+                       if (-4 == id) throw new NullPointerException();
+
+                       NetworkResource networkResource = new NetworkResource();
+                       networkResource.setModelUUID(Integer.toString(id));
+                       return networkResource;
+               }
+       };
+
+       mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+       };
+
+       mockCd = new MockUp<CatalogDatabase>() {
+               @Mock
+               private Session getSession() {
+                       return mockedSession.getMockInstance();
+               }
+       };
+       
+       NetworkResource nr = cd.getNetworkResourceById(4993493);
+       assertEquals("4993493", nr.getModelUUID());
+
+       nr = cd.getNetworkResourceById(-1);
+       assertNull(nr);
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.NonUniqueResultException.class);
+               nr = cd.getNetworkResourceById(-2);
+       } catch (org.hibernate.NonUniqueResultException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.HibernateException.class);
+               nr = cd.getNetworkResourceById(-3);
+       } catch (org.hibernate.HibernateException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(NullPointerException.class);
+               nr = cd.getNetworkResourceById(-4);
+       } catch (NullPointerException e) {
+               // noop
+       }
     }
-    @Test(expected = Exception.class)
+
+    @Test
     public void getNetworkResourceByIdTest(){
-        cd.getVfModuleTypeByUuid("4993493");
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public Object uniqueResult() {
+               VfModule vm = new VfModule();
+               vm.setModelInvariantUuid("4993493");
+               return vm;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VfModule vm = cd.getVfModuleTypeByUuid("4993493");
+        assertEquals("4993493", vm.getModelInvariantUuid());
+    }
+
+    @Test
+    public void getNetworkResourceByIdNullTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public Object uniqueResult() {
+               return null;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VfModule vm = cd.getVfModuleTypeByUuid("4993493");
+        assertNull(null);
+    }
+
+    @Test
+    public void getNetworkResourceByIdNonUniqueTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public Object uniqueResult() {
+               throw new org.hibernate.NonUniqueResultException(2);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        thrown.expect(org.hibernate.NonUniqueResultException.class);
+        VfModule vm = cd.getVfModuleTypeByUuid("4993493");
+    }
+
+    @Test
+    public void getNetworkResourceByIdHibernateExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public Object uniqueResult() {
+               throw new org.hibernate.HibernateException("test case");
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        thrown.expect(org.hibernate.HibernateException.class);
+        VfModule vm = cd.getVfModuleTypeByUuid("4993493");
+    }
+
+    @Test
+    public void getNetworkResourceByIdExceptionTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public Object uniqueResult() {
+               throw new NullPointerException();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        thrown.expect(NullPointerException.class);
+        VfModule vm = cd.getVfModuleTypeByUuid("4993493");
     }
+
     @Test
     public void isEmptyOrNullTest(){
         boolean is = cd.isEmptyOrNull("4993493");
         assertFalse(is);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getSTRTest(){
-        cd.getSTR("4993493","test","vnf");
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<ServiceToResourceCustomization> list() {
+                ServiceToResourceCustomization vnfResourceCustomization = new ServiceToResourceCustomization();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        List<ServiceToResourceCustomization> str = cd.getSTR("4993493", "test", "vnf");
+        assertFalse(str.isEmpty());
+
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getVRCtoVFMCTest(){
-        cd.getVRCtoVFMC("4993493","388492");
-    }
-    @Test(expected = Exception.class)
-    public void getVfModuleTypeByUuidTestException(){
-        cd.getVfModuleTypeByUuid("4993493");
-    }
+        mockUpQuery = new MockUp<Query>() {
+               String vrcMcu = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("vrc_mcu")) vrcMcu = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public List<VnfResCustomToVfModuleCustom> list() {
+                       if ("nil".equals(vrcMcu)) return null;
+                       if ("multi".equals(vrcMcu)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(vrcMcu)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(vrcMcu)) throw new NullPointerException();
+
+                       VnfResCustomToVfModuleCustom vnfResCustomToVfModuleCustom = new VnfResCustomToVfModuleCustom();
+                       vnfResCustomToVfModuleCustom.setVfModuleCustModelCustomizationUuid(vrcMcu);
+                       return Arrays.asList(vnfResCustomToVfModuleCustom);
+               }
+        };
+
+        mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        List<VnfResCustomToVfModuleCustom> vrCtoVFMC = cd.getVRCtoVFMC("", "null");
+        assertNull(vrCtoVFMC);
 
-    @Test(expected = Exception.class)
+        vrCtoVFMC = cd.getVRCtoVFMC("4993493", "388492");
+        assertNotNull(vrCtoVFMC);
+        assertEquals(1, vrCtoVFMC.size());
+        assertEquals("4993493", vrCtoVFMC.get(0).getVfModuleCustModelCustomizationUuid());
+        
+        vrCtoVFMC = cd.getVRCtoVFMC("nil", "388492");
+        assertNotNull(vrCtoVFMC);
+        assertEquals(0, vrCtoVFMC.size());
+        
+    }
+    @Test
     public void getTempNetworkHeatTemplateLookupTest(){
-        cd.getTempNetworkHeatTemplateLookup("4993493");
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<TempNetworkHeatTemplateLookup> list() {
+                TempNetworkHeatTemplateLookup vnfResourceCustomization = new TempNetworkHeatTemplateLookup();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        List<TempNetworkHeatTemplateLookup> tempNetworkHeatTemplateLookup = cd.getTempNetworkHeatTemplateLookup("4993493");
+        assertFalse(tempNetworkHeatTemplateLookup.isEmpty());
     }
 
-    @Test(expected = Exception.class)
+    @Test
     public void getAllNetworksByServiceModelUuidTest(){
-        cd.getAllNetworksByServiceModelUuid("4993493");
+       mockUpQuery = new MockUp<Query>() {
+               String smu = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("smu")) smu = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public List<ServiceToResourceCustomization> list() {
+                       if ("nil".equals(smu)) return null;
+                       if ("multi".equals(smu)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(smu)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(smu)) throw new NullPointerException();
+
+                       ServiceToResourceCustomization src = new ServiceToResourceCustomization();
+                       src.setServiceModelUUID(smu);
+                       return Arrays.asList(src);
+               }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+            
+            @Mock
+            public List<NetworkResourceCustomization> getAllNetworksByNetworkModelCustomizationUuid(String networkModelCustomizationUuid) {
+               NetworkResourceCustomization nrc = new NetworkResourceCustomization();
+               nrc.setNetworkResourceModelUuid(networkModelCustomizationUuid);
+               return Arrays.asList(nrc);
+            }
+        };
+        
+        List<NetworkResourceCustomization> nrcl = cd.getAllNetworksByServiceModelUuid("4993493");
+        assertNotNull(nrcl);
+        assertEquals(1, nrcl.size());
+
+        nrcl = cd.getAllNetworksByServiceModelUuid("nil");
+       assertNotNull(nrcl);
+       assertEquals(0, nrcl.size());
+/*
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.NonUniqueResultException.class);
+               vm = cd.getVfModuleType("type", "multi");
+       } catch (org.hibernate.NonUniqueResultException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.HibernateException.class);
+               vm = cd.getVfModuleType("type", "he");
+       } catch (org.hibernate.HibernateException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(NullPointerException.class);
+               vm = cd.getVfModuleType("type", "npe");
+       } catch (NullPointerException e) {
+               // noop
+       }
+        
+        assertEquals(cd.getAllNetworksByServiceModelUuid("4993493").size(), 0);
+        */
     }
-    @Test(expected = Exception.class)
+
+    @Test
     public void getAllNetworksByServiceModelInvariantUuidTest(){
-        cd.getAllNetworksByServiceModelInvariantUuid("4993493");
+       mockUpQuery = new MockUp<Query>() {
+               String serviceModelInvariantUuid = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("serviceModelInvariantUuid")) serviceModelInvariantUuid = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public List<Service>  list() {
+                       if ("nil".equals(serviceModelInvariantUuid)) return new ArrayList<Service>();
+                       if ("multi".equals(serviceModelInvariantUuid)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(serviceModelInvariantUuid)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(serviceModelInvariantUuid)) throw new NullPointerException();
+
+                       Service nrc = new Service();
+                       nrc.setModelInvariantUUID(serviceModelInvariantUuid);
+                       nrc.setModelUUID(serviceModelInvariantUuid);
+                       return Arrays.asList(nrc);
+               }
+       };
+
+       mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+       };
+
+       mockCd = new MockUp<CatalogDatabase>() {
+               @Mock
+               private Session getSession() {
+                       return mockedSession.getMockInstance();
+               }
+
+               @Mock
+           public List<NetworkResourceCustomization> getAllNetworksByServiceModelUuid(String serviceModelUuid) {
+                       NetworkResourceCustomization nrc = new NetworkResourceCustomization();
+                       nrc.setNetworkResourceModelUuid(serviceModelUuid);
+                       return Arrays.asList(nrc);
+               }
+       };
+
+       List<NetworkResourceCustomization> nrcl = cd.getAllNetworksByServiceModelInvariantUuid("4993493");
+       assertNotNull(nrcl);
+       assertEquals(1, nrcl.size());
+       assertEquals("4993493", nrcl.get(0).getNetworkResourceModelUuid());
+
+       nrcl = cd.getAllNetworksByServiceModelInvariantUuid("nil");
+       assertNotNull(nrcl);
+       assertEquals(0, nrcl.size());
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllNetworksByServiceModelInvariantUuid2Test(){
-        cd.getAllNetworksByServiceModelInvariantUuid("4993493","test");
+       mockUpQuery = new MockUp<Query>() {
+               String serviceModelInvariantUuid = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("serviceModelInvariantUuid")) serviceModelInvariantUuid = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public List<Service> list() {
+                       if ("nil".equals(serviceModelInvariantUuid)) return new ArrayList<Service>();
+                       if ("multi".equals(serviceModelInvariantUuid)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(serviceModelInvariantUuid)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(serviceModelInvariantUuid)) throw new NullPointerException();
+
+                       Service service = new Service();
+                       service.setModelInvariantUUID(serviceModelInvariantUuid);
+                       service.setModelUUID(serviceModelInvariantUuid);
+                       return Arrays.asList(service);
+               }
+       };
+
+       mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+       };
+
+       mockCd = new MockUp<CatalogDatabase>() {
+               @Mock
+               private Session getSession() {
+                       return mockedSession.getMockInstance();
+               }
+               
+               @Mock
+           public List<NetworkResourceCustomization> getAllNetworksByServiceModelUuid(String serviceModelUuid) {
+                       NetworkResourceCustomization nrc = new NetworkResourceCustomization();
+                       nrc.setModelCustomizationUuid(serviceModelUuid);
+                       return Arrays.asList(nrc);
+               }
+       };
+       
+       List<NetworkResourceCustomization> nrcl =  cd.getAllNetworksByServiceModelInvariantUuid("4993493","test");
+       assertNotNull(nrcl);
+       assertEquals(1, nrcl.size());
+       assertEquals("4993493", nrcl.get(0).getModelCustomizationUuid());
+       
+       nrcl =  cd.getAllNetworksByServiceModelInvariantUuid("nil","test");
+       assertNotNull(nrcl);
+       assertEquals(0, nrcl.size());
     }
-    @Test(expected = Exception.class)
+
+    @Test
     public void getAllNetworksByNetworkModelCustomizationUuidTest(){
-        cd.getAllNetworksByNetworkModelCustomizationUuid("4993493");
+       mockUpQuery = new MockUp<Query>() {
+               String networkModelCustomizationUuid = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("networkModelCustomizationUuid")) networkModelCustomizationUuid = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public List<NetworkResourceCustomization> list() {
+                       if ("nil".equals(networkModelCustomizationUuid)) return new ArrayList<NetworkResourceCustomization>();
+                       if ("multi".equals(networkModelCustomizationUuid)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(networkModelCustomizationUuid)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(networkModelCustomizationUuid)) throw new NullPointerException();
+
+                       NetworkResourceCustomization nrc = new NetworkResourceCustomization();
+                       nrc.setNetworkResourceModelUuid(networkModelCustomizationUuid);
+                       return Arrays.asList(nrc);
+               }
+       };
+
+       mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+       };
+
+       mockCd = new MockUp<CatalogDatabase>() {
+               @Mock
+               private Session getSession() {
+                       return mockedSession.getMockInstance();
+               }
+
+               @Mock
+           public NetworkResource getNetworkResourceById(String id) {
+                       NetworkResource nr = new NetworkResource ();
+                       return nr;
+               }
+       };
+
+       List<NetworkResourceCustomization> nrcl = cd.getAllNetworksByNetworkModelCustomizationUuid("4993493");
+       assertNotNull(nrcl);
+       assertEquals(1, nrcl.size());
+       assertEquals("4993493", nrcl.get(0).getNetworkResourceModelUuid());
+       
+       nrcl = cd.getAllNetworksByNetworkModelCustomizationUuid("nil");
+       assertNotNull(nrcl);
+       assertEquals(0, nrcl.size());
     }
-    @Test(expected = Exception.class)
+
+    @Test
     public void getAllNetworksByNetworkTypeTest(){
-        cd.getAllNetworksByNetworkType("4993493");
+       mockUpQuery = new MockUp<Query>() {
+               String networkResourceId = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("networkResourceId")) networkResourceId = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public List<NetworkResourceCustomization> list() {
+                       if ("nil".equals(networkResourceId)) return null;
+                       if ("multi".equals(networkResourceId)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(networkResourceId)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(networkResourceId)) throw new NullPointerException();
+
+                       NetworkResourceCustomization nrc = new NetworkResourceCustomization();
+                       nrc.setNetworkResourceModelUuid(networkResourceId);
+                       return Arrays.asList(nrc);
+               }
+       };
+
+       mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+       };
+
+       mockCd = new MockUp<CatalogDatabase>() {
+               @Mock
+               private Session getSession() {
+                       return mockedSession.getMockInstance();
+               }
+               
+               @Mock
+           public NetworkResource getNetworkResource(String networkType) {
+                       if ("nil".equals(networkType)) return null;
+                       
+                       NetworkResource nr = new NetworkResource();
+                       nr.setNeutronNetworkType(networkType);
+                       return nr;
+               }
+       };
+
+       List<NetworkResourceCustomization> nrcl = cd.getAllNetworksByNetworkType("4993493");
+       assertNotNull(nrcl);
+       assertEquals(1, nrcl.size());
+       assertEquals("4993493", nrcl.get(0).getNetworkType());
+
+       nrcl = cd.getAllNetworksByNetworkType("nil");
+       assertNotNull(nrcl);
+       assertEquals(0, nrcl.size());
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllVfmcForVrcTest(){
         VnfResourceCustomization re = new VnfResourceCustomization();
         re.setModelCustomizationUuid("377483");
+        thrown.expect(Exception.class);
         cd.getAllVfmcForVrc(re);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllVnfsByServiceModelUuidTest(){
+       thrown.expect(Exception.class);
         cd.getAllVnfsByServiceModelUuid("4993493");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllVnfsByServiceModelInvariantUuidTest(){
+       thrown.expect(Exception.class);
         cd.getAllVnfsByServiceModelInvariantUuid("4993493");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllVnfsByServiceModelInvariantUuid2Test(){
+       thrown.expect(Exception.class);
         cd.getAllVnfsByServiceModelInvariantUuid("4993493","test");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllVnfsByServiceNameTest(){
+       thrown.expect(Exception.class);
         cd.getAllVnfsByServiceName("4993493","test");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllVnfsByServiceName2Test(){
+       thrown.expect(Exception.class);
         cd.getAllVnfsByServiceName("4993493");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllVnfsByVnfModelCustomizationUuidTest(){
+       thrown.expect(Exception.class);
         cd.getAllVnfsByVnfModelCustomizationUuid("4993493");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllAllottedResourcesByServiceModelUuidTest(){
-        cd.getAllAllottedResourcesByServiceModelUuid("4993493");
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<ServiceToResourceCustomization> list() {
+                ServiceToResourceCustomization vnfResourceCustomization = new ServiceToResourceCustomization();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+        mockUpQuery2 = new MockUp<Query>() {
+
+            @Mock
+            public List<AllottedResourceCustomization> list() {
+                AllottedResourceCustomization vnfResourceCustomization = new AllottedResourceCustomization();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+        mockUpQuery3 = new MockUp<Query>() {
+
+            @Mock
+            public List<AllottedResource> list() {
+                AllottedResource vnfResourceCustomization = new AllottedResource();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                if(hql.contains("ServiceToResourceCustomization")){
+                    return mockUpQuery.getMockInstance();
+
+                }else if(hql.contains("AllottedResource " )){
+                    return mockUpQuery3.getMockInstance();
+
+                } else{
+                    return mockUpQuery2.getMockInstance();
+                }
+
+
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        List<AllottedResourceCustomization> allAllottedResourcesByServiceModelUuid = cd.getAllAllottedResourcesByServiceModelUuid("4993493");
+        assertFalse(allAllottedResourcesByServiceModelUuid.isEmpty());
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllAllottedResourcesByServiceModelInvariantUuidTest(){
+       thrown.expect(Exception.class);
         cd.getAllAllottedResourcesByServiceModelInvariantUuid("4993493");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllAllottedResourcesByServiceModelInvariantUuid2Test(){
-        cd.getAllAllottedResourcesByServiceModelInvariantUuid("4993493","test");
+
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<ServiceToResourceCustomization> list() {
+                ServiceToResourceCustomization vnfResourceCustomization = new ServiceToResourceCustomization();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+        mockUpQuery2 = new MockUp<Query>() {
+
+            @Mock
+            public List<AllottedResourceCustomization> list() {
+                AllottedResourceCustomization vnfResourceCustomization = new AllottedResourceCustomization();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+        mockUpQuery3 = new MockUp<Query>() {
+
+            @Mock
+            public List<AllottedResource> list() {
+                AllottedResource vnfResourceCustomization = new AllottedResource();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+        mockUpQuery4 = new MockUp<Query>() {
+
+            @Mock
+            public List<Service> list() {
+                Service vnfResourceCustomization = new Service();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                if(hql.contains("ServiceToResourceCustomization")){
+                    return mockUpQuery.getMockInstance();
+
+                }else if(hql.contains("AllottedResource " )){
+                    return mockUpQuery3.getMockInstance();
+
+                } else if(hql.contains(" Service ")){
+                    return mockUpQuery4.getMockInstance();
+                }else{
+                    return mockUpQuery2.getMockInstance();
+                }
+
+
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+
+        List<AllottedResourceCustomization> allottedResourceCustomizations = cd.getAllAllottedResourcesByServiceModelInvariantUuid("4993493", "test");
+        assertFalse(allottedResourceCustomizations.isEmpty());
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllAllottedResourcesByArModelCustomizationUuidTest(){
+       thrown.expect(Exception.class);
         cd.getAllAllottedResourcesByArModelCustomizationUuid("4993493");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllottedResourceByModelUuidTest(){
+       thrown.expect(Exception.class);
         cd.getAllottedResourceByModelUuid("4993493");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllResourcesByServiceModelUuidTest(){
+       thrown.expect(Exception.class);
         cd.getAllResourcesByServiceModelUuid("4993493");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllResourcesByServiceModelInvariantUuidTest(){
+       thrown.expect(Exception.class);
         cd.getAllResourcesByServiceModelInvariantUuid("4993493");
     }
 
-    @Test(expected = Exception.class)
+    @Test
     public void getAllResourcesByServiceModelInvariantUuid2Test(){
+       thrown.expect(Exception.class);
         cd.getAllResourcesByServiceModelInvariantUuid("4993493","test");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getSingleNetworkByModelCustomizationUuidTest(){
+       thrown.expect(Exception.class);
         cd.getSingleNetworkByModelCustomizationUuid("4993493");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getSingleAllottedResourceByModelCustomizationUuidTest(){
+       thrown.expect(Exception.class);
         cd.getSingleAllottedResourceByModelCustomizationUuid("4993493");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getVfModuleRecipeTest(){
+       thrown.expect(Exception.class);
         cd.getVfModuleRecipe("4993493","test","get");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getVfModuleTest(){
-        cd.getVfModule("4993493","test","get","v2","vnf");
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<VfModule> list() {
+                VfModule vnfResourceCustomization = new VfModule();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        List<VfModule> vfModule = cd.getVfModule("4993493", "test", "get", "v2", "vnf");
+        assertFalse(vfModule.isEmpty());
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getVnfComponentsRecipeTest(){
+       thrown.expect(Exception.class);
         cd.getVnfComponentsRecipe("4993493","test","v2","vnf","get","3992");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getVnfComponentsRecipeByVfModuleTest(){
         List <VfModule> resultList = new ArrayList<>();
         VfModule m = new VfModule();
         resultList.add(m);
+        thrown.expect(Exception.class);
         cd.getVnfComponentsRecipeByVfModule(resultList,"4993493");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllVnfResourcesTest(){
-        cd.getAllVnfResources();
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<VnfResource> list() {
+                VnfResource vnfResourceCustomization = new VnfResource();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                assertTrue(hql.contains("FROM VnfResource"));
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        List<VnfResource> allVnfResources = cd.getAllVnfResources();
+        assertFalse(allVnfResources.isEmpty());
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getVnfResourcesByRoleTest(){
-        cd.getVnfResourcesByRole("4993493");
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<VnfResource> list() {
+                VnfResource vnfResourceCustomization = new VnfResource();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                assertTrue(hql.contains("FROM VnfResource WHERE vnfRole = :vnfRole"));
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        List<VnfResource> vnfResourcesByRole = cd.getVnfResourcesByRole("4993493");
+        assertFalse(vnfResourcesByRole.isEmpty());
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getVnfResourceCustomizationsByRoleTest(){
-        cd.getVnfResourceCustomizationsByRole("4993493");
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<VnfResourceCustomization> list() {
+                VnfResourceCustomization vnfResourceCustomization = new VnfResourceCustomization();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                assertTrue(hql.contains("FROM VnfResourceCustomization WHERE nfRole = :vnfRole"));
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        List<VnfResourceCustomization> vnfResourceCustomizationsByRole = cd.getVnfResourceCustomizationsByRole("4993493");
+        assertFalse(vnfResourceCustomizationsByRole.isEmpty());
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllNetworkResourcesTest(){
-        cd.getAllNetworkResources();
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<NetworkResource> list() {
+                NetworkResource vnfResourceCustomization = new NetworkResource();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                assertTrue(hql.contains("FROM NetworkResource"));
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        List<NetworkResource> allNetworkResources = cd.getAllNetworkResources();
+        assertFalse(allNetworkResources.isEmpty());
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllNetworkResourceCustomizationsTest(){
-        cd.getAllNetworkResourceCustomizations();
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<NetworkResourceCustomization> list() {
+                NetworkResourceCustomization vnfResourceCustomization = new NetworkResourceCustomization();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                assertTrue(hql.contains("FROM NetworkResourceCustomization"));
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        List<NetworkResourceCustomization> allNetworkResourceCustomizations = cd.getAllNetworkResourceCustomizations();
+        assertFalse(allNetworkResourceCustomizations.isEmpty());
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllVfModulesTest(){
-        cd.getAllVfModules();
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<VfModule> list() {
+                VfModule vnfResourceCustomization = new VfModule();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                assertTrue(hql.contains("FROM VfModule"));
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        List<VfModule> allVfModules = cd.getAllVfModules();
+        assertFalse(allVfModules.isEmpty());
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllVfModuleCustomizationsTest(){
-        cd.getAllVfModuleCustomizations();
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<VfModuleCustomization> list() {
+                VfModuleCustomization vnfResourceCustomization = new VfModuleCustomization();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                assertTrue(hql.contains("FROM VfModuleCustomization"));
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        List<VfModuleCustomization> allVfModuleCustomizations = cd.getAllVfModuleCustomizations();
+        assertFalse(allVfModuleCustomizations.isEmpty());
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getAllHeatEnvironmentTest(){
-        cd.getAllHeatEnvironment();
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<HeatEnvironment> list() {
+                HeatEnvironment vnfResourceCustomization = new HeatEnvironment();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                assertTrue(hql.contains("FROM HeatEnvironment"));
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        List<HeatEnvironment> allHeatEnvironment = cd.getAllHeatEnvironment();
+        assertFalse(allHeatEnvironment.isEmpty());
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getHeatEnvironment2Test(){
+       thrown.expect(Exception.class);
         cd.getHeatEnvironment(4993493);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getNestedTemplatesTest(){
+       thrown.expect(Exception.class);
         cd.getNestedTemplates(4993493);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getNestedTemplates2Test(){
+       thrown.expect(Exception.class);
         cd.getNestedTemplates("4993493");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getHeatFilesTest(){
+       thrown.expect(Exception.class);
         cd.getHeatFiles(4993493);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getVfModuleToHeatFilesEntryTest(){
+       thrown.expect(Exception.class);
         cd.getVfModuleToHeatFilesEntry("4993493","49959499");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getServiceToResourceCustomization(){
+       thrown.expect(Exception.class);
         cd.getServiceToResourceCustomization("4993493","599349","49900");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getHeatFilesForVfModuleTest(){
+       thrown.expect(Exception.class);
         cd.getHeatFilesForVfModule("4993493");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getHeatTemplateTest(){
+       thrown.expect(Exception.class);
         cd.getHeatTemplate("4993493","test","heat");
     }
 
-    @Test(expected = Exception.class)
+    @Test
     public void saveHeatTemplateTest(){
         HeatTemplate heat = new HeatTemplate();
-        Set <HeatTemplateParam> paramSet = new HashSet<HeatTemplateParam>();
+        Set <HeatTemplateParam> paramSet = new HashSet<>();
+        thrown.expect(Exception.class);
         cd.saveHeatTemplate(heat,paramSet);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getHeatEnvironmentTest(){
-        cd.getHeatEnvironment("4993493","test","heat");
+       
+       mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public Object uniqueResult() throws Exception {
+                return null;
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        assertEquals(cd.getHeatEnvironment("4993493","test","heat"), null);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getHeatEnvironment3Test(){
+       thrown.expect(Exception.class);
         cd.getHeatEnvironment("4993493","test");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveHeatEnvironmentTest(){
         HeatEnvironment en = new HeatEnvironment();
+        thrown.expect(Exception.class);
         cd.saveHeatEnvironment(en);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveHeatTemplate2Test(){
         HeatTemplate heat = new HeatTemplate();
+        thrown.expect(Exception.class);
         cd.saveHeatTemplate(heat);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveHeatFileTest(){
         HeatFiles hf = new HeatFiles();
+        thrown.expect(Exception.class);
         cd.saveHeatFile(hf);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveVnfRecipeTest(){
         VnfRecipe vr = new VnfRecipe();
+        thrown.expect(Exception.class);
         cd.saveVnfRecipe(vr);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveVnfComponentsRecipe(){
         VnfComponentsRecipe vr = new VnfComponentsRecipe();
+        thrown.expect(Exception.class);
         cd.saveVnfComponentsRecipe(vr);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveOrUpdateVnfResourceTest(){
         VnfResource vr = new VnfResource();
+        thrown.expect(Exception.class);
         cd.saveOrUpdateVnfResource(vr);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveVnfResourceCustomizationTest(){
         VnfResourceCustomization vr = new VnfResourceCustomization();
+        thrown.expect(Exception.class);
         cd.saveVnfResourceCustomization(vr);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveAllottedResourceCustomizationTest(){
         AllottedResourceCustomization arc = new AllottedResourceCustomization();
+        thrown.expect(Exception.class);
         cd.saveAllottedResourceCustomization(arc);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveAllottedResourceTest(){
         AllottedResource ar = new AllottedResource();
+        thrown.expect(Exception.class);
         cd.saveAllottedResource(ar);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveNetworkResourceTest() throws RecordNotFoundException {
         NetworkResource nr = new NetworkResource();
+        thrown.expect(Exception.class);
         cd.saveNetworkResource(nr);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveToscaCsarTest()throws RecordNotFoundException {
         ToscaCsar ts = new ToscaCsar();
+        thrown.expect(Exception.class);
         cd.saveToscaCsar(ts);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getToscaCsar(){
+       thrown.expect(Exception.class);
         cd.getToscaCsar("4993493");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveTempNetworkHeatTemplateLookupTest(){
         TempNetworkHeatTemplateLookup t = new TempNetworkHeatTemplateLookup();
+        thrown.expect(Exception.class);
         cd.saveTempNetworkHeatTemplateLookup(t);
     }
-    @Test(expected = Exception.class)
-    public void saveVfModuleToHeatFiles(){
-        VfModuleToHeatFiles v = new VfModuleToHeatFiles();
-        cd.saveVfModuleToHeatFiles(v);
-    }
-    @Test(expected = Exception.class)
+    @Test
     public void saveVnfResourceToVfModuleCustomizationTest() throws RecordNotFoundException {
         VnfResourceCustomization v =new VnfResourceCustomization();
         VfModuleCustomization vm = new VfModuleCustomization();
+        thrown.expect(Exception.class);
         cd.saveVnfResourceToVfModuleCustomization(v, vm);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveNetworkResourceCustomizationTest() throws RecordNotFoundException {
         NetworkResourceCustomization nrc = new NetworkResourceCustomization();
+        thrown.expect(Exception.class);
         cd.saveNetworkResourceCustomization(nrc);
     }
 
-    @Test(expected = Exception.class)
+    @Test
     public void saveServiceToNetworksTest(){
         AllottedResource ar = new AllottedResource();
+        thrown.expect(Exception.class);
         cd.saveAllottedResource(ar);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveServiceToResourceCustomizationTest(){
         ServiceToResourceCustomization ar = new ServiceToResourceCustomization();
+        thrown.expect(Exception.class);
         cd.saveServiceToResourceCustomization(ar);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveServiceTest(){
         Service ar = new Service();
+        thrown.expect(Exception.class);
         cd.saveService(ar);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveOrUpdateVfModuleTest(){
         VfModule ar = new VfModule();
+        thrown.expect(Exception.class);
         cd.saveOrUpdateVfModule(ar);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveOrUpdateVfModuleCustomizationTest(){
         VfModuleCustomization ar = new VfModuleCustomization();
+        thrown.expect(Exception.class);
         cd.saveOrUpdateVfModuleCustomization(ar);
     }
 
-    @Test(expected = Exception.class)
+    @Test
     public void getNestedHeatTemplateTest(){
+       thrown.expect(Exception.class);
         cd.getNestedHeatTemplate(101,201);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getNestedHeatTemplate2Test(){
+       thrown.expect(Exception.class);
         cd.getNestedHeatTemplate("1002","1002");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveNestedHeatTemplateTest(){
         HeatTemplate ar = new HeatTemplate();
+        thrown.expect(Exception.class);
         cd.saveNestedHeatTemplate("1001",ar,"test");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getHeatFiles2Test(){
         VfModuleCustomization ar = new VfModuleCustomization();
+        thrown.expect(Exception.class);
         cd.getHeatFiles(101,"test","1001","v2");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void getHeatFiles3Test(){
         VfModuleCustomization ar = new VfModuleCustomization();
+        thrown.expect(Exception.class);
         cd.getHeatFiles("200192");
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveHeatFilesTest(){
         HeatFiles ar = new HeatFiles();
+        thrown.expect(Exception.class);
         cd.saveHeatFiles(ar);
     }
-    @Test(expected = Exception.class)
+    @Test
     public void saveVfModuleToHeatFilesTest(){
         HeatFiles ar = new HeatFiles();
+        thrown.expect(Exception.class);
         cd.saveVfModuleToHeatFiles("3772893",ar);
     }
     @Test
-    public void getNetworkResourceByModelUuidTest(){
+    public void getNetworkResourceByModelUuidTest(){
+
+        cd.getNetworkResourceByModelUuid("3899291");
+    }
+    @Test
+    public void getNetworkRecipeTest(){
+       thrown.expect(Exception.class);
+        cd.getNetworkRecipe("test","test1","test2");
+    }
+    @Test
+    public void getNetworkRecipe2Test(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<NetworkRecipe> list() {
+                NetworkRecipe heatTemplate = new NetworkRecipe();
+                return Arrays.asList(heatTemplate);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        NetworkRecipe networkRecipe = cd.getNetworkRecipe("test","test1");assertNotNull(networkRecipe);
+        assertNotNull(networkRecipe);
+
+    }
+    @Test
+    public void getNetworkResourceByModelCustUuidTest(){
+
+        cd.getNetworkResourceByModelCustUuid("test");
+    }
+
+    @Test
+    public void getVnfComponentsRecipeByVfModuleModelUUIdTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VnfComponentsRecipe> list() {
+                VnfComponentsRecipe heatTemplate = new VnfComponentsRecipe();
+                return Arrays.asList(heatTemplate);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        VnfComponentsRecipe vnfComponentsRecipeByVfModuleModelUUId = cd.getVnfComponentsRecipeByVfModuleModelUUId("test1", "test2", "test3");
+        assertNotNull(vnfComponentsRecipeByVfModuleModelUUId);
+    }
+    @Test
+    public void getVnfComponentRecipesTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VnfComponentsRecipe> list() {
+                VnfComponentsRecipe heatTemplate = new VnfComponentsRecipe();
+                return Arrays.asList(heatTemplate);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        List<VnfComponentsRecipe> test = cd.getVnfComponentRecipes("test");
+        assertNotNull(test);
+        assertFalse(test.isEmpty());
+    }
+    @Test
+    public void saveOrUpdateVnfComponentTest(){
+        VnfComponent ar = new VnfComponent();
+        thrown.expect(Exception.class);
+        cd.saveOrUpdateVnfComponent(ar);
+    }
+
+    @Test
+    public void getVfModule2Test(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VfModule> list() {
+                VfModule heatTemplate = new VfModule();
+                return Arrays.asList(heatTemplate);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        VfModule test = cd.getVfModule("test");
+        assertNotNull(test);
+    }
+    @Test
+    public void getVfModuleByModelUUIDTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VfModule> list() {
+                VfModule heatTemplate = new VfModule();
+                return Arrays.asList(heatTemplate);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VfModule test = cd.getVfModuleByModelUUID("test");
+        assertNotNull(test);
+    }
+    @Test
+    public void getServiceRecipeByModelUUIDTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<ServiceRecipe> list() {
+                ServiceRecipe heatTemplate = new ServiceRecipe();
+                return Arrays.asList(heatTemplate);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        Assert.assertNotNull(cd.getServiceRecipeByModelUUID("test1", "test2"));
+    }
+    @Test
+    public void getModelRecipeTest(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<Object> list() {
+                return new ArrayList();
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        Assert.assertNull(cd.getModelRecipe("test1", "test2", "test3"));
+    }
+    @Test
+    @Ignore
+    public void healthCheck(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<HeatTemplate> list() {
+                HeatTemplate heatTemplate = new HeatTemplate();
+                return Arrays.asList(heatTemplate);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createSQLQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        assertNotNull(cd.healthCheck());
+    }
+    @Test
+    public void executeQuerySingleRow(){
+        VnfComponent ar = new VnfComponent();
+        HashMap<String, String> variables = new HashMap<>();
+        thrown.expect(Exception.class);
+        cd.executeQuerySingleRow("tets",variables,false);
+    }
+
+    @Test
+    public void executeQueryMultipleRows(){
+        HashMap<String, String> variables = new HashMap<>();
+
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<HeatTemplate> list() {
+                HeatTemplate heatTemplate = new HeatTemplate();
+                return Arrays.asList(heatTemplate);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+
+        List<Object> select = cd.executeQueryMultipleRows("select", variables, false);
+        assertFalse(select.isEmpty());
+    }
+
+    @Test
+    public void getArRecipeByNameVersion(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<ArRecipe> list() {
+                ArRecipe arRecipe = new ArRecipe();
+                return Arrays.asList(arRecipe);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        assertNotNull(cd.getArRecipeByNameVersion("select","variables","String"));
+    }
+    @Test
+    public void getVnfComponentsRecipe(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<VnfComponentsRecipe> list() {
+                VnfComponentsRecipe heatTemplate = new VnfComponentsRecipe();
+                return Arrays.asList(heatTemplate);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        assertNotNull(cd.getVnfComponentsRecipe("vnfType","vnfComponentType","action","serviceType"));
+    }
+    @Test
+    public void getNetworkRecipeByNameVersion(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<NetworkRecipe> list() {
+                NetworkRecipe heatTemplate = new NetworkRecipe();
+                return Arrays.asList(heatTemplate);
+            }
+        };
 
-        cd.getNetworkResourceByModelUuid("3899291");
-    }
-    @Test(expected = Exception.class)
-    public void getNetworkRecipeTest(){
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
 
-        cd.getNetworkRecipe("test","test1","test2");
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        assertNotNull(cd.getNetworkRecipeByNameVersion("modelName","modelVersion","action"));
     }
-    @Test(expected = Exception.class)
-    public void getNetworkRecipe2Test(){
+    @Test
+    public void saveOrUpdateVfModuleCustomization(){
+        mockUpQuery = new MockUp<Query>() {
+            @Mock
+            public List<NetworkRecipe> list() {
+                NetworkRecipe heatTemplate = new NetworkRecipe();
+                return Arrays.asList(heatTemplate);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
 
-        cd.getNetworkRecipe("test","test1");
+        VfModuleCustomization vfModuleCustomization = new VfModuleCustomization();
+        vfModuleCustomization.setHeatEnvironmentArtifactUuid("HeatEnvironmentArtifactUuid");
+        vfModuleCustomization.setVolEnvironmentArtifactUuid("VolEnvironmentArtifactUuid");
+        vfModuleCustomization.setVfModuleModelUuid("VfModuleModelUuid");
+        vfModuleCustomization.setModelCustomizationUuid("ModelCustomizationUuid");
+        cd.saveOrUpdateVfModuleCustomization(vfModuleCustomization);
     }
     @Test
-    public void getNetworkResourceByModelCustUuidTest(){
+    public void saveServiceToNetworks(){
+        mockUpQuery = new MockUp<Query>() {
 
-        cd.getNetworkResourceByModelCustUuid("test");
-    }
-    @Test(expected = Exception.class)
-    public void getVnfComponentsRecipe2Test(){
+            @Mock
+            public List<Service> list() {
+                Service service = new Service();
+                service.setModelUUID("123-uuid");
+                return Arrays.asList(service);
+            }
+        };
 
-        cd.getVnfComponentsRecipe("test1","test2","test3","test4");
-    }
-    @Test(expected = Exception.class)
-    public void getVnfComponentsRecipeByVfModuleModelUUIdTest(){
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
 
-        cd.getVnfComponentsRecipeByVfModuleModelUUId("test1","test2","test3");
-    }
-    @Test(expected = Exception.class)
-    public void getVnfComponentRecipesTest(){
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
 
-        cd.getVnfComponentRecipes("test");
+        ServiceToNetworks serviceToNetworks = new ServiceToNetworks();
+        cd.saveServiceToNetworks(serviceToNetworks);
     }
-    @Test(expected = Exception.class)
-    public void saveOrUpdateVnfComponentTest(){
-        VnfComponent ar = new VnfComponent();
-        cd.saveOrUpdateVnfComponent(ar);
+    @Test
+    public void saveVfModuleToHeatFiles() {
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<Service> list() {
+                Service service = new Service();
+                service.setModelUUID("123-uuid");
+                return Arrays.asList(service);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        VfModuleToHeatFiles vfModuleToHeatFiles = new VfModuleToHeatFiles();
+
+        cd.saveVfModuleToHeatFiles(vfModuleToHeatFiles);
     }
+    @Test
+    public void saveTempNetworkHeatTemplateLookup() {
+        mockUpQuery = new MockUp<Query>() {
 
-    @Test(expected = Exception.class)
-    public void getVfModule2Test(){
+            @Mock
+            public List<Service> list() {
+                Service service = new Service();
+                service.setModelUUID("123-uuid");
+                return Arrays.asList(service);
+            }
+        };
 
-        cd.getVfModule("test");
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
+        TempNetworkHeatTemplateLookup tempNetworkHeatTemplateLookup = new TempNetworkHeatTemplateLookup();
+
+        cd.saveTempNetworkHeatTemplateLookup(tempNetworkHeatTemplateLookup);
     }
-    @Test(expected = Exception.class)
-    public void getVfModuleByModelUUIDTest(){
+    @Test
+    public void getToscaCsarByServiceModelUUID() {
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<Service> list() {
+                Service service = new Service();
+                service.setModelUUID("123-uuid");
+                return Arrays.asList(service);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+
 
-        cd.getVfModuleByModelUUID("test");
+        assertNull(cd.getToscaCsarByServiceModelUUID("uuid-123"));
+        cd.close();
     }
-    @Test(expected = Exception.class)
-    public void getServiceRecipeByModelUUIDTest(){
+    @Test
+    public void getVnfRecipeByNameVersion(){
+        mockUpQuery = new MockUp<Query>() {
+               String version = null;
+               
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("version")) version = (String)val;
+                       return this.getMockInstance();
+               }
+
+            @Mock
+            public List<VnfRecipe> list() {
+               if ("nil".equals(version)) return new ArrayList<VnfRecipe>();
+               
+                VnfRecipe vnfRecipe = new VnfRecipe();
+                vnfRecipe.setVersion(version);
+                return Arrays.asList(vnfRecipe);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        
+        VnfRecipe vf = cd.getVnfRecipeByNameVersion("modelName","modelVersion","action");
+        assertEquals("modelVersion", vf.getVersion());
+        
+        vf = cd.getVnfRecipeByNameVersion("modelName","nil","action");
+        assertNull(vf);
+    }
+    
+    @Test
+    public void getVnfRecipeByModuleUuid(){
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<VnfRecipe> list() {
+                VnfRecipe vnfRecipe = new VnfRecipe();
+                return Arrays.asList(vnfRecipe);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
 
-        cd.getServiceRecipeByModelUUID("test1","test2");
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        assertNull(cd.getVnfRecipeByModuleUuid("vnfModelUuid","action"));
     }
-    @Test(expected = Exception.class)
-    public void getModelRecipeTest(){
+    
+    @Test
+    public void getVfModuleType(){
+       mockUpQuery = new MockUp<Query>() {
+               String version = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("version")) version = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public Object uniqueResult() {
+                       if ("nil".equals(version)) return null;
+                       if ("multi".equals(version)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(version)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(version)) throw new NullPointerException();
+
+                       VfModule vfModule = new VfModule();
+                       vfModule.setVersion(version);
+                       return vfModule;
+               }
+       };
+
+       mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+       };
+
+       mockCd = new MockUp<CatalogDatabase>() {
+               @Mock
+               private Session getSession() {
+                       return mockedSession.getMockInstance();
+               }
+       };
+
+       VfModule vm = cd.getVfModuleType("type","version");
+       assertEquals("version", vm.getVersion());
+
+       vm = cd.getVfModuleType("type", "nil");
+       assertNull(vm);
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.NonUniqueResultException.class);
+               vm = cd.getVfModuleType("type", "multi");
+       } catch (org.hibernate.NonUniqueResultException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.HibernateException.class);
+               vm = cd.getVfModuleType("type", "he");
+       } catch (org.hibernate.HibernateException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(NullPointerException.class);
+               vm = cd.getVfModuleType("type", "npe");
+       } catch (NullPointerException e) {
+               // noop
+       }
 
-        cd.getModelRecipe("test1","test2","test3");
     }
-    @Test(expected = Exception.class)
-    public void healthCheck(){
+    @Test
+    public void getVfModuleByModelInvariantUuidAndModelVersion(){
+       mockUpQuery = new MockUp<Query>() {
+               String version = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("modelVersion")) version = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public Object uniqueResult() {
+                       if ("nil".equals(version)) return null;
+                       if ("multi".equals(version)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(version)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(version)) throw new NullPointerException();
+
+                       VfModule vfModule = new VfModule();
+                       vfModule.setVersion(version);
+                       return vfModule;
+               }
+       };
+
+       mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+       };
+
+       mockCd = new MockUp<CatalogDatabase>() {
+               @Mock
+               private Session getSession() {
+                       return mockedSession.getMockInstance();
+               }
+       };
+
+        VfModule vm = cd.getVfModuleByModelInvariantUuidAndModelVersion("modelInvariantUuid","modelVersion");
+       assertEquals("modelVersion", vm.getVersion());
+
+       vm = cd.getVfModuleByModelInvariantUuidAndModelVersion("modelInvariantUuid","nil");
+       assertNull(vm);
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.NonUniqueResultException.class);
+               vm = cd.getVfModuleByModelInvariantUuidAndModelVersion("modelInvariantUuid","multi");
+       } catch (org.hibernate.NonUniqueResultException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.HibernateException.class);
+               vm = cd.getVfModuleByModelInvariantUuidAndModelVersion("modelInvariantUuid","he");
+       } catch (org.hibernate.HibernateException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(NullPointerException.class);
+               vm = cd.getVfModuleByModelInvariantUuidAndModelVersion("modelInvariantUuid","npe");
+       } catch (NullPointerException e) {
+               // noop
+       }
+
+    }
+    
+    @Test
+    public void getVnfResourceCustomizationByModelCustomizationUuid(){
+        mockUpQuery = new MockUp<Query>() {
+               String modelCustomizationUuid = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("modelCustomizationUuid")) modelCustomizationUuid = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public Object uniqueResult() {
+                       if ("nil".equals(modelCustomizationUuid)) return null;
+                       if ("multi".equals(modelCustomizationUuid)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(modelCustomizationUuid)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(modelCustomizationUuid)) throw new NullPointerException();
+
+                       VnfResourceCustomization vnfResourceCustomization = new VnfResourceCustomization();
+                       vnfResourceCustomization.setModelCustomizationUuid(modelCustomizationUuid);
+                return vnfResourceCustomization;
+               }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+            
+            @Mock
+            public VnfResource getVnfResourceByModelUuid(String modelUuid) {
+               VnfResource vr = new VnfResource();
+               return vr;
+            }
+            
+            @Mock
+            public ArrayList<VfModuleCustomization> getAllVfModuleCustomizations(String vnfResourceCustomizationMCU) {
+               VfModuleCustomization vmc = new VfModuleCustomization();
+               ArrayList<VfModuleCustomization> toRet = new ArrayList<VfModuleCustomization>();
+               toRet.add(vmc);
+               return toRet;
+            }
+        };
+        
+        VnfResourceCustomization vrc = cd.getVnfResourceCustomizationByModelCustomizationUuid("modelCustomizationUuid");
+        assertEquals("modelCustomizationUuid", vrc.getModelCustomizationUuid());
+        
+        vrc = cd.getVnfResourceCustomizationByModelCustomizationUuid("nil");
+        assertNull(vrc);
+        
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.NonUniqueResultException.class);
+               vrc = cd.getVnfResourceCustomizationByModelCustomizationUuid("multi");
+       } catch (org.hibernate.NonUniqueResultException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.HibernateException.class);
+               vrc = cd.getVnfResourceCustomizationByModelCustomizationUuid("he");
+       } catch (org.hibernate.HibernateException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(NullPointerException.class);
+               vrc = cd.getVnfResourceCustomizationByModelCustomizationUuid("npe");
+       } catch (NullPointerException e) {
+               // noop
+       }
 
-        cd.healthCheck();
     }
-    @Test(expected = Exception.class)
-    public void executeQuerySingleRow(){
-        VnfComponent ar = new VnfComponent();
-        HashMap<String, String> variables = new HashMap<String, String>();
-        cd.executeQuerySingleRow("tets",variables,false);
+
+    @Test
+    public void getVfModuleByModelCustomizationIdAndVersion(){
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<VnfRecipe> list() {
+                VnfRecipe vnfRecipe = new VnfRecipe();
+                return Arrays.asList(vnfRecipe);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        assertNull(cd.getVfModuleByModelCustomizationIdAndVersion("modelCustomizationUuid","modelVersionId"));
     }
-    @Test(expected = Exception.class)
-    public void executeQueryMultipleRows(){
-        HashMap<String, String> variables = new HashMap<String, String>();
-        cd.executeQueryMultipleRows("select",variables,false);
+    @Test
+    public void getVfModuleByModelCustomizationIdModelVersionAndModelInvariantId(){
+        mockUpQuery = new MockUp<Query>() {
+               String modelInvariantId = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("modelInvariantId")) modelInvariantId = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public Object uniqueResult() {
+                       if ("nil".equals(modelInvariantId)) return null;
+                       if ("multi".equals(modelInvariantId)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(modelInvariantId)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(modelInvariantId)) throw new NullPointerException();
+
+                       VfModule vfModule = new VfModule();
+                       vfModule.setModelInvariantUuid(modelInvariantId);
+                       return vfModule;
+               }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        
+        VfModule vm = cd.getVfModuleByModelCustomizationIdModelVersionAndModelInvariantId("modelCustomizationUuid","modelVersion","modelInvariantId");
+        assertEquals("modelInvariantId", vm.getModelInvariantUuid());
+        
+        vm = cd.getVfModuleByModelCustomizationIdModelVersionAndModelInvariantId("modelCustomizationUuid","modelVersion","nil");
+        assertNull(vm);
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.NonUniqueResultException.class);
+               vm = cd.getVfModuleByModelCustomizationIdModelVersionAndModelInvariantId("modelCustomizationUuid","modelVersion","multi");
+       } catch (org.hibernate.NonUniqueResultException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.HibernateException.class);
+               vm = cd.getVfModuleByModelCustomizationIdModelVersionAndModelInvariantId("modelCustomizationUuid","modelVersion","he");
+       } catch (org.hibernate.HibernateException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(NullPointerException.class);
+               vm = cd.getVfModuleByModelCustomizationIdModelVersionAndModelInvariantId("modelCustomizationUuid","modelVersion", "npe");
+       } catch (NullPointerException e) {
+               // noop
+       }
+
+    }
+    
+    @Test
+    public void getVnfResourceCustomizationByModelInvariantId(){
+        mockUpQuery = new MockUp<Query>() {
+               String modelInvariantId = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("modelInvariantId")) modelInvariantId = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public Object uniqueResult() {
+                       if ("nil".equals(modelInvariantId)) return null;
+                       if ("multi".equals(modelInvariantId)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(modelInvariantId)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(modelInvariantId)) throw new NullPointerException();
+
+                       VnfResourceCustomization vnfResourceCustomization = new VnfResourceCustomization();
+                       vnfResourceCustomization.setVnfResourceModelUuid(modelInvariantId);
+                       return vnfResourceCustomization;
+               }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+               @Mock
+            public VnfResource getVnfResourceByModelUuid(String modelUuid) {
+                       return new VnfResource();
+               }
+               
+               @Mock
+            public ArrayList<VfModuleCustomization> getAllVfModuleCustomizations(String vnfResourceCustomizationMCU) {
+                       return new ArrayList<VfModuleCustomization>();
+               }
+               
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        
+        VnfResourceCustomization vrc = cd.getVnfResourceCustomizationByModelInvariantId("modelInvariantId","modelVersion","modelCustomizationName");
+       assertEquals("modelInvariantId", vrc.getVnfResourceModelUuid());
+
+       vrc = cd.getVnfResourceCustomizationByModelInvariantId("nil","modelVersion","modelCustomizationName");
+       assertNull(vrc);
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.NonUniqueResultException.class);
+               vrc = cd.getVnfResourceCustomizationByModelInvariantId("multi","modelVersion","modelCustomizationName");
+       } catch (org.hibernate.NonUniqueResultException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.HibernateException.class);
+               vrc = cd.getVnfResourceCustomizationByModelInvariantId("he","modelVersion","modelCustomizationName");
+       } catch (org.hibernate.HibernateException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(NullPointerException.class);
+               vrc = cd.getVnfResourceCustomizationByModelInvariantId("npe","modelVersion","modelCustomizationName");
+       } catch (NullPointerException e) {
+               // noop
+       }
+    }
+    
+    @Test
+    public void getVnfResourceCustomizationByVnfModelCustomizationNameAndModelVersionId(){
+        mockUpQuery = new MockUp<Query>() {
+
+            @Mock
+            public List<VnfResourceCustomization> list() {
+                VnfResourceCustomization vnfResourceCustomization = new VnfResourceCustomization();
+                return Arrays.asList(vnfResourceCustomization);
+            }
+        };
+
+        mockedSession = new MockUp<Session>() {
+            @Mock
+            public Query createQuery(String hql) {
+                return mockUpQuery.getMockInstance();
+            }
+        };
+
+        mockCd = new MockUp<CatalogDatabase>() {
+            @Mock
+            private Session getSession() {
+                return mockedSession.getMockInstance();
+            }
+        };
+        assertNotNull(cd.getVnfResourceCustomizationByVnfModelCustomizationNameAndModelVersionId("modelCustomizationName","modelVersionId"));
     }
+    
+    @Test
+    public void getNetworkResourceById3Test() {
+       mockUpQuery = new MockUp<Query>() {
+               String modelUuid = null;
+
+               @Mock
+               public Query setParameter(String name, Object val) {
+                       if (name.equals("model_uuid")) modelUuid = (String)val;
+                       return this.getMockInstance();
+               }
+
+               @Mock
+               public List<NetworkResource> list() {
+                       if ("nil".equals(modelUuid)) return null;
+                       if ("multi".equals(modelUuid)) throw new org.hibernate.NonUniqueResultException(2);
+                       if ("he".equals(modelUuid)) throw new org.hibernate.HibernateException("test case");
+                       if ("npe".equals(modelUuid)) throw new NullPointerException();
+
+                       NetworkResource networkResource = new NetworkResource();
+                       networkResource.setModelUUID(modelUuid);
+                       return Arrays.asList(networkResource);
+               }
+       };
+
+       mockedSession = new MockUp<Session>() {
+               @Mock
+               public Query createQuery(String hql) {
+                       return mockUpQuery.getMockInstance();
+               }
+       };
+
+       mockCd = new MockUp<CatalogDatabase>() {
+               @Mock
+               private Session getSession() {
+                       return mockedSession.getMockInstance();
+               }
+       };
+
+       NetworkResource nr = cd.getNetworkResourceById("test");
+       assertEquals("test", nr.getModelUUID());
+
+       nr = cd.getNetworkResourceById("nil");
+       assertNull(nr);
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.NonUniqueResultException.class);
+               nr = cd.getNetworkResourceById("multi");
+       } catch (org.hibernate.NonUniqueResultException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(org.hibernate.HibernateException.class);
+               nr = cd.getNetworkResourceById("he");
+       } catch (org.hibernate.HibernateException e) {
+               // noop
+       }
+
+       try {
+               thrown = ExpectedException.none();
+               thrown.expect(NullPointerException.class);
+               nr = cd.getNetworkResourceById("npe");
+       } catch (NullPointerException e) {
+               // noop
+       }
+    }
+    
 }