beam-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From tg...@apache.org
Subject [1/4] incubator-beam git commit: Remove getProducingTransformInternal from DirectGraphVisitorTest
Date Tue, 06 Dec 2016 18:47:04 GMT
Repository: incubator-beam
Updated Branches:
  refs/heads/master 077d9118d -> ca6ab6c68


Remove getProducingTransformInternal from DirectGraphVisitorTest


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

Branch: refs/heads/master
Commit: ec1eff387a711039801289c8f59c4240b1f1d007
Parents: d6c6ad3
Author: Thomas Groh <tgroh@google.com>
Authored: Fri Dec 2 14:26:04 2016 -0800
Committer: Thomas Groh <tgroh@google.com>
Committed: Tue Dec 6 10:46:39 2016 -0800

----------------------------------------------------------------------
 .../runners/direct/DirectGraphVisitorTest.java  | 70 +++++++++++++-------
 1 file changed, 47 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/ec1eff38/runners/direct-java/src/test/java/org/apache/beam/runners/direct/DirectGraphVisitorTest.java
----------------------------------------------------------------------
diff --git a/runners/direct-java/src/test/java/org/apache/beam/runners/direct/DirectGraphVisitorTest.java
b/runners/direct-java/src/test/java/org/apache/beam/runners/direct/DirectGraphVisitorTest.java
index fb84de8..5ad278b 100644
--- a/runners/direct-java/src/test/java/org/apache/beam/runners/direct/DirectGraphVisitorTest.java
+++ b/runners/direct-java/src/test/java/org/apache/beam/runners/direct/DirectGraphVisitorTest.java
@@ -19,25 +19,34 @@ package org.apache.beam.runners.direct;
 
 import static org.hamcrest.Matchers.emptyIterable;
 import static org.hamcrest.Matchers.equalTo;
+import static org.hamcrest.Matchers.hasSize;
 import static org.hamcrest.Matchers.is;
 import static org.junit.Assert.assertThat;
+import static org.junit.Assert.assertTrue;
 
+import com.google.common.collect.Iterables;
 import java.io.Serializable;
+import java.util.ArrayList;
 import java.util.List;
 import org.apache.beam.sdk.io.CountingInput;
+import org.apache.beam.sdk.io.CountingSource;
+import org.apache.beam.sdk.io.Read;
 import org.apache.beam.sdk.testing.TestPipeline;
 import org.apache.beam.sdk.transforms.AppliedPTransform;
 import org.apache.beam.sdk.transforms.Create;
 import org.apache.beam.sdk.transforms.DoFn;
 import org.apache.beam.sdk.transforms.Flatten;
+import org.apache.beam.sdk.transforms.Flatten.FlattenPCollectionList;
 import org.apache.beam.sdk.transforms.PTransform;
 import org.apache.beam.sdk.transforms.ParDo;
 import org.apache.beam.sdk.transforms.View;
+import org.apache.beam.sdk.values.PBegin;
 import org.apache.beam.sdk.values.PCollection;
 import org.apache.beam.sdk.values.PCollectionList;
 import org.apache.beam.sdk.values.PCollectionView;
 import org.apache.beam.sdk.values.PDone;
 import org.apache.beam.sdk.values.PInput;
+import org.apache.beam.sdk.values.POutput;
 import org.hamcrest.Matchers;
 import org.junit.Rule;
 import org.junit.Test;
@@ -48,7 +57,6 @@ import org.junit.runners.JUnit4;
 /**
  * Tests for {@link DirectGraphVisitor}.
  */
-// TODO: Replace uses of getProducing
 @RunWith(JUnit4.class)
 public class DirectGraphVisitorTest implements Serializable {
   @Rule public transient ExpectedException thrown = ExpectedException.none();
@@ -81,26 +89,36 @@ public class DirectGraphVisitorTest implements Serializable {
   @Test
   public void getRootTransformsContainsPBegins() {
     PCollection<String> created = p.apply(Create.of("foo", "bar"));
-    PCollection<Long> counted = p.apply(CountingInput.upTo(1234L));
+    PCollection<Long> counted = p.apply(Read.from(CountingSource.upTo(1234L)));
     PCollection<Long> unCounted = p.apply(CountingInput.unbounded());
     p.traverseTopologically(visitor);
+    DirectGraph graph = visitor.getGraph();
+    assertThat(graph.getRootTransforms(), hasSize(3));
+    List<PTransform<?, ?>> unapplied = new ArrayList<>();
     assertThat(
-        visitor.getGraph().getRootTransforms(),
+        graph.getRootTransforms(),
         Matchers.<AppliedPTransform<?, ?, ?>>containsInAnyOrder(
-            created.getProducingTransformInternal(),
-            counted.getProducingTransformInternal(),
-            unCounted.getProducingTransformInternal()));
+            graph.getProducer(created), graph.getProducer(counted), graph.getProducer(unCounted)));
+    for (AppliedPTransform<?, ?, ?> root : graph.getRootTransforms())  {
+      assertTrue(root.getInput() instanceof PBegin);
+      assertThat(root.getOutput(), Matchers.<POutput>isOneOf(created, counted, unCounted));
+    }
   }
 
   @Test
   public void getRootTransformsContainsEmptyFlatten() {
-    PCollection<String> empty =
-        PCollectionList.<String>empty(p).apply(Flatten.<String>pCollections());
+    FlattenPCollectionList<String> flatten = Flatten.pCollections();
+    PCollectionList<String> emptyList = PCollectionList.empty(p);
+    PCollection<String> empty = emptyList.apply(flatten);
     p.traverseTopologically(visitor);
+    DirectGraph graph = visitor.getGraph();
     assertThat(
-        visitor.getGraph().getRootTransforms(),
-        Matchers.<AppliedPTransform<?, ?, ?>>containsInAnyOrder(
-            empty.getProducingTransformInternal()));
+        graph.getRootTransforms(),
+        Matchers.<AppliedPTransform<?, ?, ?>>containsInAnyOrder(graph.getProducer(empty)));
+    AppliedPTransform<?, ?, ?> onlyRoot = Iterables.getOnlyElement(graph.getRootTransforms());
+    assertThat(onlyRoot.getTransform(), Matchers.<PTransform<?, ?>>equalTo(flatten));
+    assertThat(onlyRoot.getInput(), Matchers.<PInput>equalTo(emptyList));
+    assertThat(onlyRoot.getOutput(), Matchers.<POutput>equalTo(empty));
   }
 
   @Test
@@ -122,16 +140,20 @@ public class DirectGraphVisitorTest implements Serializable {
 
     p.traverseTopologically(visitor);
 
+    DirectGraph graph = visitor.getGraph();
+    AppliedPTransform<?, ?, ?> transformedProducer =
+        graph.getProducer(transformed);
+    AppliedPTransform<?, ?, ?> flattenedProducer =
+        graph.getProducer(flattened);
+
     assertThat(
-        visitor.getGraph().getPrimitiveConsumers(created),
+        graph.getPrimitiveConsumers(created),
         Matchers.<AppliedPTransform<?, ?, ?>>containsInAnyOrder(
-            transformed.getProducingTransformInternal(),
-            flattened.getProducingTransformInternal()));
+            transformedProducer, flattenedProducer));
     assertThat(
-        visitor.getGraph().getPrimitiveConsumers(transformed),
-        Matchers.<AppliedPTransform<?, ?, ?>>containsInAnyOrder(
-            flattened.getProducingTransformInternal()));
-    assertThat(visitor.getGraph().getPrimitiveConsumers(flattened), emptyIterable());
+        graph.getPrimitiveConsumers(transformed),
+        Matchers.<AppliedPTransform<?, ?, ?>>containsInAnyOrder(flattenedProducer));
+    assertThat(graph.getPrimitiveConsumers(flattened), emptyIterable());
   }
 
   @Test
@@ -143,12 +165,14 @@ public class DirectGraphVisitorTest implements Serializable {
 
     p.traverseTopologically(visitor);
 
+    DirectGraph graph = visitor.getGraph();
+    AppliedPTransform<?, ?, ?> flattenedProducer = graph.getProducer(flattened);
+
     assertThat(
-        visitor.getGraph().getPrimitiveConsumers(created),
-        Matchers.<AppliedPTransform<?, ?, ?>>containsInAnyOrder(
-            flattened.getProducingTransformInternal(),
-            flattened.getProducingTransformInternal()));
-    assertThat(visitor.getGraph().getPrimitiveConsumers(flattened), emptyIterable());
+        graph.getPrimitiveConsumers(created),
+        Matchers.<AppliedPTransform<?, ?, ?>>containsInAnyOrder(flattenedProducer,
+            flattenedProducer));
+    assertThat(graph.getPrimitiveConsumers(flattened), emptyIterable());
   }
 
   @Test


Mime
View raw message