DummyBenchmarkingTest: all five connectors are added into the test class.

git-svn-id: https://hyracks.googlecode.com/svn/branches/hyracks_spilling_groupby_perf@388 123451ca-8445-de46-9d55-352943316053
diff --git a/hyracks-examples/hyracks-benchmarking-tests/benchmarkingclient/src/main/java/edu/uci/ics/hyracks/examples/benchmarking/client/DummyOperatorsBenchmarkingClient.java b/hyracks-examples/hyracks-benchmarking-tests/benchmarkingclient/src/main/java/edu/uci/ics/hyracks/examples/benchmarking/client/DummyOperatorsBenchmarkingClient.java
index 31dfc70..2b04081 100644
--- a/hyracks-examples/hyracks-benchmarking-tests/benchmarkingclient/src/main/java/edu/uci/ics/hyracks/examples/benchmarking/client/DummyOperatorsBenchmarkingClient.java
+++ b/hyracks-examples/hyracks-benchmarking-tests/benchmarkingclient/src/main/java/edu/uci/ics/hyracks/examples/benchmarking/client/DummyOperatorsBenchmarkingClient.java
@@ -24,6 +24,7 @@
 import edu.uci.ics.hyracks.api.client.IHyracksClientConnection;
 import edu.uci.ics.hyracks.api.constraints.PartitionConstraintHelper;
 import edu.uci.ics.hyracks.api.dataflow.IConnectorDescriptor;
+import edu.uci.ics.hyracks.api.dataflow.value.IBinaryComparatorFactory;
 import edu.uci.ics.hyracks.api.dataflow.value.IBinaryHashFunctionFactory;
 import edu.uci.ics.hyracks.api.job.JobSpecification;
 import edu.uci.ics.hyracks.dataflow.common.data.partition.FieldHashPartitionComputerFactory;
@@ -33,7 +34,9 @@
 import edu.uci.ics.hyracks.dataflow.std.benchmarking.DummyInputSinkOperatorDescriptor;
 import edu.uci.ics.hyracks.dataflow.std.benchmarking.DummyOperatorDescriptor;
 import edu.uci.ics.hyracks.dataflow.std.connectors.MToNHashPartitioningConnectorDescriptor;
+import edu.uci.ics.hyracks.dataflow.std.connectors.MToNHashPartitioningMergingConnectorDescriptor;
 import edu.uci.ics.hyracks.dataflow.std.connectors.MToNRangePartitioningConnectorDescriptor;
+import edu.uci.ics.hyracks.dataflow.std.connectors.MToNReplicatingConnectorDescriptor;
 import edu.uci.ics.hyracks.dataflow.std.connectors.OneToOneConnectorDescriptor;
 
 /**
@@ -126,13 +129,17 @@
                         connChain = new OneToOneConnectorDescriptor(spec);
                         break;
                     case 1:
-                        connChain = new MToNHashPartitioningConnectorDescriptor(
-                                spec,
-                                new FieldHashPartitionComputerFactory(new int[] {}, new IBinaryHashFunctionFactory[] {}));
+                        connChain = new MToNHashPartitioningConnectorDescriptor(spec, new FieldHashPartitionComputerFactory(new int[]{}, new IBinaryHashFunctionFactory[] {}));
                         break;
                     case 2:
                         connChain = new MToNRangePartitioningConnectorDescriptor(spec, 0, null);
                         break;
+                    case 3:
+                        connChain = new MToNHashPartitioningMergingConnectorDescriptor(spec, new FieldHashPartitionComputerFactory(new int[]{}, new IBinaryHashFunctionFactory[] {}), new int[]{}, new IBinaryComparatorFactory[]{});
+                        break;
+                    case 4:
+                        connChain = new MToNReplicatingConnectorDescriptor(spec);
+                        break;
                     default:
                         connChain = new OneToOneConnectorDescriptor(spec);
                         break;
diff --git a/hyracks-examples/hyracks-integration-tests/src/test/java/edu/uci/ics/hyracks/tests/benchmarking/DummiesWorkflowTests.java b/hyracks-examples/hyracks-integration-tests/src/test/java/edu/uci/ics/hyracks/tests/benchmarking/DummiesWorkflowTests.java
index b5a91e8..c91e37f 100644
--- a/hyracks-examples/hyracks-integration-tests/src/test/java/edu/uci/ics/hyracks/tests/benchmarking/DummiesWorkflowTests.java
+++ b/hyracks-examples/hyracks-integration-tests/src/test/java/edu/uci/ics/hyracks/tests/benchmarking/DummiesWorkflowTests.java
@@ -18,12 +18,19 @@
 
 import edu.uci.ics.hyracks.api.constraints.PartitionConstraintHelper;
 import edu.uci.ics.hyracks.api.dataflow.IConnectorDescriptor;
+import edu.uci.ics.hyracks.api.dataflow.value.IBinaryComparatorFactory;
+import edu.uci.ics.hyracks.api.dataflow.value.IBinaryHashFunctionFactory;
 import edu.uci.ics.hyracks.api.job.JobSpecification;
+import edu.uci.ics.hyracks.dataflow.common.data.partition.FieldHashPartitionComputerFactory;
 import edu.uci.ics.hyracks.dataflow.std.base.AbstractSingleActivityOperatorDescriptor;
 import edu.uci.ics.hyracks.dataflow.std.benchmarking.DummyInOutOperatorDescriptor;
 import edu.uci.ics.hyracks.dataflow.std.benchmarking.DummyInputOperatorDescriptor;
 import edu.uci.ics.hyracks.dataflow.std.benchmarking.DummyInputSinkOperatorDescriptor;
 import edu.uci.ics.hyracks.dataflow.std.benchmarking.DummyOperatorDescriptor;
+import edu.uci.ics.hyracks.dataflow.std.connectors.MToNHashPartitioningConnectorDescriptor;
+import edu.uci.ics.hyracks.dataflow.std.connectors.MToNHashPartitioningMergingConnectorDescriptor;
+import edu.uci.ics.hyracks.dataflow.std.connectors.MToNRangePartitioningConnectorDescriptor;
+import edu.uci.ics.hyracks.dataflow.std.connectors.MToNReplicatingConnectorDescriptor;
 import edu.uci.ics.hyracks.dataflow.std.connectors.OneToOneConnectorDescriptor;
 import edu.uci.ics.hyracks.tests.integration.AbstractIntegrationTest;
 
@@ -33,7 +40,8 @@
  */
 public class DummiesWorkflowTests extends AbstractIntegrationTest {
     
-    final int chainCount = 2;
+    final int chainLength = 5;
+    final int connectorType = 4;
     
     @Test
     public void dummyOperatorTest() throws Exception {
@@ -85,10 +93,31 @@
         
         AbstractSingleActivityOperatorDescriptor opter = dummyIn;
         
-        for(int i = 0; i < chainCount; i++) {
+        for(int i = 0; i < chainLength - 2; i++){
             DummyInOutOperatorDescriptor dummyChain = new DummyInOutOperatorDescriptor(spec);
             PartitionConstraintHelper.addAbsoluteLocationConstraint(spec, dummyChain, NC2_ID, NC1_ID);
-            IConnectorDescriptor connChain = new OneToOneConnectorDescriptor(spec);
+            IConnectorDescriptor connChain;
+            switch (connectorType) {
+                case 0:
+                    connChain = new OneToOneConnectorDescriptor(spec);
+                    break;
+                case 1:
+                    connChain = new MToNHashPartitioningConnectorDescriptor(spec, new FieldHashPartitionComputerFactory(new int[]{}, new IBinaryHashFunctionFactory[] {}));
+                    break;
+                case 2:
+                    connChain = new MToNRangePartitioningConnectorDescriptor(spec, 0, null);
+                    break;
+                case 3:
+                    connChain = new MToNHashPartitioningMergingConnectorDescriptor(spec, new FieldHashPartitionComputerFactory(new int[]{}, new IBinaryHashFunctionFactory[] {}), new int[]{}, new IBinaryComparatorFactory[]{});
+                    break;
+                case 4:
+                    connChain = new MToNReplicatingConnectorDescriptor(spec);
+                    break;
+                default:
+                    connChain = new OneToOneConnectorDescriptor(spec);
+                    break;
+            }
+            
             spec.connect(connChain, opter, 0, dummyChain, 0);
             opter = dummyChain;
         }