Merge of new rebased code
[appc.git] / appc-adapters / appc-iaas-adapter / appc-iaas-adapter-bundle / src / test / java / org / openecomp / appc / adapter / iaas / impl / TestProviderOperation.java
  * ============LICENSE_END=========================================================
  */
 
-
-
 package org.openecomp.appc.adapter.iaas.impl;
 
 import java.lang.reflect.Field;
+import java.util.Map;
 
+import org.openecomp.appc.adapter.iaas.provider.operation.impl.base.ProviderOperation;
+import org.openecomp.appc.exceptions.APPCException;
+import com.att.cdp.zones.model.ModelObject;
 import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.Test;
-import org.openecomp.appc.adapter.iaas.impl.ProviderAdapterImpl;
-import org.openecomp.appc.adapter.iaas.impl.RequestContext;
-import org.openecomp.appc.adapter.iaas.impl.RequestFailedException;
-import org.openecomp.appc.adapter.iaas.impl.VMURL;
+import org.slf4j.MDC;
+
 import org.openecomp.appc.configuration.ConfigurationFactory;
 import org.openecomp.sdnc.sli.SvcLogicContext;
-import org.slf4j.MDC;
+
+import static org.openecomp.appc.adapter.iaas.provider.operation.common.constants.Constants.MDC_SERVICE;
 
 /**
  * This class is used to test methods and functions of the adapter implementation that do not require and do not set up
  * connections to any providers.
+ *
+ * @since Jan 20, 2016
+ * @version $Id$
  */
 
-public class TestProviderAdapterImplNoConnection {
+public class TestProviderOperation extends ProviderOperation{
 
     private static Class<?> providerAdapterImplClass;
     private static Class<?> configurationFactoryClass;
     private static Field providerCacheField;
     private static Field configField;
 
-    private ProviderAdapterImpl adapter;
-
     /**
      * Use reflection to locate fields and methods so that they can be manipulated during the test to change the
      * internal state accordingly.
-     * 
+     *
      * @throws NoSuchFieldException
      *             if the field(s) dont exist
      * @throws SecurityException
@@ -74,97 +76,94 @@ public class TestProviderAdapterImplNoConnection {
         configField.setAccessible(true);
     }
 
-    /**
-     * initialize the test cases
-     */
-    @Before
-    public void setup() {
-        adapter = new ProviderAdapterImpl(false);
-    }
-
     /**
      * This test expects a failure because the value to be validated is a null URL
-     * 
+     *
      * @throws RequestFailedException
      *             Expected
      */
     @SuppressWarnings("nls")
     @Test(expected = RequestFailedException.class)
     public void testValidateParameterPatternExpectFailNullValue() throws RequestFailedException {
-        MDC.put(ProviderAdapterImpl.MDC_SERVICE, "junit");
+        MDC.put(MDC_SERVICE, "junit");
         SvcLogicContext svcContext = new SvcLogicContext();
         RequestContext rc = new RequestContext(svcContext);
         String link = null;
 
-        adapter.validateVMURL(VMURL.parseURL(link));
+        validateVMURL(VMURL.parseURL(link));
     }
 
     /**
      * This test expects a failure because the value to be validated is an empty URL
-     * 
+     *
      * @throws RequestFailedException
      *             Expected
      */
     @SuppressWarnings("nls")
     @Test(expected = RequestFailedException.class)
     public void testValidateParameterPatternExpectFailEmptyValue() throws RequestFailedException {
-        MDC.put(ProviderAdapterImpl.MDC_SERVICE, "junit");
+        MDC.put(MDC_SERVICE, "junit");
         SvcLogicContext svcContext = new SvcLogicContext();
         RequestContext rc = new RequestContext(svcContext);
         String link = "";
 
-        adapter.validateVMURL(VMURL.parseURL(link));
+        validateVMURL(VMURL.parseURL(link));
     }
 
     /**
      * This test expects a failure because the value to be validated is a blank URL
-     * 
+     *
      * @throws RequestFailedException
      *             Expected
      */
     @SuppressWarnings("nls")
     @Test(expected = RequestFailedException.class)
     public void testValidateParameterPatternExpectFailBlankValue() throws RequestFailedException {
-        MDC.put(ProviderAdapterImpl.MDC_SERVICE, "junit");
+        MDC.put(MDC_SERVICE, "junit");
         SvcLogicContext svcContext = new SvcLogicContext();
         RequestContext rc = new RequestContext(svcContext);
         String link = " ";
 
-        adapter.validateVMURL(VMURL.parseURL(link));
+        validateVMURL(VMURL.parseURL(link));
     }
 
     /**
      * This test expects a failure because the value to be validated is a bad URL
-     * 
+     *
      * @throws RequestFailedException
      *             Expected
      */
     @SuppressWarnings("nls")
     @Test(expected = RequestFailedException.class)
     public void testValidateParameterPatternExpectFailBadURL() throws RequestFailedException {
-        MDC.put(ProviderAdapterImpl.MDC_SERVICE, "junit");
+        MDC.put(MDC_SERVICE, "junit");
         SvcLogicContext svcContext = new SvcLogicContext();
         RequestContext rc = new RequestContext(svcContext);
         String link = "http://some.host:1234/01d82c08594a4b23a0f9260c94be0c4d/";
 
-        adapter.validateVMURL(VMURL.parseURL(link));
+        validateVMURL(VMURL.parseURL(link));
     }
 
     /**
      * This test expects to pass
-     * 
+     *
      * @throws RequestFailedException
      *             Un-Expected
      */
     @SuppressWarnings("nls")
     @Test
     public void testValidateParameterPatternValidURL() throws RequestFailedException {
-        MDC.put(ProviderAdapterImpl.MDC_SERVICE, "junit");
+        MDC.put(MDC_SERVICE, "junit");
         SvcLogicContext svcContext = new SvcLogicContext();
         RequestContext rc = new RequestContext(svcContext);
         String link =
             "http://some.host:1234/v2/01d82c08594a4b23a0f9260c94be0c4d/servers/f888f89f-096b-421e-ba36-34f714071551";
 
-        adapter.validateVMURL(VMURL.parseURL(link));
+        validateVMURL(VMURL.parseURL(link));
+    }
+
+    @Override
+    protected ModelObject executeProviderOperation(Map<String, String> params, SvcLogicContext context) throws APPCException {
+        return null;
     }
 }