Refactor Unit Tests handling of Metrics and web server removal

- Created a new base class for Unit tests (UnitTest.java).
  This handles destruction of Metrics in an @After method
  so individual tests don't need to know about the Metrics
  lifecycle.

- Added @After methods to REST unit test base classes
  to shut down the web server.

- Removed dependencies on PowerMock for tests that are not using mocking

Change-Id: Ib46e8675998c0520977e59b749cbba89456100ab
diff --git a/src/test/java/net/onrc/onos/core/intent/runtime/UseCaseTest.java b/src/test/java/net/onrc/onos/core/intent/runtime/UseCaseTest.java
index 87e096f..990ca6b 100644
--- a/src/test/java/net/onrc/onos/core/intent/runtime/UseCaseTest.java
+++ b/src/test/java/net/onrc/onos/core/intent/runtime/UseCaseTest.java
@@ -28,7 +28,6 @@
 import net.onrc.onos.core.intent.PathIntentMap;
 import net.onrc.onos.core.intent.ShortestPathIntent;
 import net.onrc.onos.core.intent.runtime.web.IntentWebRoutable;
-import net.onrc.onos.core.metrics.OnosMetrics;
 import net.onrc.onos.core.registry.IControllerRegistryService;
 import net.onrc.onos.core.topology.HostEvent;
 import net.onrc.onos.core.topology.ITopologyListener;
@@ -41,8 +40,7 @@
 import net.onrc.onos.core.topology.TopologyEvents;
 import net.onrc.onos.core.util.SwitchPort;
 
-import com.codahale.metrics.MetricFilter;
-
+import net.onrc.onos.core.util.UnitTest;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -60,7 +58,7 @@
  */
 @RunWith(PowerMockRunner.class)
 @PrepareForTest(PathCalcRuntimeModule.class)
-public class UseCaseTest {
+public class UseCaseTest extends UnitTest {
     private static final Logger log = LoggerFactory.getLogger(UseCaseTest.class);
 
     private Topology topology;
@@ -137,7 +135,6 @@
         verify(controllerRegistryService);
         PowerMock.verify(persistIntent, PersistIntent.class);
         verify(restApi);
-        OnosMetrics.removeMatching(MetricFilter.ALL);
     }
 
     private void showResult(PathIntentMap intents) {