Repository: stratos
Updated Branches:
  refs/heads/cc-unit-tests 46d085e30 -> edc6eca00
  refs/heads/master 4b39ed654 -> 2db1eeaf0


Committing half-way changes in testing deployCartridgeDefinition API.


Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/edc6eca0
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/edc6eca0
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/edc6eca0

Branch: refs/heads/cc-unit-tests
Commit: edc6eca000fb08470c64b6844e84c11d69843c17
Parents: 46d085e
Author: Nirmal Fernando <[email protected]>
Authored: Wed Oct 1 17:15:36 2014 +0530
Committer: Nirmal Fernando <[email protected]>
Committed: Wed Oct 1 17:15:36 2014 +0530

----------------------------------------------------------------------
 .../impl/CloudControllerServiceImplTest.java    | 46 +++++++++++++++++++-
 1 file changed, 44 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/edc6eca0/components/org.apache.stratos.cloud.controller/src/test/java/org/apache/stratos/cloud/controller/impl/CloudControllerServiceImplTest.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.cloud.controller/src/test/java/org/apache/stratos/cloud/controller/impl/CloudControllerServiceImplTest.java
 
b/components/org.apache.stratos.cloud.controller/src/test/java/org/apache/stratos/cloud/controller/impl/CloudControllerServiceImplTest.java
index 36c82c9..081a656 100644
--- 
a/components/org.apache.stratos.cloud.controller/src/test/java/org/apache/stratos/cloud/controller/impl/CloudControllerServiceImplTest.java
+++ 
b/components/org.apache.stratos.cloud.controller/src/test/java/org/apache/stratos/cloud/controller/impl/CloudControllerServiceImplTest.java
@@ -19,10 +19,18 @@
 package org.apache.stratos.cloud.controller.impl;
 
 import 
org.apache.stratos.cloud.controller.exception.InvalidCartridgeDefinitionException;
+import org.apache.stratos.cloud.controller.iaases.AWSEC2Iaas;
 import org.apache.stratos.cloud.controller.pojo.CartridgeConfig;
+import org.apache.stratos.cloud.controller.pojo.IaasConfig;
+import org.apache.stratos.cloud.controller.pojo.IaasProvider;
 import org.apache.stratos.cloud.controller.registry.RegistryManager;
 import org.apache.stratos.cloud.controller.runtime.FasterLookUpDataHolder;
+import org.apache.stratos.cloud.controller.util.CloudControllerUtil;
 import org.apache.stratos.cloud.controller.util.ServiceReferenceHolder;
+import org.jclouds.aws.ec2.compute.AWSEC2TemplateOptions;
+import org.jclouds.compute.ComputeService;
+import org.jclouds.compute.domain.Template;
+import org.jclouds.ec2.compute.internal.EC2TemplateBuilderImpl;
 import org.junit.BeforeClass;
 import org.junit.Test;
 import org.wso2.carbon.registry.core.session.UserRegistry;
@@ -35,7 +43,7 @@ import static org.mockito.Mockito.*;
  */
 public class CloudControllerServiceImplTest {
        private static RegistryManager registry;
-       private static FasterLookUpDataHolder data ;
+       private static FasterLookUpDataHolder data;
        private static ServiceReferenceHolder serviceRefHolder =
                        ServiceReferenceHolder.getInstance();
        private static CloudControllerServiceImpl service;
@@ -51,9 +59,9 @@ public class CloudControllerServiceImplTest {
                when(registry.retrieve()).thenReturn(null);
                
                data = mock(FasterLookUpDataHolder.class);
-               
                service = new CloudControllerServiceImpl(true);
                
+               
        }
        
        @Test
@@ -68,5 +76,39 @@ public class CloudControllerServiceImplTest {
                        assertEquals("Invalid Cartridge Definition: Cartridge 
Type: php. "
                                        + "Cause: Iaases of this Cartridge is 
null or empty.", e.getMessage());
                }
+               
+               IaasConfig iaasConfig = mock(IaasConfig.class);
+               when(iaasConfig.getType()).thenReturn("ec2");
+               
when(iaasConfig.getClassName()).thenReturn(AWSEC2Iaas.class.getName());
+               when(iaasConfig.getProvider()).thenReturn("aws-ec2");
+               when(iaasConfig.getIdentity()).thenReturn("EC2_IDENTITY");
+               when(iaasConfig.getCredential()).thenReturn("EC2_CREDENTIAL");
+//             when(iaasConfig.getComputeService()).thenReturn(computeService);
+               
when(iaasConfig.getImageId()).thenReturn("us-east-1/ami-623e940a");
+               cartridgeConfig.setIaasConfigs(new IaasConfig[]{iaasConfig});
+               
+               IaasProvider iaasProvider = mock(IaasProvider.class);
+               ComputeService computeService = mock(ComputeService.class); 
+               EC2TemplateBuilderImpl templateBuilder = 
mock(EC2TemplateBuilderImpl.class);
+               Template template = mock(Template.class);
+               CloudControllerUtil util = mock(CloudControllerUtil.class); 
+               
+               when(template.getOptions()).thenReturn(new 
AWSEC2TemplateOptions());
+               when(templateBuilder.build()).thenReturn(template);
+               
when(computeService.templateBuilder()).thenReturn(templateBuilder);
+               
+               AWSEC2Iaas iaas = mock(AWSEC2Iaas.class);
+               doNothing().when(iaas).buildTemplate();
+               when(iaasProvider.getIaas()).thenReturn(iaas);
+               
+//             List<IaasProvider> iaases = new ArrayList<IaasProvider>();
+//             iaases.add(iaasProvider);
+//             data.setIaasProviders(iaases);
+//             when(data.getIaasProviders()).thenReturn(iaases);
+//             Iaas iaas = new AWSEC2Iaas(iaasProvider);
+//             doThrow(new 
RuntimeException()).when(iaasProvider).setIaas(iaas);
+               
+               service.deployCartridgeDefinition(cartridgeConfig);
+               
        }
 }

Reply via email to