Repository: beam
Updated Branches:
  refs/heads/master 1e2f90c17 -> 13767de88


http://git-wip-us.apache.org/repos/asf/beam/blob/7b98fa08/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/StandardCoderTest.java
----------------------------------------------------------------------
diff --git 
a/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/StandardCoderTest.java
 
b/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/StandardCoderTest.java
index e3d0537..a948f78 100644
--- 
a/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/StandardCoderTest.java
+++ 
b/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/StandardCoderTest.java
@@ -26,6 +26,7 @@ import java.util.Collections;
 import java.util.List;
 import javax.annotation.Nullable;
 import org.apache.beam.sdk.testing.CoderProperties;
+import org.apache.beam.sdk.values.TypeDescriptor;
 import org.hamcrest.CoreMatchers;
 import org.junit.Assert;
 import org.junit.Test;
@@ -195,4 +196,43 @@ public class StandardCoderTest {
     Assert.assertThat(coderWithArgs.toString(),
         
CoreMatchers.equalTo("StandardCoderTest$1(BigDecimalCoder,BigIntegerCoder)"));
   }
+
+  @Test
+  public void testGenericStandardCoderFallsBackToT() throws Exception {
+    Assert.assertThat(
+        new Foo<String>().getEncodedTypeDescriptor().getType(),
+        CoreMatchers.not(TypeDescriptor.of(String.class).getType()));
+  }
+
+  @Test
+  public void testGenericStandardCoder() throws Exception {
+    Assert.assertThat(new FooTwo().getEncodedTypeDescriptor(),
+        CoreMatchers.equalTo(TypeDescriptor.of(String.class)));
+  }
+
+  private static class Foo<T> extends StandardCoder<T> {
+
+    @Override
+    public void encode(T value, OutputStream outStream, Coder.Context context)
+        throws CoderException, IOException {
+      throw new UnsupportedOperationException();
+    }
+
+    @Override
+    public T decode(InputStream inStream, Coder.Context context)
+        throws CoderException, IOException {
+      throw new UnsupportedOperationException();
+    }
+
+    @Override
+    public List<? extends Coder<?>> getCoderArguments() {
+      throw new UnsupportedOperationException();
+    }
+
+    @Override
+    public void verifyDeterministic() throws Coder.NonDeterministicException {}
+  }
+
+  private static class FooTwo extends Foo<String> {
+  }
 }

http://git-wip-us.apache.org/repos/asf/beam/blob/7b98fa08/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/StringDelegateCoderTest.java
----------------------------------------------------------------------
diff --git 
a/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/StringDelegateCoderTest.java
 
b/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/StringDelegateCoderTest.java
index b8a45fd..f2d376d 100644
--- 
a/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/StringDelegateCoderTest.java
+++ 
b/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/StringDelegateCoderTest.java
@@ -17,11 +17,15 @@
  */
 package org.apache.beam.sdk.coders;
 
+import static org.hamcrest.Matchers.equalTo;
+import static org.junit.Assert.assertThat;
+
 import java.net.URI;
 import java.util.Arrays;
 import java.util.List;
 import org.apache.beam.sdk.coders.Coder.NonDeterministicException;
 import org.apache.beam.sdk.testing.CoderProperties;
+import org.apache.beam.sdk.values.TypeDescriptor;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.JUnit4;
@@ -68,4 +72,11 @@ public class StringDelegateCoderTest {
     StringDelegateCoder<URI> coder = StringDelegateCoder.of(URI.class);
     CoderProperties.coderHasEncodingId(coder, URI.class.getName());
   }
+
+  @Test
+  public void testEncodedTypeDescriptor() throws Exception {
+    assertThat(
+        StringDelegateCoder.of(URI.class).getEncodedTypeDescriptor(),
+        equalTo(TypeDescriptor.of(URI.class)));
+  }
 }

http://git-wip-us.apache.org/repos/asf/beam/blob/7b98fa08/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/StringUtf8CoderTest.java
----------------------------------------------------------------------
diff --git 
a/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/StringUtf8CoderTest.java
 
b/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/StringUtf8CoderTest.java
index cce04ec..b25cf06 100644
--- 
a/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/StringUtf8CoderTest.java
+++ 
b/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/StringUtf8CoderTest.java
@@ -17,10 +17,14 @@
  */
 package org.apache.beam.sdk.coders;
 
+import static org.hamcrest.Matchers.equalTo;
+import static org.junit.Assert.assertThat;
+
 import java.util.Arrays;
 import java.util.List;
 import org.apache.beam.sdk.testing.CoderProperties;
 import org.apache.beam.sdk.util.CoderUtils;
+import org.apache.beam.sdk.values.TypeDescriptor;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.ExpectedException;
@@ -76,4 +80,9 @@ public class StringUtf8CoderTest {
 
     CoderUtils.encodeToBase64(TEST_CODER, null);
   }
+
+  @Test
+  public void testEncodedTypeDescriptor() throws Exception {
+    assertThat(TEST_CODER.getEncodedTypeDescriptor(), 
equalTo(TypeDescriptor.of(String.class)));
+  }
 }

http://git-wip-us.apache.org/repos/asf/beam/blob/7b98fa08/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/TableRowJsonCoderTest.java
----------------------------------------------------------------------
diff --git 
a/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/TableRowJsonCoderTest.java
 
b/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/TableRowJsonCoderTest.java
index 3da6522..5253ce7 100644
--- 
a/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/TableRowJsonCoderTest.java
+++ 
b/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/TableRowJsonCoderTest.java
@@ -17,10 +17,14 @@
  */
 package org.apache.beam.sdk.coders;
 
+import static org.hamcrest.Matchers.equalTo;
+import static org.junit.Assert.assertThat;
+
 import com.google.api.services.bigquery.model.TableRow;
 import java.util.Arrays;
 import java.util.List;
 import org.apache.beam.sdk.testing.CoderProperties;
+import org.apache.beam.sdk.values.TypeDescriptor;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.JUnit4;
@@ -82,4 +86,9 @@ public class TableRowJsonCoderTest {
   public void testWireFormatEncode() throws Exception {
     CoderProperties.coderEncodesBase64(TEST_CODER, TEST_VALUES, 
TEST_ENCODINGS);
   }
+
+  @Test
+  public void testEncodedTypeDescriptor() throws Exception {
+    assertThat(TEST_CODER.getEncodedTypeDescriptor(), 
equalTo(TypeDescriptor.of(TableRow.class)));
+  }
 }

http://git-wip-us.apache.org/repos/asf/beam/blob/7b98fa08/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/TextualIntegerCoderTest.java
----------------------------------------------------------------------
diff --git 
a/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/TextualIntegerCoderTest.java
 
b/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/TextualIntegerCoderTest.java
index 5012d13..09e1e01 100644
--- 
a/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/TextualIntegerCoderTest.java
+++ 
b/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/TextualIntegerCoderTest.java
@@ -17,10 +17,14 @@
  */
 package org.apache.beam.sdk.coders;
 
+import static org.hamcrest.Matchers.equalTo;
+import static org.junit.Assert.assertThat;
+
 import java.util.Arrays;
 import java.util.List;
 import org.apache.beam.sdk.testing.CoderProperties;
 import org.apache.beam.sdk.util.CoderUtils;
+import org.apache.beam.sdk.values.TypeDescriptor;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.ExpectedException;
@@ -86,4 +90,9 @@ public class TextualIntegerCoderTest {
 
     CoderUtils.encodeToBase64(TEST_CODER, null);
   }
+
+  @Test
+  public void testEncodedTypeDescriptor() throws Exception {
+    assertThat(TEST_CODER.getEncodedTypeDescriptor(), 
equalTo(TypeDescriptor.of(Integer.class)));
+  }
 }

http://git-wip-us.apache.org/repos/asf/beam/blob/7b98fa08/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/VarIntCoderTest.java
----------------------------------------------------------------------
diff --git 
a/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/VarIntCoderTest.java 
b/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/VarIntCoderTest.java
index 7220091..be134b8 100644
--- 
a/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/VarIntCoderTest.java
+++ 
b/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/VarIntCoderTest.java
@@ -17,10 +17,14 @@
  */
 package org.apache.beam.sdk.coders;
 
+import static org.hamcrest.Matchers.equalTo;
+import static org.junit.Assert.assertThat;
+
 import java.util.Arrays;
 import java.util.List;
 import org.apache.beam.sdk.testing.CoderProperties;
 import org.apache.beam.sdk.util.CoderUtils;
+import org.apache.beam.sdk.values.TypeDescriptor;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.ExpectedException;
@@ -86,4 +90,9 @@ public class VarIntCoderTest {
 
     CoderUtils.encodeToBase64(TEST_CODER, null);
   }
+
+  @Test
+  public void testEncodedTypeDescriptor() throws Exception {
+    assertThat(TEST_CODER.getEncodedTypeDescriptor(), 
equalTo(TypeDescriptor.of(Integer.class)));
+  }
 }

http://git-wip-us.apache.org/repos/asf/beam/blob/7b98fa08/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/VarLongCoderTest.java
----------------------------------------------------------------------
diff --git 
a/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/VarLongCoderTest.java 
b/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/VarLongCoderTest.java
index 615d4fc..f4a5280 100644
--- 
a/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/VarLongCoderTest.java
+++ 
b/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/VarLongCoderTest.java
@@ -17,10 +17,14 @@
  */
 package org.apache.beam.sdk.coders;
 
+import static org.hamcrest.Matchers.equalTo;
+import static org.junit.Assert.assertThat;
+
 import java.util.Arrays;
 import java.util.List;
 import org.apache.beam.sdk.testing.CoderProperties;
 import org.apache.beam.sdk.util.CoderUtils;
+import org.apache.beam.sdk.values.TypeDescriptor;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.ExpectedException;
@@ -90,4 +94,9 @@ public class VarLongCoderTest {
 
     CoderUtils.encodeToBase64(TEST_CODER, null);
   }
+
+  @Test
+  public void testEncodedTypeDescriptor() throws Exception {
+    assertThat(TEST_CODER.getEncodedTypeDescriptor(), 
equalTo(TypeDescriptor.of(Long.class)));
+  }
 }

http://git-wip-us.apache.org/repos/asf/beam/blob/7b98fa08/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/VoidCoderTest.java
----------------------------------------------------------------------
diff --git 
a/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/VoidCoderTest.java 
b/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/VoidCoderTest.java
new file mode 100644
index 0000000..e618dbb
--- /dev/null
+++ b/sdks/java/core/src/test/java/org/apache/beam/sdk/coders/VoidCoderTest.java
@@ -0,0 +1,40 @@
+/*
+ * 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.beam.sdk.coders;
+
+import static org.hamcrest.Matchers.equalTo;
+import static org.junit.Assert.assertThat;
+
+import org.apache.beam.sdk.values.TypeDescriptor;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.JUnit4;
+
+/**
+ * Test case for {@link VoidCoder}.
+ */
+@RunWith(JUnit4.class)
+public class VoidCoderTest {
+
+  private static final Coder<Void> TEST_CODER = VoidCoder.of();
+
+  @Test
+  public void testEncodedTypeDescriptor() throws Exception {
+    assertThat(TEST_CODER.getEncodedTypeDescriptor(), 
equalTo(TypeDescriptor.of(Void.class)));
+  }
+}

Reply via email to