Fix technical debt/JUnit on actor service provider 83/29383/4
authorliamfallon <liam.fallon@ericsson.com>
Sun, 28 Jan 2018 22:24:23 +0000 (22:24 +0000)
committerliamfallon <liam.fallon@ericsson.com>
Tue, 30 Jan 2018 17:10:41 +0000 (17:10 +0000)
Unit test for actor service provider added and technical debt removed.

Change-Id: I9573f1c3ff0252b166e06caaa88eb679a1fc7347
Signed-off-by: liamfallon <liam.fallon@ericsson.com>
Issue-ID: POLICY-455
Signed-off-by: liamfallon <liam.fallon@ericsson.com>
12 files changed:
controlloop/common/actors/actor.appc/src/main/java/org/onap/policy/controlloop/actor/appc/APPCActorServiceProvider.java
controlloop/common/actors/actor.appclcm/src/main/java/org/onap/policy/controlloop/actor/appclcm/AppcLcmActorServiceProvider.java
controlloop/common/actors/actor.so/src/main/java/org/onap/policy/controlloop/actor/so/SOActorServiceProvider.java
controlloop/common/actors/actor.test/src/test/java/org/onap/policy/controlloop/actor/test/Test.java [deleted file]
controlloop/common/actors/actor.vfc/src/main/java/org/onap/policy/controlloop/actor/vfc/VFCActorServiceProvider.java
controlloop/common/actors/actorServiceProvider/pom.xml
controlloop/common/actors/actorServiceProvider/src/main/java/org/onap/policy/controlloop/actorServiceProvider/ActorService.java
controlloop/common/actors/actorServiceProvider/src/main/java/org/onap/policy/controlloop/actorServiceProvider/spi/Actor.java
controlloop/common/actors/actorserviceprovider/src/test/java/org/onap/policy/controlloop/actorserviceprovider/TestActor.java [new file with mode: 0644]
controlloop/common/actors/actorserviceprovider/src/test/java/org/onap/policy/controlloop/actorserviceprovider/TestActorServiceProvider.java [new file with mode: 0644]
controlloop/common/actors/actorserviceprovider/src/test/resources/META-INF/services/org.onap.policy.controlloop.actorserviceprovider.spi.Actor [new file with mode: 0644]
controlloop/packages/apps/src/files/apps-installer

index 929b319..ef897b9 100644 (file)
@@ -31,7 +31,7 @@ import org.onap.policy.controlloop.policy.Policy;
 import org.onap.policy.vnf.trafficgenerator.PGRequest;
 import org.onap.policy.vnf.trafficgenerator.PGStream;
 import org.onap.policy.vnf.trafficgenerator.PGStreams;
-import org.onap.policy.controlloop.actorServiceProvider.spi.Actor;
+import org.onap.policy.controlloop.actorserviceprovider.spi.Actor;
 
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
index 813ddfa..1635094 100644 (file)
@@ -47,7 +47,7 @@ import org.onap.policy.appclcm.LCMResponseCode;
 import org.onap.policy.appclcm.LCMResponseWrapper;
 import org.onap.policy.controlloop.ControlLoopOperation;
 import org.onap.policy.controlloop.VirtualControlLoopEvent;
-import org.onap.policy.controlloop.actorServiceProvider.spi.Actor;
+import org.onap.policy.controlloop.actorserviceprovider.spi.Actor;
 import org.onap.policy.controlloop.policy.Policy;
 import org.onap.policy.controlloop.policy.PolicyResult;
 import org.onap.policy.drools.system.PolicyEngine;
index eb2bc17..269ef0f 100644 (file)
@@ -37,7 +37,7 @@ import org.onap.policy.aai.AAINQResponse;
 import org.onap.policy.aai.AAINQResponseWrapper;
 import org.onap.policy.controlloop.ControlLoopOperation;
 import org.onap.policy.controlloop.VirtualControlLoopEvent;
-import org.onap.policy.controlloop.actorServiceProvider.spi.Actor;
+import org.onap.policy.controlloop.actorserviceprovider.spi.Actor;
 import org.onap.policy.controlloop.policy.Policy;
 import org.onap.policy.drools.system.PolicyEngine;
 import org.onap.policy.rest.RESTManager;
diff --git a/controlloop/common/actors/actor.test/src/test/java/org/onap/policy/controlloop/actor/test/Test.java b/controlloop/common/actors/actor.test/src/test/java/org/onap/policy/controlloop/actor/test/Test.java
deleted file mode 100644 (file)
index e526abd..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * actor test
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * 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.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.controlloop.actor.test;
-
-import static org.junit.Assert.*;
-
-import org.onap.policy.controlloop.actorServiceProvider.ActorService;
-import org.onap.policy.controlloop.actorServiceProvider.spi.Actor;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class Test {
-       private static final Logger logger = LoggerFactory.getLogger(Test.class);
-       
-       @org.junit.Test
-       public void test() {
-               logger.debug("Dumping actors");
-               ActorService actorService = ActorService.getInstance();
-               assertNotNull(actorService);
-               int num = 0;
-               for (Actor actor : actorService.actors()) {
-                       logger.debug(actor.actor());
-                       for (String recipe : actor.recipes()) {
-                               logger.debug("\t {} {} {}", recipe, actor.recipeTargets(recipe), actor.recipePayloads(recipe));
-                       }
-                       num++;
-               }
-               logger.debug("Found {} actors", num);
-       }
-
-}
index cf32abf..c2de78c 100644 (file)
@@ -30,7 +30,7 @@ import org.onap.policy.controlloop.ControlLoopOperation;
 import org.onap.policy.controlloop.policy.Policy;
 import org.onap.policy.drools.system.PolicyEngine;
 import org.onap.policy.rest.RESTManager;
-import org.onap.policy.controlloop.actorServiceProvider.spi.Actor;
+import org.onap.policy.controlloop.actorserviceprovider.spi.Actor;
 
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
index 494254b..05f486e 100644 (file)
@@ -1,12 +1,20 @@
 <?xml version="1.0"?>
-<project
-       xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
-       xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
        <modelVersion>4.0.0</modelVersion>
        <parent>
-           <groupId>org.onap.policy.drools-applications</groupId>
+               <groupId>org.onap.policy.drools-applications</groupId>
                <artifactId>actors</artifactId>
                <version>1.2.0-SNAPSHOT</version>
        </parent>
        <artifactId>actorServiceProvider</artifactId>
+
+       <dependencies>
+               <dependency>
+                       <groupId>junit</groupId>
+                       <artifactId>junit</artifactId>
+                       <version>4.12</version>
+                       <scope>test</scope>
+               </dependency>
+       </dependencies>
 </project>
index 330b1f9..45bb9f2 100644 (file)
  * ============LICENSE_END=========================================================
  */
 
-package org.onap.policy.controlloop.actorServiceProvider;
+package org.onap.policy.controlloop.actorserviceprovider;
 
 import java.util.Iterator;
 import java.util.ServiceLoader;
 
-import org.onap.policy.controlloop.actorServiceProvider.spi.Actor;
+import org.onap.policy.controlloop.actorserviceprovider.spi.Actor;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import com.google.common.collect.ImmutableList;
@@ -32,7 +32,8 @@ public class ActorService {
 
        private static final Logger logger = LoggerFactory.getLogger(ActorService.class);
        private static ActorService service;
-       
+
+       // USed to load actors  
        private ServiceLoader<Actor> loader;
        
        private ActorService() {
@@ -50,10 +51,11 @@ public class ActorService {
                Iterator<Actor> iter = loader.iterator();
                logger.debug("returning actors");
                while (iter.hasNext()) {
-                       logger.debug("Got {}", iter.next().actor());
+                       if (logger.isDebugEnabled()) {
+                               logger.debug("Got {}", iter.next().actor());
+                       }
                }
                
                return ImmutableList.copyOf(loader.iterator());
        }
-
 }
diff --git a/controlloop/common/actors/actorserviceprovider/src/test/java/org/onap/policy/controlloop/actorserviceprovider/TestActor.java b/controlloop/common/actors/actorserviceprovider/src/test/java/org/onap/policy/controlloop/actorserviceprovider/TestActor.java
new file mode 100644 (file)
index 0000000..5bf66bc
--- /dev/null
@@ -0,0 +1,60 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * TestActorServiceProvider
+ * ================================================================================
+ * Copyright (C) 2018 Ericsson. All rights reserved.
+ * ================================================================================
+ * 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.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.policy.controlloop.actorserviceprovider;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.onap.policy.controlloop.actorserviceprovider.spi.Actor;
+
+public class TestActor implements Actor {
+       @Override
+       public String actor() {
+               return this.getClass().getSimpleName();
+       }
+
+       @Override
+       public List<String> recipes() {
+               List<String> recipieList = new ArrayList<>();
+               recipieList.add("Dorothy");
+               recipieList.add("Wizard");
+               
+               return recipieList;
+       }
+
+       @Override
+       public List<String> recipeTargets(String recipe) {
+               List<String> recipieTargetList = new ArrayList<>();
+               recipieTargetList.add("Wicked Witch");
+               recipieTargetList.add("Wizard of Oz");
+               
+               return recipieTargetList;
+       }
+
+       @Override
+       public List<String> recipePayloads(String recipe) {
+               List<String> recipiePayloadList = new ArrayList<>();
+               recipiePayloadList.add("Dorothy");
+               recipiePayloadList.add("Toto");
+               
+               return recipiePayloadList;
+       }
+}
diff --git a/controlloop/common/actors/actorserviceprovider/src/test/java/org/onap/policy/controlloop/actorserviceprovider/TestActorServiceProvider.java b/controlloop/common/actors/actorserviceprovider/src/test/java/org/onap/policy/controlloop/actorserviceprovider/TestActorServiceProvider.java
new file mode 100644 (file)
index 0000000..14c2d82
--- /dev/null
@@ -0,0 +1,54 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * TestActorServiceProvider
+ * ================================================================================
+ * Copyright (C) 2018 Ericsson. All rights reserved.
+ * ================================================================================
+ * 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.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.policy.controlloop.actorserviceprovider;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+
+import org.junit.Test;
+import org.onap.policy.controlloop.actorserviceprovider.ActorService;
+import org.onap.policy.controlloop.actorserviceprovider.spi.Actor;
+
+public class TestActorServiceProvider {
+       
+       @Test
+       public void testActorServiceProvider() {
+               ActorService actorService = ActorService.getInstance();
+               assertNotNull(actorService);
+               
+               assertEquals(1, actorService.actors().size());
+
+               actorService = ActorService.getInstance();
+               assertNotNull(actorService);
+               
+               Actor testActor = ActorService.getInstance().actors().get(0);
+               assertNotNull(testActor);
+               
+               assertEquals("TestActor", testActor.actor());
+               
+               assertEquals(2, testActor.recipes().size());
+               assertEquals("Dorothy", testActor.recipes().get(0));
+               assertEquals("Wizard", testActor.recipes().get(1));
+               
+               assertEquals(2, testActor.recipeTargets("Dorothy").size());
+               assertEquals(2, testActor.recipePayloads("Dorothy").size());
+       }
+}
diff --git a/controlloop/common/actors/actorserviceprovider/src/test/resources/META-INF/services/org.onap.policy.controlloop.actorserviceprovider.spi.Actor b/controlloop/common/actors/actorserviceprovider/src/test/resources/META-INF/services/org.onap.policy.controlloop.actorserviceprovider.spi.Actor
new file mode 100644 (file)
index 0000000..a158714
--- /dev/null
@@ -0,0 +1 @@
+org.onap.policy.controlloop.actorserviceprovider.TestActor
\ No newline at end of file
index 9c5d7dc..545c3dc 100644 (file)
@@ -47,7 +47,7 @@ mvn org.apache.maven.plugins:maven-dependency-plugin:3.0.2:get -Dartifact=org.on
 mvn org.apache.maven.plugins:maven-dependency-plugin:3.0.2:get -Dartifact=org.onap.policy.drools-applications:trafficgenerator:${version}:jar -Dtransitive=false
 mvn org.apache.maven.plugins:maven-dependency-plugin:3.0.2:get -Dartifact=org.onap.policy.drools-applications:eventmanager:${version}:jar -Dtransitive=false
 mvn org.apache.maven.plugins:maven-dependency-plugin:3.0.2:get -Dartifact=org.onap.policy.drools-applications:guard:${version}:jar -Dtransitive=false
-mvn org.apache.maven.plugins:maven-dependency-plugin:3.0.2:get -Dartifact=org.onap.policy.drools-applications:actorServiceProvider:${version}:jar -Dtransitive=false
+mvn org.apache.maven.plugins:maven-dependency-plugin:3.0.2:get -Dartifact=org.onap.policy.drools-applications:actorserviceprovider:${version}:jar -Dtransitive=false
 mvn org.apache.maven.plugins:maven-dependency-plugin:3.0.2:get -Dartifact=org.onap.policy.drools-applications:actor.appc:${version}:jar -Dtransitive=false
 mvn org.apache.maven.plugins:maven-dependency-plugin:3.0.2:get -Dartifact=org.onap.policy.drools-applications:actor.appclcm:${version}:jar -Dtransitive=false
 mvn org.apache.maven.plugins:maven-dependency-plugin:3.0.2:get -Dartifact=org.onap.policy.drools-applications:actor.so:${version}:jar -Dtransitive=false