You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@edgent.apache.org by dl...@apache.org on 2017/06/09 20:24:58 UTC

incubator-edgent git commit: [Edgent-419] eliminate use of java8 default interface methods

Repository: incubator-edgent
Updated Branches:
  refs/heads/master a70230b72 -> 3c7adbc9b


[Edgent-419] eliminate use of java8 default interface methods


Project: http://git-wip-us.apache.org/repos/asf/incubator-edgent/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-edgent/commit/3c7adbc9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-edgent/tree/3c7adbc9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-edgent/diff/3c7adbc9

Branch: refs/heads/master
Commit: 3c7adbc9be0e824ca2fe5a2f80d6bae894af034a
Parents: a70230b
Author: Dale LaBossiere <dl...@us.ibm.com>
Authored: Fri Jun 9 13:46:49 2017 -0400
Committer: Dale LaBossiere <dl...@us.ibm.com>
Committed: Fri Jun 9 13:46:49 2017 -0400

----------------------------------------------------------------------
 .../test/analytics/math3/Statistics2Test.java   |  6 +--
 .../test/analytics/math3/StatisticsTest.java    |  5 +--
 .../test/analytics/sensors/FiltersTest.java     |  5 +--
 .../connectors/command/CommandStreamsTest.java  |  5 +--
 .../connectors/common/ConnectorTestBase.java    |  5 +--
 .../edgent/test/connectors/csv/CsvTest.java     |  5 +--
 .../test/connectors/file/FileStreamsTest.java   |  5 +--
 .../file/FileStreamsTextFileWriterTest.java     |  5 +--
 .../providers/dev/DevelopmentProviderTest.java  | 20 +++++++++-
 .../providers/dev/DevelopmentTestSetup.java     | 42 --------------------
 .../streamscope/DevelopmentStreamScopeTest.java | 23 +++++++++--
 .../dev/topology/DevelopmentPlumbingTest.java   | 23 ++++++++++-
 .../dev/topology/DevelopmentTStreamTest.java    | 23 ++++++++++-
 .../dev/topology/DevelopmentTopologyTest.java   | 23 ++++++++++-
 .../dev/topology/DevelopmentWindowTest.java     | 23 ++++++++++-
 .../test/providers/direct/DirectJobTest.java    |  2 +-
 .../test/providers/direct/DirectTestSetup.java  | 38 ------------------
 .../direct/DirectTopologyTestBase.java          | 21 ++++++++++
 .../DirectMetricObjectNameFactoryTest.java      | 18 ++++++++-
 .../metrics/DirectMetricsEverywhereTest.java    | 18 ++++++++-
 .../direct/metrics/DirectMetricsOffTest.java    | 18 ++++++++-
 .../direct/metrics/DirectMetricsOnTest.java     | 18 ++++++++-
 .../direct/topology/DirectPlumbingTest.java     | 17 +++++++-
 .../direct/topology/DirectTStreamTest.java      | 17 +++++++-
 .../direct/topology/DirectTopologyTest.java     | 17 +++++++-
 .../direct/topology/DirectWindowTest.java       | 18 ++++++++-
 26 files changed, 287 insertions(+), 133 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/analytics/math3/src/test/java/org/apache/edgent/test/analytics/math3/Statistics2Test.java
----------------------------------------------------------------------
diff --git a/analytics/math3/src/test/java/org/apache/edgent/test/analytics/math3/Statistics2Test.java b/analytics/math3/src/test/java/org/apache/edgent/test/analytics/math3/Statistics2Test.java
index 230a844..6995b30 100644
--- a/analytics/math3/src/test/java/org/apache/edgent/test/analytics/math3/Statistics2Test.java
+++ b/analytics/math3/src/test/java/org/apache/edgent/test/analytics/math3/Statistics2Test.java
@@ -28,6 +28,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+import org.apache.commons.math3.util.Pair;
 import org.apache.edgent.analytics.math3.Aggregations;
 import org.apache.edgent.analytics.math3.MvResultMap;
 import org.apache.edgent.analytics.math3.ResultMap;
@@ -35,8 +36,7 @@ import org.apache.edgent.analytics.math3.UnivariateAggregate;
 import org.apache.edgent.analytics.math3.stat.Regression2;
 import org.apache.edgent.analytics.math3.stat.Statistic2;
 import org.apache.edgent.function.Functions;
-import org.apache.edgent.test.providers.direct.DirectTestSetup;
-import org.apache.edgent.test.topology.TopologyAbstractTest;
+import org.apache.edgent.test.providers.direct.DirectTopologyTestBase;
 import org.apache.edgent.topology.TStream;
 import org.apache.edgent.topology.TWindow;
 import org.apache.edgent.topology.Topology;
@@ -46,7 +46,7 @@ import org.junit.Test;
 import com.google.gson.JsonObject;
 
 /** test Aggregations, Statistics2 and Regression2 */
-public class Statistics2Test  extends TopologyAbstractTest implements DirectTestSetup {
+public class Statistics2Test  extends DirectTopologyTestBase {
   
   // Expected results for **continuous last-2** aggregations of (1, 4, 102, 0) for the various stats.
   protected static Map<UnivariateAggregate,Double[]> STAT_RESULTS = new HashMap<>();

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/analytics/math3/src/test/java/org/apache/edgent/test/analytics/math3/StatisticsTest.java
----------------------------------------------------------------------
diff --git a/analytics/math3/src/test/java/org/apache/edgent/test/analytics/math3/StatisticsTest.java b/analytics/math3/src/test/java/org/apache/edgent/test/analytics/math3/StatisticsTest.java
index 012ee2f..9a6143b 100644
--- a/analytics/math3/src/test/java/org/apache/edgent/test/analytics/math3/StatisticsTest.java
+++ b/analytics/math3/src/test/java/org/apache/edgent/test/analytics/math3/StatisticsTest.java
@@ -30,8 +30,7 @@ import org.apache.edgent.analytics.math3.json.JsonAnalytics;
 import org.apache.edgent.analytics.math3.json.JsonUnivariateAggregate;
 import org.apache.edgent.analytics.math3.stat.Regression;
 import org.apache.edgent.analytics.math3.stat.Statistic;
-import org.apache.edgent.test.providers.direct.DirectTestSetup;
-import org.apache.edgent.test.topology.TopologyAbstractTest;
+import org.apache.edgent.test.providers.direct.DirectTopologyTestBase;
 import org.apache.edgent.topology.TStream;
 import org.apache.edgent.topology.TWindow;
 import org.apache.edgent.topology.Topology;
@@ -41,7 +40,7 @@ import org.junit.Test;
 import com.google.gson.JsonElement;
 import com.google.gson.JsonObject;
 
-public class StatisticsTest  extends TopologyAbstractTest implements DirectTestSetup {
+public class StatisticsTest  extends DirectTopologyTestBase {
 	@Test
 	public void testMin() throws Exception {
 	    Topology topology = newTopology("testMin");

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/analytics/sensors/src/test/java/org/apache/edgent/test/analytics/sensors/FiltersTest.java
----------------------------------------------------------------------
diff --git a/analytics/sensors/src/test/java/org/apache/edgent/test/analytics/sensors/FiltersTest.java b/analytics/sensors/src/test/java/org/apache/edgent/test/analytics/sensors/FiltersTest.java
index f91f7fa..1040d47 100644
--- a/analytics/sensors/src/test/java/org/apache/edgent/test/analytics/sensors/FiltersTest.java
+++ b/analytics/sensors/src/test/java/org/apache/edgent/test/analytics/sensors/FiltersTest.java
@@ -29,8 +29,7 @@ import java.util.concurrent.atomic.AtomicInteger;
 
 import org.apache.edgent.analytics.sensors.Deadtime;
 import org.apache.edgent.analytics.sensors.Filters;
-import org.apache.edgent.test.providers.direct.DirectTestSetup;
-import org.apache.edgent.test.topology.TopologyAbstractTest;
+import org.apache.edgent.test.providers.direct.DirectTopologyTestBase;
 import org.apache.edgent.topology.TStream;
 import org.apache.edgent.topology.Topology;
 import org.apache.edgent.topology.tester.Condition;
@@ -38,7 +37,7 @@ import org.junit.Test;
 
 import com.google.gson.JsonObject;
 
-public class FiltersTest  extends TopologyAbstractTest implements DirectTestSetup {
+public class FiltersTest  extends DirectTopologyTestBase {
 	@Test
 	public void testDeadbandIdentity() throws Exception {
 	    Topology topology = newTopology("testDeadband");

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java
----------------------------------------------------------------------
diff --git a/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java b/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java
index bf4bb65..e2ad3c7 100644
--- a/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java
+++ b/connectors/command/src/test/java/org/apache/edgent/test/connectors/command/CommandStreamsTest.java
@@ -34,8 +34,7 @@ import java.util.concurrent.atomic.AtomicInteger;
 import org.apache.edgent.connectors.command.CommandStreams;
 import org.apache.edgent.test.connectors.common.FileUtil;
 import org.apache.edgent.test.connectors.common.TestRepoPath;
-import org.apache.edgent.test.providers.direct.DirectTestSetup;
-import org.apache.edgent.test.topology.TopologyAbstractTest;
+import org.apache.edgent.test.providers.direct.DirectTopologyTestBase;
 import org.apache.edgent.topology.TSink;
 import org.apache.edgent.topology.TStream;
 import org.apache.edgent.topology.Topology;
@@ -44,7 +43,7 @@ import org.junit.Test;
 
 import com.google.gson.JsonObject;
 
-public class CommandStreamsTest extends TopologyAbstractTest implements DirectTestSetup {
+public class CommandStreamsTest extends DirectTopologyTestBase {
     
     private String[] stdLines = new String[] {
             "Line 1",

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/connectors/common/src/test/java/org/apache/edgent/test/connectors/common/ConnectorTestBase.java
----------------------------------------------------------------------
diff --git a/connectors/common/src/test/java/org/apache/edgent/test/connectors/common/ConnectorTestBase.java b/connectors/common/src/test/java/org/apache/edgent/test/connectors/common/ConnectorTestBase.java
index 745133b..f5230a9 100644
--- a/connectors/common/src/test/java/org/apache/edgent/test/connectors/common/ConnectorTestBase.java
+++ b/connectors/common/src/test/java/org/apache/edgent/test/connectors/common/ConnectorTestBase.java
@@ -24,12 +24,11 @@ import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 
-import org.apache.edgent.test.providers.direct.DirectTestSetup;
-import org.apache.edgent.test.topology.TopologyAbstractTest;
+import org.apache.edgent.test.providers.direct.DirectTopologyTestBase;
 import org.apache.edgent.topology.TStream;
 import org.apache.edgent.topology.Topology;
 
-public class ConnectorTestBase extends TopologyAbstractTest implements DirectTestSetup {
+public class ConnectorTestBase extends DirectTopologyTestBase {
     
     public static List<String> createMsgs(MsgGenerator mgen, String topic, String msg1, String msg2) {
         List<String> msgs = new ArrayList<>();

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/connectors/csv/src/test/java/org/apache/edgent/test/connectors/csv/CsvTest.java
----------------------------------------------------------------------
diff --git a/connectors/csv/src/test/java/org/apache/edgent/test/connectors/csv/CsvTest.java b/connectors/csv/src/test/java/org/apache/edgent/test/connectors/csv/CsvTest.java
index f422add..13efadc 100644
--- a/connectors/csv/src/test/java/org/apache/edgent/test/connectors/csv/CsvTest.java
+++ b/connectors/csv/src/test/java/org/apache/edgent/test/connectors/csv/CsvTest.java
@@ -25,13 +25,12 @@ import java.util.Arrays;
 import java.util.List;
 
 import org.apache.edgent.connectors.csv.Csv;
-import org.apache.edgent.test.providers.direct.DirectTestSetup;
-import org.apache.edgent.test.topology.TopologyAbstractTest;
+import org.apache.edgent.test.providers.direct.DirectTopologyTestBase;
 import org.junit.Test;
 
 import com.google.gson.JsonObject;
 
-public class CsvTest extends TopologyAbstractTest implements DirectTestSetup {
+public class CsvTest extends DirectTopologyTestBase {
 
   @Test
   public void testParse() {

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/connectors/file/src/test/java/org/apache/edgent/test/connectors/file/FileStreamsTest.java
----------------------------------------------------------------------
diff --git a/connectors/file/src/test/java/org/apache/edgent/test/connectors/file/FileStreamsTest.java b/connectors/file/src/test/java/org/apache/edgent/test/connectors/file/FileStreamsTest.java
index 0ea1fa6..8636888 100644
--- a/connectors/file/src/test/java/org/apache/edgent/test/connectors/file/FileStreamsTest.java
+++ b/connectors/file/src/test/java/org/apache/edgent/test/connectors/file/FileStreamsTest.java
@@ -38,14 +38,13 @@ import org.apache.edgent.connectors.file.FileStreams;
 import org.apache.edgent.function.BiFunction;
 import org.apache.edgent.function.Function;
 import org.apache.edgent.test.connectors.common.FileUtil;
-import org.apache.edgent.test.providers.direct.DirectTestSetup;
-import org.apache.edgent.test.topology.TopologyAbstractTest;
+import org.apache.edgent.test.providers.direct.DirectTopologyTestBase;
 import org.apache.edgent.topology.TStream;
 import org.apache.edgent.topology.Topology;
 import org.apache.edgent.topology.plumbing.PlumbingStreams;
 import org.junit.Test;
 
-public class FileStreamsTest extends TopologyAbstractTest implements DirectTestSetup {
+public class FileStreamsTest extends DirectTopologyTestBase {
     
     String[] stdLines = new String[] {
             "If you can keep your head when all about you",

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/connectors/file/src/test/java/org/apache/edgent/test/connectors/file/FileStreamsTextFileWriterTest.java
----------------------------------------------------------------------
diff --git a/connectors/file/src/test/java/org/apache/edgent/test/connectors/file/FileStreamsTextFileWriterTest.java b/connectors/file/src/test/java/org/apache/edgent/test/connectors/file/FileStreamsTextFileWriterTest.java
index 6b40aac..9aa3bbd 100644
--- a/connectors/file/src/test/java/org/apache/edgent/test/connectors/file/FileStreamsTextFileWriterTest.java
+++ b/connectors/file/src/test/java/org/apache/edgent/test/connectors/file/FileStreamsTextFileWriterTest.java
@@ -55,8 +55,7 @@ import org.apache.edgent.connectors.file.FileWriterPolicy;
 import org.apache.edgent.connectors.file.FileWriterRetentionConfig;
 import org.apache.edgent.connectors.file.runtime.IFileWriterPolicy;
 import org.apache.edgent.function.Predicate;
-import org.apache.edgent.test.providers.direct.DirectTestSetup;
-import org.apache.edgent.test.topology.TopologyAbstractTest;
+import org.apache.edgent.test.providers.direct.DirectTopologyTestBase;
 import org.apache.edgent.topology.TSink;
 import org.apache.edgent.topology.TStream;
 import org.apache.edgent.topology.Topology;
@@ -64,7 +63,7 @@ import org.apache.edgent.topology.plumbing.PlumbingStreams;
 import org.apache.edgent.topology.tester.Condition;
 import org.junit.Test;
 
-public class FileStreamsTextFileWriterTest extends TopologyAbstractTest implements DirectTestSetup {
+public class FileStreamsTextFileWriterTest extends DirectTopologyTestBase {
     
     String str = "123456789";
     String[] stdLines = new String[] {

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/development/src/test/java/org/apache/edgent/test/providers/dev/DevelopmentProviderTest.java
----------------------------------------------------------------------
diff --git a/providers/development/src/test/java/org/apache/edgent/test/providers/dev/DevelopmentProviderTest.java b/providers/development/src/test/java/org/apache/edgent/test/providers/dev/DevelopmentProviderTest.java
index 18df202..ef83171 100644
--- a/providers/development/src/test/java/org/apache/edgent/test/providers/dev/DevelopmentProviderTest.java
+++ b/providers/development/src/test/java/org/apache/edgent/test/providers/dev/DevelopmentProviderTest.java
@@ -23,10 +23,13 @@ import static org.junit.Assert.assertTrue;
 
 import java.util.Collection;
 
+import org.apache.edgent.execution.Job;
+import org.apache.edgent.execution.Submitter;
 import org.apache.edgent.graph.Graph;
 import org.apache.edgent.graph.Vertex;
 import org.apache.edgent.metrics.oplets.CounterOp;
 import org.apache.edgent.oplet.Oplet;
+import org.apache.edgent.providers.development.DevelopmentProvider;
 import org.apache.edgent.streamscope.oplets.StreamScope;
 import org.apache.edgent.test.topology.TopologyAbstractTest;
 import org.apache.edgent.topology.TStream;
@@ -34,7 +37,22 @@ import org.apache.edgent.topology.Topology;
 import org.apache.edgent.topology.tester.Condition;
 import org.junit.Test;
 
-public class DevelopmentProviderTest extends TopologyAbstractTest implements DevelopmentTestSetup {
+public class DevelopmentProviderTest extends TopologyAbstractTest {
+
+    @Override
+    public DevelopmentProvider createTopologyProvider() {
+        try {
+            return new DevelopmentProvider();
+        }
+        catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+    }
+  
+    @Override
+    public Submitter<Topology, Job> createSubmitter() {
+        return (DevelopmentProvider) getTopologyProvider();
+    }
 
     // DevelopmentProvider inserts CounterOp metric oplets into the graph
     @Test

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/development/src/test/java/org/apache/edgent/test/providers/dev/DevelopmentTestSetup.java
----------------------------------------------------------------------
diff --git a/providers/development/src/test/java/org/apache/edgent/test/providers/dev/DevelopmentTestSetup.java b/providers/development/src/test/java/org/apache/edgent/test/providers/dev/DevelopmentTestSetup.java
deleted file mode 100644
index d648f2b..0000000
--- a/providers/development/src/test/java/org/apache/edgent/test/providers/dev/DevelopmentTestSetup.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you 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.
-*/
-package org.apache.edgent.test.providers.dev;
-
-import org.apache.edgent.execution.Job;
-import org.apache.edgent.execution.Submitter;
-import org.apache.edgent.providers.development.DevelopmentProvider;
-import org.apache.edgent.test.topology.TopologyTestSetup;
-import org.apache.edgent.topology.Topology;
-
-public interface DevelopmentTestSetup extends TopologyTestSetup {
-    @Override
-    default DevelopmentProvider createTopologyProvider() {
-        try {
-            return new DevelopmentProvider();
-        }
-        catch (Exception e) {
-            throw new RuntimeException(e);
-        }
-    }
-
-    @Override
-    default Submitter<Topology, Job> createSubmitter() {
-        return (DevelopmentProvider) getTopologyProvider();
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/development/src/test/java/org/apache/edgent/test/providers/dev/streamscope/DevelopmentStreamScopeTest.java
----------------------------------------------------------------------
diff --git a/providers/development/src/test/java/org/apache/edgent/test/providers/dev/streamscope/DevelopmentStreamScopeTest.java b/providers/development/src/test/java/org/apache/edgent/test/providers/dev/streamscope/DevelopmentStreamScopeTest.java
index 36d975e..c5d97cb 100644
--- a/providers/development/src/test/java/org/apache/edgent/test/providers/dev/streamscope/DevelopmentStreamScopeTest.java
+++ b/providers/development/src/test/java/org/apache/edgent/test/providers/dev/streamscope/DevelopmentStreamScopeTest.java
@@ -22,20 +22,37 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertSame;
 
+import org.apache.edgent.execution.Job;
+import org.apache.edgent.execution.Submitter;
 import org.apache.edgent.execution.services.ControlService;
+import org.apache.edgent.providers.development.DevelopmentProvider;
 import org.apache.edgent.streamscope.StreamScope;
-import org.apache.edgent.streamscope.StreamScopeRegistry;
 import org.apache.edgent.streamscope.StreamScope.Sample;
+import org.apache.edgent.streamscope.StreamScopeRegistry;
 import org.apache.edgent.streamscope.mbeans.StreamScopeMXBean;
 import org.apache.edgent.streamscope.mbeans.StreamScopeRegistryMXBean;
-import org.apache.edgent.test.providers.dev.DevelopmentTestSetup;
 import org.apache.edgent.test.streamscope.StreamScopeTest;
 import org.apache.edgent.topology.Topology;
 import org.junit.Test;
 
 import com.google.gson.Gson;
 
-public class DevelopmentStreamScopeTest extends StreamScopeTest implements DevelopmentTestSetup {
+public class DevelopmentStreamScopeTest extends StreamScopeTest {
+
+  @Override
+  public DevelopmentProvider createTopologyProvider() {
+      try {
+          return new DevelopmentProvider();
+      }
+      catch (Exception e) {
+          throw new RuntimeException(e);
+      }
+  }
+
+  @Override
+  public Submitter<Topology, Job> createSubmitter() {
+      return (DevelopmentProvider) getTopologyProvider();
+  }
   
   @Test
   public void testServiceRegistered() throws Exception {

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentPlumbingTest.java
----------------------------------------------------------------------
diff --git a/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentPlumbingTest.java b/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentPlumbingTest.java
index 63ff7bf..8545b49 100644
--- a/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentPlumbingTest.java
+++ b/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentPlumbingTest.java
@@ -18,8 +18,27 @@ under the License.
 */
 package org.apache.edgent.test.providers.dev.topology;
 
-import org.apache.edgent.test.providers.dev.DevelopmentTestSetup;
+import org.apache.edgent.execution.Job;
+import org.apache.edgent.execution.Submitter;
+import org.apache.edgent.providers.development.DevelopmentProvider;
 import org.apache.edgent.test.topology.PlumbingTest;
+import org.apache.edgent.topology.Topology;
+
+public class DevelopmentPlumbingTest extends PlumbingTest {
+
+  @Override
+  public DevelopmentProvider createTopologyProvider() {
+      try {
+          return new DevelopmentProvider();
+      }
+      catch (Exception e) {
+          throw new RuntimeException(e);
+      }
+  }
+
+  @Override
+  public Submitter<Topology, Job> createSubmitter() {
+      return (DevelopmentProvider) getTopologyProvider();
+  }
 
-public class DevelopmentPlumbingTest extends PlumbingTest implements DevelopmentTestSetup {
 }

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentTStreamTest.java
----------------------------------------------------------------------
diff --git a/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentTStreamTest.java b/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentTStreamTest.java
index ef9b9db..568af97 100644
--- a/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentTStreamTest.java
+++ b/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentTStreamTest.java
@@ -18,8 +18,27 @@ under the License.
 */
 package org.apache.edgent.test.providers.dev.topology;
 
-import org.apache.edgent.test.providers.dev.DevelopmentTestSetup;
+import org.apache.edgent.execution.Job;
+import org.apache.edgent.execution.Submitter;
+import org.apache.edgent.providers.development.DevelopmentProvider;
 import org.apache.edgent.test.topology.TStreamTest;
+import org.apache.edgent.topology.Topology;
+
+public class DevelopmentTStreamTest extends TStreamTest {
+
+  @Override
+  public DevelopmentProvider createTopologyProvider() {
+      try {
+          return new DevelopmentProvider();
+      }
+      catch (Exception e) {
+          throw new RuntimeException(e);
+      }
+  }
+
+  @Override
+  public Submitter<Topology, Job> createSubmitter() {
+      return (DevelopmentProvider) getTopologyProvider();
+  }
 
-public class DevelopmentTStreamTest extends TStreamTest implements DevelopmentTestSetup {
 }

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentTopologyTest.java
----------------------------------------------------------------------
diff --git a/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentTopologyTest.java b/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentTopologyTest.java
index 182ce56..90f6c85 100644
--- a/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentTopologyTest.java
+++ b/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentTopologyTest.java
@@ -18,8 +18,27 @@ under the License.
 */
 package org.apache.edgent.test.providers.dev.topology;
 
-import org.apache.edgent.test.providers.dev.DevelopmentTestSetup;
+import org.apache.edgent.execution.Job;
+import org.apache.edgent.execution.Submitter;
+import org.apache.edgent.providers.development.DevelopmentProvider;
 import org.apache.edgent.test.topology.TopologyTest;
+import org.apache.edgent.topology.Topology;
+
+public class DevelopmentTopologyTest extends TopologyTest {
+
+  @Override
+  public DevelopmentProvider createTopologyProvider() {
+      try {
+          return new DevelopmentProvider();
+      }
+      catch (Exception e) {
+          throw new RuntimeException(e);
+      }
+  }
+
+  @Override
+  public Submitter<Topology, Job> createSubmitter() {
+      return (DevelopmentProvider) getTopologyProvider();
+  }
 
-public class DevelopmentTopologyTest extends TopologyTest implements DevelopmentTestSetup {
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentWindowTest.java
----------------------------------------------------------------------
diff --git a/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentWindowTest.java b/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentWindowTest.java
index 4bb9343..23563f4 100644
--- a/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentWindowTest.java
+++ b/providers/development/src/test/java/org/apache/edgent/test/providers/dev/topology/DevelopmentWindowTest.java
@@ -18,8 +18,27 @@ under the License.
 */
 package org.apache.edgent.test.providers.dev.topology;
 
-import org.apache.edgent.test.providers.dev.DevelopmentTestSetup;
+import org.apache.edgent.execution.Job;
+import org.apache.edgent.execution.Submitter;
+import org.apache.edgent.providers.development.DevelopmentProvider;
 import org.apache.edgent.test.topology.TWindowTest;
+import org.apache.edgent.topology.Topology;
+
+public class DevelopmentWindowTest extends TWindowTest {
+
+  @Override
+  public DevelopmentProvider createTopologyProvider() {
+      try {
+          return new DevelopmentProvider();
+      }
+      catch (Exception e) {
+          throw new RuntimeException(e);
+      }
+  }
+
+  @Override
+  public Submitter<Topology, Job> createSubmitter() {
+      return (DevelopmentProvider) getTopologyProvider();
+  }
 
-public class DevelopmentWindowTest extends TWindowTest implements DevelopmentTestSetup {
 }

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/DirectJobTest.java
----------------------------------------------------------------------
diff --git a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/DirectJobTest.java b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/DirectJobTest.java
index 14f9704..8b8a605 100644
--- a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/DirectJobTest.java
+++ b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/DirectJobTest.java
@@ -44,7 +44,7 @@ import org.junit.Test;
 
 import com.google.gson.JsonObject;
 
-public class DirectJobTest extends TopologyAbstractTest implements DirectTestSetup {
+public class DirectJobTest extends DirectTopologyTestBase {
     @Test
     public void jobName0() throws Exception {
         String[] data = new String[] {};

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/DirectTestSetup.java
----------------------------------------------------------------------
diff --git a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/DirectTestSetup.java b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/DirectTestSetup.java
deleted file mode 100644
index c06ddd1..0000000
--- a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/DirectTestSetup.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you 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.
-*/
-package org.apache.edgent.test.providers.direct;
-
-import org.apache.edgent.execution.Job;
-import org.apache.edgent.execution.Submitter;
-import org.apache.edgent.providers.direct.DirectProvider;
-import org.apache.edgent.test.topology.TopologyTestSetup;
-import org.apache.edgent.topology.Topology;
-
-public interface DirectTestSetup extends TopologyTestSetup {
-    @Override
-    default DirectProvider createTopologyProvider() {
-        return new DirectProvider();
-    }
-
-    @Override
-    default Submitter<Topology, Job> createSubmitter() {
-        return (DirectProvider) getTopologyProvider();
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/DirectTopologyTestBase.java
----------------------------------------------------------------------
diff --git a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/DirectTopologyTestBase.java b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/DirectTopologyTestBase.java
new file mode 100644
index 0000000..bef74f0
--- /dev/null
+++ b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/DirectTopologyTestBase.java
@@ -0,0 +1,21 @@
+package org.apache.edgent.test.providers.direct;
+
+import org.apache.edgent.execution.Job;
+import org.apache.edgent.execution.Submitter;
+import org.apache.edgent.providers.direct.DirectProvider;
+import org.apache.edgent.test.topology.TopologyAbstractTest;
+import org.apache.edgent.topology.Topology;
+
+public class DirectTopologyTestBase extends TopologyAbstractTest {
+
+  @Override
+  public DirectProvider createTopologyProvider() {
+      return new DirectProvider();
+  }
+
+  @Override
+  public Submitter<Topology, Job> createSubmitter() {
+      return (DirectProvider) getTopologyProvider();
+  }
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricObjectNameFactoryTest.java
----------------------------------------------------------------------
diff --git a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricObjectNameFactoryTest.java b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricObjectNameFactoryTest.java
index 0f77091..d39514d 100644
--- a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricObjectNameFactoryTest.java
+++ b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricObjectNameFactoryTest.java
@@ -18,8 +18,22 @@ under the License.
 */
 package org.apache.edgent.test.providers.direct.metrics;
 
+import org.apache.edgent.execution.Job;
+import org.apache.edgent.execution.Submitter;
+import org.apache.edgent.providers.direct.DirectProvider;
 import org.apache.edgent.test.metrics.MetricObjectNameFactoryTest;
-import org.apache.edgent.test.providers.direct.DirectTestSetup;
+import org.apache.edgent.topology.Topology;
+
+public class DirectMetricObjectNameFactoryTest extends MetricObjectNameFactoryTest {
+
+  @Override
+  public DirectProvider createTopologyProvider() {
+      return new DirectProvider();
+  }
+
+  @Override
+  public Submitter<Topology, Job> createSubmitter() {
+      return (DirectProvider) getTopologyProvider();
+  }
 
-public class DirectMetricObjectNameFactoryTest extends MetricObjectNameFactoryTest implements DirectTestSetup {
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricsEverywhereTest.java
----------------------------------------------------------------------
diff --git a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricsEverywhereTest.java b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricsEverywhereTest.java
index c7ece97..2cdaf6f 100644
--- a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricsEverywhereTest.java
+++ b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricsEverywhereTest.java
@@ -18,8 +18,22 @@ under the License.
 */
 package org.apache.edgent.test.providers.direct.metrics;
 
+import org.apache.edgent.execution.Job;
+import org.apache.edgent.execution.Submitter;
+import org.apache.edgent.providers.direct.DirectProvider;
 import org.apache.edgent.test.metrics.MetricsEverywhereTest;
-import org.apache.edgent.test.providers.direct.DirectTestSetup;
+import org.apache.edgent.topology.Topology;
+
+public class DirectMetricsEverywhereTest extends MetricsEverywhereTest {
+
+  @Override
+  public DirectProvider createTopologyProvider() {
+      return new DirectProvider();
+  }
+
+  @Override
+  public Submitter<Topology, Job> createSubmitter() {
+      return (DirectProvider) getTopologyProvider();
+  }
 
-public class DirectMetricsEverywhereTest extends MetricsEverywhereTest implements DirectTestSetup {
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricsOffTest.java
----------------------------------------------------------------------
diff --git a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricsOffTest.java b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricsOffTest.java
index adcf48f..be17012 100644
--- a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricsOffTest.java
+++ b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricsOffTest.java
@@ -18,8 +18,22 @@ under the License.
 */
 package org.apache.edgent.test.providers.direct.metrics;
 
+import org.apache.edgent.execution.Job;
+import org.apache.edgent.execution.Submitter;
+import org.apache.edgent.providers.direct.DirectProvider;
 import org.apache.edgent.test.metrics.MetricsOffTest;
-import org.apache.edgent.test.providers.direct.DirectTestSetup;
+import org.apache.edgent.topology.Topology;
+
+public class DirectMetricsOffTest extends MetricsOffTest {
+
+  @Override
+  public DirectProvider createTopologyProvider() {
+      return new DirectProvider();
+  }
+
+  @Override
+  public Submitter<Topology, Job> createSubmitter() {
+      return (DirectProvider) getTopologyProvider();
+  }
 
-public class DirectMetricsOffTest extends MetricsOffTest implements DirectTestSetup {
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricsOnTest.java
----------------------------------------------------------------------
diff --git a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricsOnTest.java b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricsOnTest.java
index b592746..9805568 100644
--- a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricsOnTest.java
+++ b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/metrics/DirectMetricsOnTest.java
@@ -18,8 +18,22 @@ under the License.
 */
 package org.apache.edgent.test.providers.direct.metrics;
 
+import org.apache.edgent.execution.Job;
+import org.apache.edgent.execution.Submitter;
+import org.apache.edgent.providers.direct.DirectProvider;
 import org.apache.edgent.test.metrics.MetricsOnTest;
-import org.apache.edgent.test.providers.direct.DirectTestSetup;
+import org.apache.edgent.topology.Topology;
+
+public class DirectMetricsOnTest extends MetricsOnTest {
+
+  @Override
+  public DirectProvider createTopologyProvider() {
+      return new DirectProvider();
+  }
+
+  @Override
+  public Submitter<Topology, Job> createSubmitter() {
+      return (DirectProvider) getTopologyProvider();
+  }
 
-public class DirectMetricsOnTest extends MetricsOnTest implements DirectTestSetup {
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectPlumbingTest.java
----------------------------------------------------------------------
diff --git a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectPlumbingTest.java b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectPlumbingTest.java
index 6f74690..76f0b74 100644
--- a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectPlumbingTest.java
+++ b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectPlumbingTest.java
@@ -18,8 +18,21 @@ under the License.
 */
 package org.apache.edgent.test.providers.direct.topology;
 
-import org.apache.edgent.test.providers.direct.DirectTestSetup;
+import org.apache.edgent.execution.Job;
+import org.apache.edgent.execution.Submitter;
+import org.apache.edgent.providers.direct.DirectProvider;
 import org.apache.edgent.test.topology.PlumbingTest;
+import org.apache.edgent.topology.Topology;
 
-public class DirectPlumbingTest extends PlumbingTest implements DirectTestSetup {
+public class DirectPlumbingTest extends PlumbingTest {
+
+  @Override
+  public DirectProvider createTopologyProvider() {
+      return new DirectProvider();
+  }
+
+  @Override
+  public Submitter<Topology, Job> createSubmitter() {
+      return (DirectProvider) getTopologyProvider();
+  }
 }

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectTStreamTest.java
----------------------------------------------------------------------
diff --git a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectTStreamTest.java b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectTStreamTest.java
index 80ddffd..ea67b07 100644
--- a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectTStreamTest.java
+++ b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectTStreamTest.java
@@ -18,8 +18,21 @@ under the License.
 */
 package org.apache.edgent.test.providers.direct.topology;
 
-import org.apache.edgent.test.providers.direct.DirectTestSetup;
+import org.apache.edgent.execution.Job;
+import org.apache.edgent.execution.Submitter;
+import org.apache.edgent.providers.direct.DirectProvider;
 import org.apache.edgent.test.topology.TStreamTest;
+import org.apache.edgent.topology.Topology;
 
-public class DirectTStreamTest extends TStreamTest implements DirectTestSetup {
+public class DirectTStreamTest extends TStreamTest {
+
+  @Override
+  public DirectProvider createTopologyProvider() {
+      return new DirectProvider();
+  }
+
+  @Override
+  public Submitter<Topology, Job> createSubmitter() {
+      return (DirectProvider) getTopologyProvider();
+  }
 }

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectTopologyTest.java
----------------------------------------------------------------------
diff --git a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectTopologyTest.java b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectTopologyTest.java
index b2b7ba2..9f29a86 100644
--- a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectTopologyTest.java
+++ b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectTopologyTest.java
@@ -18,8 +18,21 @@ under the License.
 */
 package org.apache.edgent.test.providers.direct.topology;
 
-import org.apache.edgent.test.providers.direct.DirectTestSetup;
+import org.apache.edgent.execution.Job;
+import org.apache.edgent.execution.Submitter;
+import org.apache.edgent.providers.direct.DirectProvider;
 import org.apache.edgent.test.topology.TopologyTest;
+import org.apache.edgent.topology.Topology;
 
-public class DirectTopologyTest extends TopologyTest implements DirectTestSetup {
+public class DirectTopologyTest extends TopologyTest {
+
+  @Override
+  public DirectProvider createTopologyProvider() {
+      return new DirectProvider();
+  }
+
+  @Override
+  public Submitter<Topology, Job> createSubmitter() {
+      return (DirectProvider) getTopologyProvider();
+  }
 }

http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/3c7adbc9/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectWindowTest.java
----------------------------------------------------------------------
diff --git a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectWindowTest.java b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectWindowTest.java
index f5deefc..eb6953a 100644
--- a/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectWindowTest.java
+++ b/providers/direct/src/test/java/org/apache/edgent/test/providers/direct/topology/DirectWindowTest.java
@@ -18,8 +18,22 @@ under the License.
 */
 package org.apache.edgent.test.providers.direct.topology;
 
-import org.apache.edgent.test.providers.direct.DirectTestSetup;
+import org.apache.edgent.execution.Job;
+import org.apache.edgent.execution.Submitter;
+import org.apache.edgent.providers.direct.DirectProvider;
 import org.apache.edgent.test.topology.TWindowTest;
+import org.apache.edgent.topology.Topology;
+
+public class DirectWindowTest extends TWindowTest {
+
+  @Override
+  public DirectProvider createTopologyProvider() {
+      return new DirectProvider();
+  }
+
+  @Override
+  public Submitter<Topology, Job> createSubmitter() {
+      return (DirectProvider) getTopologyProvider();
+  }
 
-public class DirectWindowTest extends TWindowTest implements DirectTestSetup {
 }