Modify the round trip test to cover more type of serialization

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

Branch: refs/heads/REEF-395
Commit: 2328a9ddb3dbc765375306a141ebcf6d2358e2ea
Parents: 47865fd
Author: Yunseong Lee <[email protected]>
Authored: Mon Jun 22 21:09:52 2015 +0900
Committer: Yunseong Lee <[email protected]>
Committed: Mon Jun 22 21:09:52 2015 +0900

----------------------------------------------------------------------
 .../formats/TestClassHierarchyRoundTrip.java    | 250 ++++++++++++++++++-
 1 file changed, 240 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/2328a9dd/lang/java/reef-tang/tang/src/test/java/org/apache/reef/tang/formats/TestClassHierarchyRoundTrip.java
----------------------------------------------------------------------
diff --git 
a/lang/java/reef-tang/tang/src/test/java/org/apache/reef/tang/formats/TestClassHierarchyRoundTrip.java
 
b/lang/java/reef-tang/tang/src/test/java/org/apache/reef/tang/formats/TestClassHierarchyRoundTrip.java
index 558ba0f..9a06531 100644
--- 
a/lang/java/reef-tang/tang/src/test/java/org/apache/reef/tang/formats/TestClassHierarchyRoundTrip.java
+++ 
b/lang/java/reef-tang/tang/src/test/java/org/apache/reef/tang/formats/TestClassHierarchyRoundTrip.java
@@ -30,378 +30,608 @@ import java.io.File;
 import java.io.IOException;
 
 public class TestClassHierarchyRoundTrip extends TestClassHierarchy {
+  final AvroClassHierarchySerializer serializer = new 
AvroClassHierarchySerializer();
 
-  private void setup1() {
+  // The original ClassHierarchy
+  private void setup0() {
     TangImpl.reset();
     ns = Tang.Factory.getTang().getDefaultClassHierarchy();
   }
 
+  // Serializes ClassHierarchy to AvroClassHierarchy
+  private void setup1() {
+    TangImpl.reset();
+    ns = serializer.fromAvro(serializer.toAvro(ns));
+  }
+
+  // Serializes ClassHierarchy to file
   private void setup2() {
     TangImpl.reset();
-    final AvroClassHierarchySerializer serializer = new 
AvroClassHierarchySerializer();
     try {
-      ns = serializer.fromString(serializer.toString(ns));
+      final File file = java.io.File.createTempFile("TangTest", "avroch");
+      serializer.toFile(ns, file);
+      ns = serializer.fromFile(file);
+      file.delete();
     } catch (IOException e) {
-      Assert.fail(String.format("IOException when serialize/deserialize the 
string created by Avro", e));
+      Assert.fail(String.format("IOException when serialize/deserialize the 
ClassHierarchy", e));
     }
   }
 
+  // Serializes ClassHierarchy to TextFile
   private void setup3() {
     TangImpl.reset();
     try {
-      final File file = java.io.File.createTempFile("testAvro", "tmp");
-      final ClassHierarchySerializer serializer = new 
AvroClassHierarchySerializer();
-      serializer.toFile(ns, file);
-      ns = serializer.fromFile(file);
-      file.delete();
+      final File textFile = java.io.File.createTempFile("TangTest", "avroch");
+      serializer.toTextFile(ns, textFile);
+      ns = serializer.fromTextFile(textFile);
+      textFile.delete();
+    } catch (IOException e) {
+      Assert.fail(String.format("IOException when serialize/deserialize the 
ClassHierarchy", e));
+    }
+  }
+
+  // Serializes ClassHierarchy to byte[]
+  private void setup4() {
+    TangImpl.reset();
+    try {
+      ns = serializer.fromByteArray(serializer.toByteArray(ns));
+    } catch (IOException e) {
+      Assert.fail(String.format("IOException when serialize/deserialize the 
ClassHierarchy", e));
+    }
+  }
+
+  // Serializes ClassHierarchy to String
+  private void setup5() {
+    TangImpl.reset();
+    try {
+      ns = serializer.fromString(serializer.toString(ns));
     } catch (IOException e) {
-      Assert.fail(String.format("IOException when serialize/deserialize the 
file created by Avro", e));
+      Assert.fail(String.format("IOException when serialize/deserialize the 
ClassHierarchy", e));
     }
   }
 
   @Test
   @Override
   public void testJavaString() throws NameResolutionException {
+    setup0();
+    super.testJavaString();
     setup1();
     super.testJavaString();
     setup2();
     super.testJavaString();
     setup3();
     super.testJavaString();
+    setup4();
+    super.testJavaString();
+    setup5();
+    super.testJavaString();
   }
 
   @Test
   @Override
   public void testSimpleConstructors() throws NameResolutionException {
+    setup0();
+    super.testSimpleConstructors();
     setup1();
     super.testSimpleConstructors();
     setup2();
     super.testSimpleConstructors();
     setup3();
     super.testSimpleConstructors();
+    setup4();
+    super.testSimpleConstructors();
+    setup5();
+    super.testSimpleConstructors();
   }
 
   @Test
   @Override
   public void testNamedParameterConstructors() throws NameResolutionException {
+    setup0();
+    super.testNamedParameterConstructors();
     setup1();
     super.testNamedParameterConstructors();
     setup2();
     super.testNamedParameterConstructors();
     setup3();
     super.testNamedParameterConstructors();
+    setup4();
+    super.testNamedParameterConstructors();
+    setup5();
+    super.testNamedParameterConstructors();
   }
 
   @Test
   @Override
   public void testArray() throws NameResolutionException {
+    setup0();
+    super.testArray();
     setup1();
     super.testArray();
     setup2();
     super.testArray();
     setup3();
     super.testArray();
+    setup4();
+    super.testArray();
+    setup5();
+    super.testArray();
   }
 
   @Test
   @Override
   public void testRepeatConstructorArg() throws NameResolutionException {
+    setup0();
+    super.testRepeatConstructorArg();
     setup1();
     super.testRepeatConstructorArg();
     setup2();
     super.testRepeatConstructorArg();
     setup3();
     super.testRepeatConstructorArg();
+    setup4();
+    super.testRepeatConstructorArg();
+    setup5();
+    super.testRepeatConstructorArg();
   }
 
   @Test
   @Override
   public void testRepeatConstructorArgClasses() throws NameResolutionException 
{
+    setup0();
+    super.testRepeatConstructorArgClasses();
     setup1();
     super.testRepeatConstructorArgClasses();
     setup2();
     super.testRepeatConstructorArgClasses();
     setup3();
     super.testRepeatConstructorArgClasses();
+    setup4();
+    super.testRepeatConstructorArgClasses();
+    setup5();
+    super.testRepeatConstructorArgClasses();
   }
 
   @Test
   @Override
   public void testLeafRepeatedConstructorArgClasses() throws 
NameResolutionException {
+    setup0();
+    super.testLeafRepeatedConstructorArgClasses();
     setup1();
     super.testLeafRepeatedConstructorArgClasses();
     setup2();
     super.testLeafRepeatedConstructorArgClasses();
     setup3();
     super.testLeafRepeatedConstructorArgClasses();
+    setup4();
+    super.testLeafRepeatedConstructorArgClasses();
+    setup5();
+    super.testLeafRepeatedConstructorArgClasses();
   }
 
   @Test
   @Override
   public void testNamedRepeatConstructorArgClasses() throws 
NameResolutionException {
+    setup0();
+    super.testNamedRepeatConstructorArgClasses();
     setup1();
     super.testNamedRepeatConstructorArgClasses();
     setup2();
     super.testNamedRepeatConstructorArgClasses();
     setup3();
     super.testNamedRepeatConstructorArgClasses();
+    setup4();
+    super.testNamedRepeatConstructorArgClasses();
+    setup5();
+    super.testNamedRepeatConstructorArgClasses();
   }
 
   @Test
   @Override
   public void testResolveDependencies() throws NameResolutionException {
+    setup0();
+    super.testResolveDependencies();
     setup1();
     super.testResolveDependencies();
     setup2();
     super.testResolveDependencies();
     setup3();
     super.testResolveDependencies();
+    setup4();
+    super.testResolveDependencies();
+    setup5();
+    super.testResolveDependencies();
   }
 
   @Test
   @Override
   public void testDocumentedLocalNamedParameter() throws 
NameResolutionException {
+    setup0();
+    super.testDocumentedLocalNamedParameter();
     setup1();
     super.testDocumentedLocalNamedParameter();
     setup2();
     super.testDocumentedLocalNamedParameter();
     setup3();
     super.testDocumentedLocalNamedParameter();
+    setup4();
+    super.testDocumentedLocalNamedParameter();
+    setup5();
+    super.testDocumentedLocalNamedParameter();
   }
 
   @Test
   @Override
   public void testNamedParameterTypeMismatch() throws NameResolutionException {
+    setup0();
+    super.testNamedParameterTypeMismatch();
     setup1();
     super.testNamedParameterTypeMismatch();
     setup2();
     super.testNamedParameterTypeMismatch();
     setup3();
     super.testNamedParameterTypeMismatch();
+    setup4();
+    super.testNamedParameterTypeMismatch();
+    setup5();
+    super.testNamedParameterTypeMismatch();
   }
 
   @Test
   @Override
   public void testUnannotatedName() throws NameResolutionException {
+    setup0();
+    super.testUnannotatedName();
     setup1();
     super.testUnannotatedName();
     setup2();
     super.testUnannotatedName();
     setup3();
     super.testUnannotatedName();
+    setup4();
+    super.testUnannotatedName();
+    setup5();
+    super.testUnannotatedName();
   }
 
   @Test
   @Override
   public void testAnnotatedNotName() throws NameResolutionException {
+    setup0();
+    super.testAnnotatedNotName();
     setup1();
     super.testAnnotatedNotName();
     setup2();
     super.testAnnotatedNotName();
     setup3();
     super.testAnnotatedNotName();
+    setup4();
+    super.testAnnotatedNotName();
+    setup5();
+    super.testAnnotatedNotName();
   }
 
   @Test
   @Override
   public void testGenericTorture1() throws NameResolutionException {
+    setup0();
+    super.testGenericTorture1();
     setup1();
     super.testGenericTorture1();
     setup2();
     super.testGenericTorture1();
     setup3();
     super.testGenericTorture1();
+    setup4();
+    super.testGenericTorture1();
+    setup5();
+    super.testGenericTorture1();
   }
 
   @Test
   @Override
   public void testGenericTorture2() throws NameResolutionException {
+    setup0();
+    super.testGenericTorture2();
     setup1();
     super.testGenericTorture2();
     setup2();
     super.testGenericTorture2();
     setup3();
     super.testGenericTorture2();
+    setup4();
+    super.testGenericTorture2();
+    setup5();
+    super.testGenericTorture2();
   }
 
   @Test
   @Override
   public void testGenericTorture3() throws NameResolutionException {
+    setup0();
+    super.testGenericTorture3();
     setup1();
     super.testGenericTorture3();
     setup2();
     super.testGenericTorture3();
     setup3();
     super.testGenericTorture3();
+    setup4();
+    super.testGenericTorture3();
+    setup5();
+    super.testGenericTorture3();
   }
 
   @Test
   @Override
   public void testGenericTorture4() throws NameResolutionException {
+    setup0();
+    super.testGenericTorture4();
     setup1();
     super.testGenericTorture4();
     setup2();
     super.testGenericTorture4();
     setup3();
     super.testGenericTorture4();
+    setup4();
+    super.testGenericTorture4();
+    setup5();
+    super.testGenericTorture4();
   }
 
   @Test
   @Override
   public void testGenericTorture5() throws NameResolutionException {
+    setup0();
+    super.testGenericTorture5();
     setup1();
     super.testGenericTorture5();
     setup2();
     super.testGenericTorture5();
     setup3();
     super.testGenericTorture5();
+    setup4();
+    super.testGenericTorture5();
+    setup5();
+    super.testGenericTorture5();
   }
 
   @Test
   @Override
   public void testGenericTorture6() throws NameResolutionException {
+    setup0();
+    super.testGenericTorture6();
     setup1();
     super.testGenericTorture6();
     setup2();
     super.testGenericTorture6();
     setup3();
     super.testGenericTorture6();
+    setup4();
+    super.testGenericTorture6();
+    setup5();
+    super.testGenericTorture6();
   }
 
   @Test
   @Override
   public void testGenericTorture7() throws NameResolutionException {
+    setup0();
+    super.testGenericTorture7();
     setup1();
     super.testGenericTorture7();
     setup2();
     super.testGenericTorture7();
     setup3();
     super.testGenericTorture7();
+    setup4();
+    super.testGenericTorture7();
+    setup5();
+    super.testGenericTorture7();
   }
 
   @Test
   @Override
   public void testGenericTorture8() throws NameResolutionException {
+    setup0();
+    super.testGenericTorture8();
     setup1();
     super.testGenericTorture8();
     setup2();
     super.testGenericTorture8();
     setup3();
     super.testGenericTorture8();
+    setup4();
+    super.testGenericTorture8();
+    setup5();
+    super.testGenericTorture8();
   }
 
   @Test
   @Override
   public void testGenericTorture9() throws NameResolutionException {
+    setup0();
+    super.testGenericTorture9();
     setup1();
     super.testGenericTorture9();
     setup2();
     super.testGenericTorture9();
     setup3();
     super.testGenericTorture9();
+    setup4();
+    super.testGenericTorture9();
+    setup5();
+    super.testGenericTorture9();
   }
 
   @Test
   @Override
   public void testGenericTorture10() throws NameResolutionException {
+    setup0();
+    super.testGenericTorture10();
     setup1();
     super.testGenericTorture10();
     setup2();
     super.testGenericTorture10();
+    setup3();
+    super.testGenericTorture10();
+    setup4();
+    super.testGenericTorture10();
+    setup5();
+    super.testGenericTorture10();
   }
 
   @Test
   @Override
   public void testGenericTorture11() throws NameResolutionException {
+    setup0();
+    super.testGenericTorture11();
     setup1();
     super.testGenericTorture11();
     setup2();
     super.testGenericTorture11();
+    setup3();
+    super.testGenericTorture11();
+    setup4();
+    super.testGenericTorture11();
+    setup5();
+    super.testGenericTorture11();
   }
 
   @Test
   @Override
   public void testGenericTorture12() throws NameResolutionException {
+    setup0();
+    super.testGenericTorture12();
     setup1();
     super.testGenericTorture12();
     setup2();
     super.testGenericTorture12();
+    setup3();
+    super.testGenericTorture12();
+    setup4();
+    super.testGenericTorture12();
+    setup5();
+    super.testGenericTorture12();
   }
 
   @Test
   @Override
   public void testInjectNonStaticLocalArgClass() throws 
NameResolutionException {
+    setup0();
+    super.testInjectNonStaticLocalArgClass();
     setup1();
     super.testInjectNonStaticLocalArgClass();
     setup2();
     super.testInjectNonStaticLocalArgClass();
     setup3();
     super.testInjectNonStaticLocalArgClass();
+    setup4();
+    super.testInjectNonStaticLocalArgClass();
+    setup5();
+    super.testInjectNonStaticLocalArgClass();
+
   }
 
   @Test
   @Override
   public void testOKShortNames() throws NameResolutionException {
+    setup0();
+    super.testOKShortNames();
     setup1();
     super.testOKShortNames();
     setup2();
     super.testOKShortNames();
     setup3();
     super.testOKShortNames();
+    setup4();
+    super.testOKShortNames();
+    setup5();
+    super.testOKShortNames();
   }
 
   @Test
   @Override
   public void testRoundTripInnerClassNames() throws NameResolutionException, 
ClassNotFoundException {
+    setup0();
+    super.testRoundTripInnerClassNames();
     setup1();
     super.testRoundTripInnerClassNames();
     setup2();
     super.testRoundTripInnerClassNames();
     setup3();
     super.testRoundTripInnerClassNames();
+    setup4();
+    super.testRoundTripInnerClassNames();
+    setup5();
+    super.testRoundTripInnerClassNames();
   }
 
   @Test
   @Override
   public void testUnitIsInjectable() throws NameResolutionException, 
InjectionException {
+    setup0();
+    super.testUnitIsInjectable();
     setup1();
     super.testUnitIsInjectable();
     setup2();
     super.testUnitIsInjectable();
     setup3();
     super.testUnitIsInjectable();
+    setup4();
+    super.testUnitIsInjectable();
+    setup5();
+    super.testUnitIsInjectable();
   }
 
   @Test
   @Override
   public void testBadUnitDecl() throws NameResolutionException {
+    setup0();
+    super.testBadUnitDecl();
     setup1();
     super.testBadUnitDecl();
     setup2();
     super.testBadUnitDecl();
     setup3();
     super.testBadUnitDecl();
+    setup4();
+    super.testBadUnitDecl();
+    setup5();
+    super.testBadUnitDecl();
   }
 
   @Test
   @Override
   public void nameCantBindWrongSubclassAsDefault() throws 
NameResolutionException {
+    setup0();
+    super.nameCantBindWrongSubclassAsDefault();
     setup1();
     super.nameCantBindWrongSubclassAsDefault();
     setup2();
     super.nameCantBindWrongSubclassAsDefault();
     setup3();
     super.nameCantBindWrongSubclassAsDefault();
+    setup4();
+    super.nameCantBindWrongSubclassAsDefault();
+    setup5();
+    super.nameCantBindWrongSubclassAsDefault();
   }
 
   @Test
   @Override
   public void ifaceCantBindWrongImplAsDefault() throws NameResolutionException 
{
+    setup0();
+    super.ifaceCantBindWrongImplAsDefault();
     setup1();
     super.ifaceCantBindWrongImplAsDefault();
     setup2();
     super.ifaceCantBindWrongImplAsDefault();
     setup3();
     super.ifaceCantBindWrongImplAsDefault();
+    setup4();
+    super.ifaceCantBindWrongImplAsDefault();
+    setup5();
+    super.ifaceCantBindWrongImplAsDefault();
   }
 }

Reply via email to