tinkerpop-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From spmalle...@apache.org
Subject [13/44] tinkerpop git commit: TINKERPOP-1130 Implemented many additional IO tests.
Date Fri, 06 Jan 2017 19:42:18 GMT
TINKERPOP-1130 Implemented many additional IO tests.

Cleaned up inconsistencies in how static files are stored. Improved asserts.


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

Branch: refs/heads/master
Commit: fc7b4457d8e740dc17bedafdd569db52e016b619
Parents: df67d7a
Author: Stephen Mallette <spmva@genoprime.com>
Authored: Wed Dec 14 17:41:30 2016 -0500
Committer: Stephen Mallette <spmva@genoprime.com>
Committed: Tue Jan 3 10:34:55 2017 -0500

----------------------------------------------------------------------
 .../gremlin/structure/io/Compatibility.java     |   4 +
 .../tinkerpop/gremlin/structure/io/Model.java   |  44 +-
 .../structure/io/gryo/GryoCompatibility.java    |  19 +
 .../structure/io/AbstractCompatibilityTest.java |   4 +
 .../io/AbstractTypedCompatibilityTest.java      | 501 ++++++++++++++++++-
 .../io/gryo/GryoCompatibilityTest.java          |   4 +
 .../_3_2_3/bytebuffer-v2d0-no-types.json        |   2 +-
 .../_3_2_3/bytebuffer-v2d0-partial.json         |   2 +-
 .../io/graphson/_3_2_3/date-v2d0-no-types.json  |   2 +-
 .../io/graphson/_3_2_3/date-v2d0-partial.json   |   2 +-
 .../io/graphson/_3_2_3/instant-v1d0.json        |   2 +-
 .../graphson/_3_2_3/instant-v2d0-no-types.json  |   2 +-
 .../graphson/_3_2_3/instant-v2d0-partial.json   |   2 +-
 .../_3_2_3/manual-graphson-generator.groovy     |  27 +-
 .../graphson/_3_2_3/metrics-v2d0-no-types.json  |   8 +-
 .../graphson/_3_2_3/metrics-v2d0-partial.json   |   8 +-
 .../io/graphson/_3_2_3/offsetdatetime-v1d0.json |   2 +-
 .../_3_2_3/offsetdatetime-v2d0-no-types.json    |   2 +-
 .../_3_2_3/offsetdatetime-v2d0-partial.json     |   2 +-
 .../io/graphson/_3_2_3/offsettime-v1d0.json     |   2 +-
 .../_3_2_3/offsettime-v2d0-no-types.json        |   2 +-
 .../_3_2_3/offsettime-v2d0-partial.json         |   2 +-
 .../io/graphson/_3_2_3/sessionclose-v1d0.json   |   2 +-
 .../_3_2_3/sessionclose-v2d0-no-types.json      |   2 +-
 .../_3_2_3/sessionclose-v2d0-partial.json       |   2 +-
 .../io/graphson/_3_2_3/sessioneval-v1d0.json    |   2 +-
 .../_3_2_3/sessioneval-v2d0-no-types.json       |   2 +-
 .../_3_2_3/sessioneval-v2d0-partial.json        |   2 +-
 .../graphson/_3_2_3/sessionlesseval-v1d0.json   |   2 +-
 .../_3_2_3/sessionlesseval-v2d0-no-types.json   |   2 +-
 .../_3_2_3/sessionlesseval-v2d0-partial.json    |   2 +-
 .../_3_2_3/timestamp-v2d0-no-types.json         |   2 +-
 .../graphson/_3_2_3/timestamp-v2d0-partial.json |   2 +-
 .../_3_2_3/traversalmetrics-v2d0-no-types.json  |  18 +-
 .../_3_2_3/traversalmetrics-v2d0-partial.json   |  18 +-
 .../io/graphson/_3_2_3/zoneddatetime-v1d0.json  |   2 +-
 .../_3_2_3/zoneddatetime-v2d0-no-types.json     |   2 +-
 .../_3_2_3/zoneddatetime-v2d0-partial.json      |   2 +-
 .../graphson/_3_3_0/barrier-v2d0-no-types.json  |   1 +
 .../graphson/_3_3_0/barrier-v2d0-partial.json   |   4 +
 .../io/graphson/_3_3_0/date-v2d0-no-types.json  |   2 +-
 .../io/graphson/_3_3_0/date-v2d0-partial.json   |   2 +-
 .../graphson/_3_3_0/metrics-v2d0-no-types.json  |   8 +-
 .../graphson/_3_3_0/metrics-v2d0-partial.json   |   8 +-
 .../_3_3_0/offsetdatetime-v2d0-no-types.json    |   2 +-
 .../_3_3_0/offsetdatetime-v2d0-partial.json     |   2 +-
 .../_3_3_0/offsettime-v2d0-no-types.json        |   2 +-
 .../_3_3_0/offsettime-v2d0-partial.json         |   2 +-
 .../_3_3_0/timestamp-v2d0-no-types.json         |   2 +-
 .../graphson/_3_3_0/timestamp-v2d0-partial.json |   2 +-
 .../_3_3_0/traversalmetrics-v2d0-no-types.json  |  18 +-
 .../_3_3_0/traversalmetrics-v2d0-partial.json   |  18 +-
 .../_3_3_0/zoneddatetime-v2d0-no-types.json     |   2 +-
 .../_3_3_0/zoneddatetime-v2d0-partial.json      |   2 +-
 .../structure/io/gryo/_3_2_3/date-v1d0.kryo     |   2 +-
 .../structure/io/gryo/_3_2_3/instant-v1d0.kryo  | Bin 13 -> 13 bytes
 .../io/gryo/_3_2_3/manual-gryo-generator.groovy |  15 +-
 .../structure/io/gryo/_3_2_3/metrics-v1d0.kryo  | Bin 185 -> 185 bytes
 .../io/gryo/_3_2_3/offsetdatetime-v1d0.kryo     | Bin 37 -> 37 bytes
 .../io/gryo/_3_2_3/offsettime-v1d0.kryo         | Bin 17 -> 17 bytes
 .../io/gryo/_3_2_3/traversalmetrics-v1d0.kryo   | Bin 429 -> 429 bytes
 .../io/gryo/_3_2_3/zoneddatetime-v1d0.kryo      | Bin 45 -> 38 bytes
 .../structure/io/gryo/_3_3_0/date-v1d0.kryo     |   2 +-
 .../structure/io/gryo/_3_3_0/metrics-v1d0.kryo  | Bin 185 -> 185 bytes
 .../io/gryo/_3_3_0/offsetdatetime-v1d0.kryo     | Bin 37 -> 37 bytes
 .../io/gryo/_3_3_0/offsettime-v1d0.kryo         | Bin 17 -> 17 bytes
 .../io/gryo/_3_3_0/traversalmetrics-v1d0.kryo   | Bin 429 -> 429 bytes
 .../io/gryo/_3_3_0/zoneddatetime-v1d0.kryo      | Bin 45 -> 38 bytes
 68 files changed, 658 insertions(+), 147 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Compatibility.java
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Compatibility.java b/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Compatibility.java
index 7b9a5fe..2bbe7b5 100644
--- a/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Compatibility.java
+++ b/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Compatibility.java
@@ -25,4 +25,8 @@ import java.io.IOException;
  */
 public interface Compatibility {
     public byte[] readFromResource(final String resource) throws IOException;
+
+    public default Class resolve(final Class clazz) {
+        return clazz;
+    }
 }

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Model.java
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Model.java b/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Model.java
index 51d44b6..aea3340 100644
--- a/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Model.java
+++ b/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Model.java
@@ -57,6 +57,7 @@ import java.time.OffsetTime;
 import java.time.Period;
 import java.time.Year;
 import java.time.YearMonth;
+import java.time.ZoneId;
 import java.time.ZoneOffset;
 import java.time.ZonedDateTime;
 import java.util.ArrayList;
@@ -74,6 +75,8 @@ import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
 /**
+ * Defines the supported types for IO and the versions (and configurations) to which they apply and are tested.
+ *
  * @author Stephen Mallette (http://stephen.genoprime.com)
  */
 public class Model {
@@ -105,14 +108,15 @@ public class Model {
     private Model() {
         final Graph graph = TinkerFactory.createTheCrew();
         final GraphTraversalSource g = graph.traversal();
-                
+
+        // IMPORTANT - the "title" or name of the Entry needs to be unique
         addCoreEntry(File.class, "Class", GryoCompatibility.V1D0_3_2_3, GryoCompatibility.V1D0_3_3_0);
-        addCoreEntry(new Date(), "Date");
-        addCoreEntry(100.00d, "Double");
+        addCoreEntry(new Date(1481750076295L), "Date");
+        addCoreEntry(100.00d, "Double", GraphSONCompatibility.V2D0_PARTIAL_3_2_3, GraphSONCompatibility.V2D0_PARTIAL_3_3_0);
         addCoreEntry(100.00f, "Float");
-        addCoreEntry(100, "Integer");
+        addCoreEntry(100, "Integer", GraphSONCompatibility.V2D0_PARTIAL_3_2_3, GraphSONCompatibility.V2D0_PARTIAL_3_3_0);
         addCoreEntry(100L, "Long");
-        addCoreEntry(new java.sql.Timestamp(System.currentTimeMillis()), "Timestamp", GryoCompatibility.V1D0_3_2_3, GryoCompatibility.V1D0_3_3_0);
+        addCoreEntry(new java.sql.Timestamp(1481750076295L), "Timestamp", GryoCompatibility.V1D0_3_2_3, GryoCompatibility.V1D0_3_3_0);
         addCoreEntry(UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786"), "UUID");
 
         addGraphStructureEntry(graph.edges().next(), "Edge");
@@ -124,13 +128,13 @@ public class Model {
         addGraphStructureEntry(graph.vertices().next(), "Vertex");
         addGraphStructureEntry(graph.vertices().next().properties().next(), "VertexProperty");
 
-        addEntry("Process", SackFunctions.Barrier.normSack, "Barrier", "", GRYO_ONLY);
+        addGraphProcessEntry(SackFunctions.Barrier.normSack, "Barrier", "", GRYO_ONLY);
         addGraphProcessEntry(new Bytecode.Binding("x", 1), "Binding", "A \"Binding\" refers to a `Bytecode.Binding`.");
-        addGraphProcessEntry(g.V().hasLabel("person").out().in().tree(), "Bytecode", "The following `Bytecode` example represents the traversal of `g.V().hasLabel('person').out().in().tree()`. Obviously the serialized `Bytecode` woudl be quite different for the endless variations of commands that could be used together in the Gremlin language.");
+        addGraphProcessEntry(g.V().hasLabel("person").out().in().tree().asAdmin().getBytecode(), "Bytecode", "The following `Bytecode` example represents the traversal of `g.V().hasLabel('person').out().in().tree()`. Obviously the serialized `Bytecode` woudl be quite different for the endless variations of commands that could be used together in the Gremlin language.");
         addGraphProcessEntry(VertexProperty.Cardinality.list, "Cardinality");
-        addGraphProcessEntry(Column.keys, "Column");
+        addGraphProcessEntry(Column.keys, "Column", "", GRYO_ONLY);
         addGraphProcessEntry(Direction.OUT, "Direction");
-        addGraphProcessEntry(Operator.sum, "Operator");
+        addGraphProcessEntry(Operator.sum, "Operator", "", GRYO_ONLY);
         addGraphProcessEntry(Order.incr, "Order");
         addGraphProcessEntry(TraversalOptionParent.Pick.any, "Pick");
         addGraphProcessEntry(Pop.all, "Pop");
@@ -203,18 +207,18 @@ public class Model {
         } catch (Exception ex) {
             throw new RuntimeException(ex);
         }
-        addExtendedEntry(Instant.now(), "Instant");
+        addExtendedEntry(Instant.parse("2016-12-14T16:39:19.349Z"), "Instant");
         addExtendedEntry(LocalDate.of(2016, 1, 1), "LocalDate");
         addExtendedEntry(LocalDateTime.of(2016, 1, 1, 12, 30), "LocalDateTime");
         addExtendedEntry(LocalTime.of(12, 30, 45), "LocalTime");
         addExtendedEntry(MonthDay.of(1, 1), "MonthDay");
-        addExtendedEntry(OffsetDateTime.now(), "OffsetDateTime");
-        addExtendedEntry(OffsetTime.now(), "OffsetTime");
+        addExtendedEntry(OffsetDateTime.parse("2007-12-03T10:15:30+01:00"), "OffsetDateTime");
+        addExtendedEntry(OffsetTime.parse("10:15:30+01:00"), "OffsetTime");
         addExtendedEntry(Period.of(1, 6, 15), "Period", "The following example is a `Period` of one year, six months and fifteen days.");
         addExtendedEntry(new Short("100"), "Short", "", UNTYPED_GRAPHSON_ONLY.toArray(new Compatibility[UNTYPED_GRAPHSON_ONLY.size()]));
         addExtendedEntry(Year.of(2016), "Year", "The following example is of the `Year` \"2016\".");
         addExtendedEntry(YearMonth.of(2016, 6), "YearMonth", "The following example is a `YearMonth` of \"June 2016\"");
-        addExtendedEntry(ZonedDateTime.now(), "ZonedDateTime");
+        addExtendedEntry(ZonedDateTime.of(2016, 12, 23, 12, 12, 24, 36, ZoneId.of("GMT+2")), "ZonedDateTime");
         addExtendedEntry(ZoneOffset.ofHoursMinutesSeconds(3, 6, 9), "ZoneOffset", "The following example is a `ZoneOffset` of three hours, six minutes, and nine seconds.");
     }
     
@@ -262,6 +266,10 @@ public class Model {
         addEntry("Graph Process", obj, title, description);
     }
 
+    private void addGraphProcessEntry(final Object obj, final String title, final String description, final List<Compatibility> compatibleWith) {
+        addEntry("Graph Process", obj, title, description, compatibleWith);
+    }
+
     private void addRequestMessageEntry(final Object obj, final String title, final String description) {
         addEntry("RequestMessage", obj, title, description, GRAPHSON_ONLY);
     }
@@ -348,13 +356,13 @@ public class Model {
     public static class Entry {
 
         private final String title;
-        private final Object obj;
+        private final Object object;
         private final String description;
         private final List<Compatibility> compatibleWith;
         
-        public Entry(final String title, final Object obj, final String description, final List<Compatibility> compatibleWith) {
+        public Entry(final String title, final Object object, final String description, final List<Compatibility> compatibleWith) {
             this.title = title;
-            this.obj = obj;
+            this.object = object;
             this.description = description;
             this.compatibleWith = compatibleWith;
         }
@@ -367,8 +375,8 @@ public class Model {
             return title.replace(" ", "").toLowerCase();
         }
 
-        public Object getObject() {
-            return obj;
+        public <T> T getObject() {
+            return (T) object;
         }
 
         public String getDescription() {

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibility.java
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibility.java b/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibility.java
index 11a89b9..e4e47a2 100644
--- a/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibility.java
+++ b/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibility.java
@@ -19,7 +19,13 @@
 package org.apache.tinkerpop.gremlin.structure.io.gryo;
 
 import org.apache.commons.io.IOUtils;
+import org.apache.tinkerpop.gremlin.process.traversal.util.Metrics;
+import org.apache.tinkerpop.gremlin.process.traversal.util.MutableMetrics;
+import org.apache.tinkerpop.gremlin.structure.Edge;
+import org.apache.tinkerpop.gremlin.structure.Vertex;
 import org.apache.tinkerpop.gremlin.structure.io.Compatibility;
+import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge;
+import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedVertex;
 
 import java.io.File;
 import java.io.IOException;
@@ -43,12 +49,25 @@ public enum GryoCompatibility implements Compatibility {
         this.configuration = configuration;
     }
 
+    @Override
     public byte[] readFromResource(final String resource) throws IOException {
         final String testResource = "_" + tinkerpopVersion.replace(".", "_") + SEP + resource + "-" + configuration + ".kryo";
         return IOUtils.toByteArray(getClass().getResourceAsStream(testResource));
     }
 
     @Override
+    public Class resolve(final Class clazz) {
+        if (clazz.equals(Edge.class))
+            return DetachedEdge.class;
+        else if (clazz.equals(Vertex.class))
+            return DetachedVertex.class;
+        else if (clazz.equals(Metrics.class))
+            return MutableMetrics.class;
+        else
+            return clazz;
+    }
+
+    @Override
     public String toString() {
         return tinkerpopVersion + "-" + configuration;
     }

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/AbstractCompatibilityTest.java
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/AbstractCompatibilityTest.java b/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/AbstractCompatibilityTest.java
index b0d7961..c2bb304 100644
--- a/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/AbstractCompatibilityTest.java
+++ b/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/AbstractCompatibilityTest.java
@@ -33,4 +33,8 @@ public abstract class AbstractCompatibilityTest {
         final Model.Entry e = model.find(resource).orElseThrow(() -> new IllegalStateException("Could not find model"));
         assumeThat("Test model is not compatible with IO", e.isCompatibleWith(getCompatibility()), is(true));
     }
+
+    protected <T> T findModelEntryObject(final String resourceName) {
+        return model.find(resourceName).orElseThrow(() -> new IllegalStateException("Could not find requested model entry")).getObject();
+    }
 }

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/AbstractTypedCompatibilityTest.java
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/AbstractTypedCompatibilityTest.java b/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/AbstractTypedCompatibilityTest.java
index bb174be..bede370 100644
--- a/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/AbstractTypedCompatibilityTest.java
+++ b/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/AbstractTypedCompatibilityTest.java
@@ -18,14 +18,41 @@
  */
 package org.apache.tinkerpop.gremlin.structure.io;
 
-import org.apache.tinkerpop.gremlin.driver.message.ResponseStatusCode;
+import org.apache.tinkerpop.gremlin.driver.message.RequestMessage;
+import org.apache.tinkerpop.gremlin.driver.message.ResponseMessage;
+import org.apache.tinkerpop.gremlin.process.traversal.Bytecode;
+import org.apache.tinkerpop.gremlin.process.traversal.Operator;
 import org.apache.tinkerpop.gremlin.process.traversal.SackFunctions;
+import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
+import org.apache.tinkerpop.gremlin.process.traversal.util.Metrics;
+import org.apache.tinkerpop.gremlin.structure.Column;
+import org.apache.tinkerpop.gremlin.structure.Direction;
+import org.apache.tinkerpop.gremlin.structure.Edge;
+import org.apache.tinkerpop.gremlin.structure.VertexProperty;
+import org.apache.tinkerpop.gremlin.util.function.Lambda;
 import org.junit.Test;
 
 import java.math.BigDecimal;
+import java.math.BigInteger;
+import java.net.InetAddress;
+import java.nio.ByteBuffer;
+import java.sql.Timestamp;
+import java.time.Duration;
+import java.time.Instant;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.time.LocalTime;
+import java.time.MonthDay;
+import java.time.OffsetDateTime;
+import java.time.OffsetTime;
+import java.time.ZonedDateTime;
+import java.util.Date;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.concurrent.TimeUnit;
 
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.core.Is.is;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotSame;
 
@@ -39,46 +66,488 @@ public abstract class AbstractTypedCompatibilityTest extends AbstractCompatibili
     public abstract byte[] write(final Object o, final Class<?> clazz) throws Exception;
 
     @Test
+    @org.junit.Ignore
     public void shouldReadWriteAuthenticationChallenge() throws Exception {
-        assumeCompatibility("authenticationchallenge");
+        final String resourceName = "authenticationchallenge";
+        assumeCompatibility(resourceName);
 
-        final HashMap fromStatic = read(getCompatibility().readFromResource("authenticationchallenge"), HashMap.class);
+        final ResponseMessage resource = findModelEntryObject(resourceName);
+        final HashMap fromStatic = read(getCompatibility().readFromResource(resourceName), HashMap.class);
         final HashMap recycled = read(write(fromStatic, HashMap.class), HashMap.class);
         assertNotSame(fromStatic, recycled);
-        assertEquals("41d2e28a-20a4-4ab0-b379-d810dede3786", recycled.get("requestId"));
-        assertEquals(ResponseStatusCode.AUTHENTICATE.getValue(), ((Map) recycled.get("status")).get("code"));
+        assertEquals(resource.getRequestId(), recycled.get("requestId"));
+        assertEquals(resource.getStatus().getCode().getValue(), ((Map) recycled.get("status")).get("code"));
+        assertEquals(resource.getRequestId(), fromStatic.get("requestId"));
+        assertEquals(resource.getStatus().getCode().getValue(), ((Map) fromStatic.get("status")).get("code"));
     }
 
     @Test
     public void shouldReadWriteAuthenticationResponse() throws Exception {
-        assumeCompatibility("authenticationresponse");
+        final String resourceName = "authenticationresponse";
+        assumeCompatibility(resourceName);
 
-        final HashMap fromStatic = read(getCompatibility().readFromResource("authenticationresponse"), HashMap.class);
+        final RequestMessage resource = findModelEntryObject(resourceName);
+        final HashMap fromStatic = read(getCompatibility().readFromResource(resourceName), HashMap.class);
         final HashMap recycled = read(write(fromStatic, HashMap.class), HashMap.class);
         assertNotSame(fromStatic, recycled);
-        assertEquals("cb682578-9d92-4499-9ebc-5c6aa73c5397", recycled.get("requestId"));
-        assertEquals("authentication", recycled.get("op"));
-        assertEquals("", recycled.get("processor"));
-        assertEquals("PLAIN", ((Map) recycled.get("args")).get("saslMechanism"));
-        assertEquals("AHN0ZXBocGhlbgBwYXNzd29yZA==", ((Map) recycled.get("args")).get("sasl"));
+        assertEquals(resource.getRequestId(), recycled.get("requestId"));
+        assertEquals(resource.getOp(), recycled.get("op"));
+        assertEquals(resource.getProcessor(), recycled.get("processor"));
+        assertEquals(resource.getArgs().get("saslMechanism"), ((Map) recycled.get("args")).get("saslMechanism"));
+        assertEquals(resource.getArgs().get("sasl"), ((Map) recycled.get("args")).get("sasl"));
+        assertEquals(resource.getRequestId(), fromStatic.get("requestId"));
+        assertEquals(resource.getOp(), fromStatic.get("op"));
+        assertEquals(resource.getProcessor(), fromStatic.get("processor"));
+        assertEquals(resource.getArgs().get("saslMechanism"), ((Map) fromStatic.get("args")).get("saslMechanism"));
+        assertEquals(resource.getArgs().get("sasl"), ((Map) fromStatic.get("args")).get("sasl"));
     }
 
     @Test
     public void shouldReadWriteBarrier() throws Exception {
-        assumeCompatibility("barrier");
+        final String resourceName = "barrier";
+        assumeCompatibility(resourceName);
 
-        final SackFunctions.Barrier fromStatic = read(getCompatibility().readFromResource("barrier"), SackFunctions.Barrier.class);
+        final SackFunctions.Barrier resource = findModelEntryObject(resourceName);
+        final SackFunctions.Barrier fromStatic = read(getCompatibility().readFromResource(resourceName), SackFunctions.Barrier.class);
         final SackFunctions.Barrier recycled = read(write(fromStatic, SackFunctions.Barrier.class), SackFunctions.Barrier.class);
         assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
     }
 
     @Test
     public void shouldReadWriteBigDecimal() throws Exception {
-        assumeCompatibility("bigdecimal");
+        final String resourceName = "bigdecimal";
+        assumeCompatibility(resourceName);
 
-        final BigDecimal fromStatic = read(getCompatibility().readFromResource("bigdecimal"), BigDecimal.class);
+        final BigDecimal resource = findModelEntryObject(resourceName);
+        final BigDecimal fromStatic = read(getCompatibility().readFromResource(resourceName), BigDecimal.class);
         final BigDecimal recycled = read(write(fromStatic, BigDecimal.class), BigDecimal.class);
         assertNotSame(fromStatic, recycled);
         assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteBigInteger() throws Exception {
+        final String resourceName = "biginteger";
+        assumeCompatibility(resourceName);
+
+        final BigInteger resource = findModelEntryObject(resourceName);
+        final BigInteger fromStatic = read(getCompatibility().readFromResource(resourceName), BigInteger.class);
+        final BigInteger recycled = read(write(fromStatic, BigInteger.class), BigInteger.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteBinding() throws Exception {
+        final String resourceName = "binding";
+        assumeCompatibility(resourceName);
+
+        final Bytecode.Binding resource = findModelEntryObject(resourceName);
+        final Bytecode.Binding fromStatic = read(getCompatibility().readFromResource(resourceName), Bytecode.Binding.class);
+        final Bytecode.Binding recycled = read(write(fromStatic, Bytecode.Binding.class), Bytecode.Binding.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteByte() throws Exception {
+        final String resourceName = "byte";
+        assumeCompatibility(resourceName);
+
+        final Byte resource = findModelEntryObject(resourceName);
+        final Byte fromStatic = read(getCompatibility().readFromResource(resourceName), Byte.class);
+        final Byte recycled = read(write(fromStatic, Byte.class), Byte.class);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteByteBuffer() throws Exception {
+        final String resourceName = "bytebuffer";
+        assumeCompatibility(resourceName);
+
+        final ByteBuffer resource = findModelEntryObject(resourceName);
+        final ByteBuffer fromStatic = read(getCompatibility().readFromResource(resourceName), ByteBuffer.class);
+        final ByteBuffer recycled = read(write(fromStatic, ByteBuffer.class), ByteBuffer.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteBytecode() throws Exception {
+        final String resourceName = "bytecode";
+        assumeCompatibility(resourceName);
+
+        final Bytecode fromStatic = read(getCompatibility().readFromResource(resourceName), Bytecode.class);
+        final Bytecode recycled = read(write(fromStatic, Bytecode.class), Bytecode.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        // can't reasonably assert the bytecode against the original model as changes to strategies over time might
+        // alter the bytecode form and then break the test. the assertions as they are ensure that the core of
+        // serialization is correct by ensuring the contents of bytecode (whether they are valid for a specific version
+        // or not). it seems beyond the scope of these tests to validate that bytecode itself is unchanging and fully
+        // backward compatible (at least for now).
+    }
+
+    @Test
+    public void shouldReadWriteCardinality() throws Exception {
+        final String resourceName = "cardinality";
+        assumeCompatibility(resourceName);
+
+        final VertexProperty.Cardinality resource = findModelEntryObject(resourceName);
+        final VertexProperty.Cardinality fromStatic = read(getCompatibility().readFromResource(resourceName), VertexProperty.Cardinality.class);
+        final VertexProperty.Cardinality recycled = read(write(fromStatic, VertexProperty.Cardinality.class), VertexProperty.Cardinality.class);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteChar() throws Exception {
+        final String resourceName = "char";
+        assumeCompatibility(resourceName);
+
+        final Character resource = findModelEntryObject(resourceName);
+        final Character fromStatic = read(getCompatibility().readFromResource(resourceName), Character.class);
+        final Character recycled = read(write(fromStatic, Character.class), Character.class);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteClass() throws Exception {
+        final String resourceName = "class";
+        assumeCompatibility(resourceName);
+
+        final Class resource = findModelEntryObject(resourceName);
+        final Class fromStatic = read(getCompatibility().readFromResource(resourceName), Class.class);
+        final Class recycled = read(write(fromStatic, Class.class), Class.class);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteColumn() throws Exception {
+        final String resourceName = "column";
+        assumeCompatibility(resourceName);
+
+        final Column resource = findModelEntryObject(resourceName);
+        final Column fromStatic = read(getCompatibility().readFromResource(resourceName), Column.class);
+        final Column recycled = read(write(fromStatic, Column.class), Column.class);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteDate() throws Exception {
+        final String resourceName = "date";
+        assumeCompatibility(resourceName);
+
+        final Date resource = findModelEntryObject(resourceName);
+        final Date fromStatic = read(getCompatibility().readFromResource(resourceName), Date.class);
+        final Date recycled = read(write(fromStatic, Date.class), Date.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteDirection() throws Exception {
+        final String resourceName = "direction";
+        assumeCompatibility(resourceName);
+
+        final Direction resource = findModelEntryObject(resourceName);
+        final Direction fromStatic = read(getCompatibility().readFromResource(resourceName), Direction.class);
+        final Direction recycled = read(write(fromStatic, Direction.class), Direction.class);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteDouble() throws Exception {
+        final String resourceName = "double";
+        assumeCompatibility(resourceName);
+
+        final Double resource = findModelEntryObject(resourceName);
+        final Double fromStatic = read(getCompatibility().readFromResource(resourceName), Double.class);
+        final Double recycled = read(write(fromStatic, Double.class), Double.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteDuration() throws Exception {
+        final String resourceName = "duration";
+        assumeCompatibility(resourceName);
+
+        final Duration resource = findModelEntryObject(resourceName);
+        final Duration fromStatic = read(getCompatibility().readFromResource(resourceName), Duration.class);
+        final Duration recycled = read(write(fromStatic, Duration.class), Duration.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteEdge() throws Exception {
+        final String resourceName = "edge";
+        assumeCompatibility(resourceName);
+
+        final Edge resource = findModelEntryObject(resourceName);
+        final Edge fromStatic = read(getCompatibility().readFromResource(resourceName), Edge.class);
+        final Edge recycled = (Edge) read(write(fromStatic, Edge.class), getCompatibility().resolve(Edge.class));
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteFloat() throws Exception {
+        final String resourceName = "float";
+        assumeCompatibility(resourceName);
+
+        final Float resource = findModelEntryObject(resourceName);
+        final Float fromStatic = read(getCompatibility().readFromResource(resourceName), Float.class);
+        final Float recycled = read(write(fromStatic, Float.class), Float.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteINetAddress() throws Exception {
+        final String resourceName = "inetaddress";
+        assumeCompatibility(resourceName);
+
+        final InetAddress resource = findModelEntryObject(resourceName);
+        final InetAddress fromStatic = read(getCompatibility().readFromResource(resourceName), InetAddress.class);
+        final InetAddress recycled = read(write(fromStatic, Float.class), InetAddress.class);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteInstant() throws Exception {
+        final String resourceName = "instant";
+        assumeCompatibility(resourceName);
+
+        final Instant resource = findModelEntryObject(resourceName);
+        final Instant fromStatic = read(getCompatibility().readFromResource(resourceName), Instant.class);
+        final Instant recycled = read(write(fromStatic, Instant.class), Instant.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteInteger() throws Exception {
+        final String resourceName = "integer";
+        assumeCompatibility(resourceName);
+
+        final Integer resource = findModelEntryObject(resourceName);
+        final Integer fromStatic = read(getCompatibility().readFromResource(resourceName), Integer.class);
+        final Integer recycled = read(write(fromStatic, Integer.class), Integer.class);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteLambda() throws Exception {
+        final String resourceName = "lambda";
+        assumeCompatibility(resourceName);
+
+        final Lambda resource = findModelEntryObject(resourceName);
+        final Lambda fromStatic = read(getCompatibility().readFromResource(resourceName), Lambda.class);
+        final Lambda recycled = read(write(fromStatic, Lambda.class), Lambda.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteLocalDate() throws Exception {
+        final String resourceName = "localdate";
+        assumeCompatibility(resourceName);
+
+        final LocalDate resource = findModelEntryObject(resourceName);
+        final LocalDate fromStatic = read(getCompatibility().readFromResource(resourceName), LocalDate.class);
+        final LocalDate recycled = read(write(fromStatic, LocalDate.class), LocalDate.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteLocalDateTime() throws Exception {
+        final String resourceName = "localdatetime";
+        assumeCompatibility(resourceName);
+
+        final LocalDateTime resource = findModelEntryObject(resourceName);
+        final LocalDateTime fromStatic = read(getCompatibility().readFromResource(resourceName), LocalDateTime.class);
+        final LocalDateTime recycled = read(write(fromStatic, LocalDateTime.class), LocalDateTime.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteLocalTime() throws Exception {
+        final String resourceName = "localtime";
+        assumeCompatibility(resourceName);
+
+        final LocalTime resource = findModelEntryObject(resourceName);
+        final LocalTime fromStatic = read(getCompatibility().readFromResource(resourceName), LocalTime.class);
+        final LocalTime recycled = read(write(fromStatic, LocalTime.class), LocalTime.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteLong() throws Exception {
+        final String resourceName = "long";
+        assumeCompatibility(resourceName);
+
+        final Long resource = findModelEntryObject(resourceName);
+        final Long fromStatic = read(getCompatibility().readFromResource(resourceName), Long.class);
+        final Long recycled = read(write(fromStatic, Long.class), Long.class);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteMetrics() throws Exception {
+        final String resourceName = "metrics";
+        assumeCompatibility(resourceName);
+
+        final Metrics fromStatic = (Metrics) read(getCompatibility().readFromResource(resourceName), getCompatibility().resolve(Metrics.class));
+        final Metrics recycled = (Metrics) read(write(fromStatic, Metrics.class), getCompatibility().resolve(Metrics.class));
+        assertNotSame(fromStatic, recycled);
+        // have to do compares on the object read from resources because it has statically calculated values. the
+        // "new" one from Model is generated dynamically from a traversal and thus has variations in properties that
+        // are based on time
+        assertEquals(fromStatic.getAnnotations(), recycled.getAnnotations());
+        assertEquals(fromStatic.getCounts(), recycled.getCounts());
+        assertEquals(fromStatic.getDuration(TimeUnit.MILLISECONDS), recycled.getDuration(TimeUnit.MILLISECONDS));
+    }
+
+    @Test
+    public void shouldReadWriteMonthDay() throws Exception {
+        final String resourceName = "monthday";
+        assumeCompatibility(resourceName);
+
+        final MonthDay resource = findModelEntryObject(resourceName);
+        final MonthDay fromStatic = read(getCompatibility().readFromResource(resourceName), MonthDay.class);
+        final MonthDay recycled = read(write(fromStatic, MonthDay.class), MonthDay.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteOffsetDateTime() throws Exception {
+        final String resourceName = "offsetdatetime";
+        assumeCompatibility(resourceName);
+
+        final OffsetDateTime resource = findModelEntryObject(resourceName);
+        final OffsetDateTime fromStatic = read(getCompatibility().readFromResource(resourceName), OffsetDateTime.class);
+        final OffsetDateTime recycled = read(write(fromStatic, OffsetDateTime.class), OffsetDateTime.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteOffsetTime() throws Exception {
+        final String resourceName = "offsettime";
+        assumeCompatibility(resourceName);
+
+        final OffsetTime resource = findModelEntryObject(resourceName);
+        final OffsetTime fromStatic = read(getCompatibility().readFromResource(resourceName), OffsetTime.class);
+        final OffsetTime recycled = read(write(fromStatic, OffsetTime.class), OffsetTime.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteOperator() throws Exception {
+        final String resourceName = "operator";
+        assumeCompatibility(resourceName);
+
+        final Operator resource = findModelEntryObject(resourceName);
+        final Operator fromStatic = read(getCompatibility().readFromResource(resourceName), Operator.class);
+        final Operator recycled = read(write(fromStatic, Operator.class), Operator.class);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+
+
+
+
+
+
+
+
+    @Test
+    public void shouldReadWriteTimestamp() throws Exception {
+        final String resourceName = "timestamp";
+        assumeCompatibility(resourceName);
+
+        final Timestamp resource = findModelEntryObject(resourceName);
+        final Timestamp fromStatic = read(getCompatibility().readFromResource(resourceName), Timestamp.class);
+        final Timestamp recycled = read(write(fromStatic, Timestamp.class), Timestamp.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
+    }
+
+    @Test
+    public void shouldReadWriteZoneDateTime() throws Exception {
+        final String resourceName = "zoneddatetime";
+        assumeCompatibility(resourceName);
+
+        final ZonedDateTime resource = findModelEntryObject(resourceName);
+        final ZonedDateTime fromStatic = read(getCompatibility().readFromResource(resourceName), ZonedDateTime.class);
+        final ZonedDateTime recycled = read(write(fromStatic, ZonedDateTime.class), ZonedDateTime.class);
+        assertNotSame(fromStatic, recycled);
+        assertEquals(fromStatic, recycled);
+        assertEquals(resource, fromStatic);
+        assertEquals(resource, recycled);
     }
 }

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibilityTest.java
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibilityTest.java b/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibilityTest.java
index 50c0853..fe86e0a 100644
--- a/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibilityTest.java
+++ b/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibilityTest.java
@@ -19,8 +19,12 @@
 package org.apache.tinkerpop.gremlin.structure.io.gryo;
 
 import org.apache.commons.io.output.ByteArrayOutputStream;
+import org.apache.tinkerpop.gremlin.structure.Edge;
+import org.apache.tinkerpop.gremlin.structure.Vertex;
 import org.apache.tinkerpop.gremlin.structure.io.AbstractTypedCompatibilityTest;
 import org.apache.tinkerpop.gremlin.structure.io.Compatibility;
+import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge;
+import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedVertex;
 import org.apache.tinkerpop.gremlin.tinkergraph.structure.TinkerIoRegistryV2d0;
 import org.apache.tinkerpop.shaded.kryo.Kryo;
 import org.apache.tinkerpop.shaded.kryo.io.Input;

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/bytebuffer-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/bytebuffer-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/bytebuffer-v2d0-no-types.json
index 2d341b1..e0046e9 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/bytebuffer-v2d0-no-types.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/bytebuffer-v2d0-no-types.json
@@ -1 +1 @@
-"AQIDBAU="
\ No newline at end of file
+"c29tZSBieXRlcyBmb3IgeW91"
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/bytebuffer-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/bytebuffer-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/bytebuffer-v2d0-partial.json
index eef472e..5724115 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/bytebuffer-v2d0-partial.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/bytebuffer-v2d0-partial.json
@@ -1,4 +1,4 @@
 {
   "@type" : "gx:ByteBuffer",
-  "@value" : "AQIDBAU="
+  "@value" : "c29tZSBieXRlcyBmb3IgeW91"
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/date-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/date-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/date-v2d0-no-types.json
index 5eadd3a..03b71a0 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/date-v2d0-no-types.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/date-v2d0-no-types.json
@@ -1 +1 @@
-1481628637175
\ No newline at end of file
+1481750076295
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/date-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/date-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/date-v2d0-partial.json
index 7b6d985..cf4007a 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/date-v2d0-partial.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/date-v2d0-partial.json
@@ -1,4 +1,4 @@
 {
   "@type" : "g:Date",
-  "@value" : 1481628634371
+  "@value" : 1481750076295
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/instant-v1d0.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/instant-v1d0.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/instant-v1d0.json
index 9d9579c..40f2c7c 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/instant-v1d0.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/instant-v1d0.json
@@ -1 +1 @@
-"2016-12-13T11:30:29.506Z"
\ No newline at end of file
+"2016-12-14T16:39:19.349Z"
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/instant-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/instant-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/instant-v2d0-no-types.json
index dc5353a..40f2c7c 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/instant-v2d0-no-types.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/instant-v2d0-no-types.json
@@ -1 +1 @@
-"2016-12-13T11:30:37.207Z"
\ No newline at end of file
+"2016-12-14T16:39:19.349Z"
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/instant-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/instant-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/instant-v2d0-partial.json
index b71b3f7..3749741 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/instant-v2d0-partial.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/instant-v2d0-partial.json
@@ -1,4 +1,4 @@
 {
   "@type" : "gx:Instant",
-  "@value" : "2016-12-13T11:30:34.474Z"
+  "@value" : "2016-12-14T16:39:19.349Z"
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/manual-graphson-generator.groovy
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/manual-graphson-generator.groovy b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/manual-graphson-generator.groovy
index c21a488..bc41355 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/manual-graphson-generator.groovy
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/manual-graphson-generator.groovy
@@ -1,4 +1,3 @@
-package org.apache.tinkerpop.gremlin.structure.io.graphson._3_2_3
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
@@ -31,7 +30,7 @@ import org.apache.tinkerpop.gremlin.process.traversal.step.TraversalOptionParent
 import org.apache.tinkerpop.gremlin.structure.io.gryo.*
 
 new File("dev-docs/").mkdirs()
-new File("test-case-data/io/").mkdirs()
+new File("test-case-data/io/graphson").mkdirs()
 
 graph = TinkerFactory.createTheCrew()
 g = graph.traversal()
@@ -113,17 +112,17 @@ writeSupportedV1Objects = { writer, mapper ->
     writer.write("Time\n")
     writer.write("~~~~\n\n")
     writer.write(toJsonV1d0NoTypes(Duration.ofDays(5), "Duration", mapper, "The following example is a `Duration` of five days."))
-    writer.write(toJsonV1d0NoTypes(Instant.now(), "Instant", mapper))
+    writer.write(toJsonV1d0NoTypes(Instant.parse("2016-12-14T16:39:19.349Z"), "Instant", mapper))
     writer.write(toJsonV1d0NoTypes(LocalDate.of(2016, 1, 1), "LocalDate", mapper))
     writer.write(toJsonV1d0NoTypes(LocalDateTime.of(2016, 1, 1, 12, 30), "LocalDateTime", mapper))
     writer.write(toJsonV1d0NoTypes(LocalTime.of(12, 30, 45), "LocalTime", mapper))
     writer.write(toJsonV1d0NoTypes(MonthDay.of(1, 1), "MonthDay", mapper))
-    writer.write(toJsonV1d0NoTypes(OffsetDateTime.now(), "OffsetDateTime", mapper))
-    writer.write(toJsonV1d0NoTypes(OffsetTime.now(), "OffsetTime", mapper))
+    writer.write(toJsonV1d0NoTypes(OffsetDateTime.parse("2007-12-03T10:15:30+01:00"), "OffsetDateTime", mapper))
+    writer.write(toJsonV1d0NoTypes(OffsetTime.parse("10:15:30+01:00"), "OffsetTime", mapper))
     writer.write(toJsonV1d0NoTypes(Period.of(1, 6, 15), "Period", mapper, "The following example is a `Period` of one year, six months and fifteen days."))
     writer.write(toJsonV1d0NoTypes(Year.of(2016), "Year", mapper, "The following example is of the `Year` \"2016\"."))
     writer.write(toJsonV1d0NoTypes(YearMonth.of(2016, 6), "YearMonth", mapper, "The following example is a `YearMonth` of \"June 2016\""))
-    writer.write(toJsonV1d0NoTypes(ZonedDateTime.now(), "ZonedDateTime", mapper))
+    writer.write(toJsonV1d0NoTypes(ZonedDateTime.of(2016, 12, 23, 12, 12, 24, 36, ZoneId.of("GMT+2")), "ZonedDateTime", mapper))
     writer.write(toJsonV1d0NoTypes(ZoneOffset.ofHoursMinutesSeconds(3, 6, 9), "ZoneOffset", mapper, "The following example is a `ZoneOffset` of three hours, six minutes, and nine seconds."))
 }
 
@@ -148,12 +147,12 @@ writeSupportedV2Objects = { writer, mapper, toJsonFunction ->
     writer.write("Core\n")
     writer.write("~~~~\n\n")
     writer.write(toJsonFunction(File, "Class", mapper))
-    writer.write(toJsonFunction(new Date(), "Date", mapper))
+    writer.write(toJsonFunction(new Date(1481750076295L), "Date", mapper))
     writer.write(toJsonFunction(100.00d, "Double", mapper))
     writer.write(toJsonFunction(100.00f, "Float", mapper))
     writer.write(toJsonFunction(100, "Integer", mapper))
     writer.write(toJsonFunction(100L, "Long", mapper))
-    writer.write(toJsonFunction(new java.sql.Timestamp(System.currentTimeMillis()), "Timestamp", mapper))
+    writer.write(toJsonFunction(new java.sql.Timestamp(1481750076295L), "Timestamp", mapper))
     writer.write(toJsonFunction(UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786"), "UUID", mapper))
 
     writer.write("\n")
@@ -173,7 +172,7 @@ writeSupportedV2Objects = { writer, mapper, toJsonFunction ->
     writer.write("~~~~~~~~~~~~~\n\n")
     writer.write(toJsonFunction(SackFunctions.Barrier.normSack, "Barrier", mapper))
     writer.write(toJsonFunction(new Bytecode.Binding("x", 1), "Binding", mapper, "A \"Binding\" refers to a `Bytecode.Binding`."))
-    writer.write(toJsonFunction(g.V().hasLabel('person').out().in().tree(), "Bytecode", mapper, "The following `Bytecode` example represents the traversal of `g.V().hasLabel('person').out().in().tree()`. Obviously the serialized `Bytecode` woudl be quite different for the endless variations of commands that could be used together in the Gremlin language."))
+    writer.write(toJsonFunction(g.V().hasLabel('person').out().in().tree().asAdmin().getBytecode(), "Bytecode", mapper, "The following `Bytecode` example represents the traversal of `g.V().hasLabel('person').out().in().tree()`. Obviously the serialized `Bytecode` woudl be quite different for the endless variations of commands that could be used together in the Gremlin language."))
     writer.write(toJsonFunction(VertexProperty.Cardinality.list, "Cardinality", mapper))
     writer.write(toJsonFunction(Column.keys, "Column", mapper))
     writer.write(toJsonFunction(Direction.OUT, "Direction", mapper))
@@ -248,22 +247,22 @@ mapper = GraphSONMapper.build().
     writer.write(toJsonFunction(new java.math.BigDecimal(new java.math.BigInteger("123456789987654321123456789987654321")), "BigDecimal", mapper))
     writer.write(toJsonFunction(new java.math.BigInteger("123456789987654321123456789987654321"), "BigInteger", mapper))
     writer.write(toJsonFunction(new Byte("1"), "Byte", mapper))
-    writer.write(toJsonFunction(java.nio.ByteBuffer.wrap([1,2,3,4,5] as byte[]), "ByteBuffer", mapper))
+    writer.write(toJsonFunction(java.nio.ByteBuffer.wrap("some bytes for you".getBytes()), "ByteBuffer", mapper))
     writer.write(toJsonFunction("x".charAt(0), "Char", mapper))
     writer.write(toJsonFunction(Duration.ofDays(5), "Duration", mapper,"The following example is a `Duration` of five days."))
     writer.write(toJsonFunction(java.net.InetAddress.getByName("localhost"), "InetAddress", mapper))
-    writer.write(toJsonFunction(Instant.now(), "Instant", mapper))
+    writer.write(toJsonFunction(Instant.parse("2016-12-14T16:39:19.349Z"), "Instant", mapper))
     writer.write(toJsonFunction(LocalDate.of(2016, 1, 1), "LocalDate", mapper))
     writer.write(toJsonFunction(LocalDateTime.of(2016, 1, 1, 12, 30), "LocalDateTime", mapper))
     writer.write(toJsonFunction(LocalTime.of(12, 30, 45), "LocalTime", mapper))
     writer.write(toJsonFunction(MonthDay.of(1, 1), "MonthDay", mapper))
-    writer.write(toJsonFunction(OffsetDateTime.now(), "OffsetDateTime", mapper))
-    writer.write(toJsonFunction(OffsetTime.now(), "OffsetTime", mapper))
+    writer.write(toJsonFunction(OffsetDateTime.parse("2007-12-03T10:15:30+01:00"), "OffsetDateTime", mapper))
+    writer.write(toJsonFunction(OffsetTime.parse("10:15:30+01:00"), "OffsetTime", mapper))
     writer.write(toJsonFunction(Period.of(1, 6, 15), "Period", mapper, "The following example is a `Period` of one year, six months and fifteen days."))
     writer.write(toJsonFunction(new Short("100"), "Short", mapper))
     writer.write(toJsonFunction(Year.of(2016), "Year", mapper, "The following example is of the `Year` \"2016\"."))
     writer.write(toJsonFunction(YearMonth.of(2016, 6), "YearMonth", mapper, "The following example is a `YearMonth` of \"June 2016\""))
-    writer.write(toJsonFunction(ZonedDateTime.now(), "ZonedDateTime", mapper))
+    writer.write(toJsonFunction(ZonedDateTime.of(2016, 12, 23, 12, 12, 24, 36, ZoneId.of("GMT+2")), "ZonedDateTime", mapper))
     writer.write(toJsonFunction(ZoneOffset.ofHoursMinutesSeconds(3, 6, 9), "ZoneOffset", mapper, "The following example is a `ZoneOffset` of three hours, six minutes, and nine seconds."))
 }
 

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/metrics-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/metrics-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/metrics-v2d0-no-types.json
index 570b31d..9d647f0 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/metrics-v2d0-no-types.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/metrics-v2d0-no-types.json
@@ -1,23 +1,23 @@
 {
-  "dur" : 0.079689,
+  "dur" : 0.112874,
   "counts" : {
     "traverserCount" : 4,
     "elementCount" : 4
   },
   "name" : "TinkerGraphStep(vertex,[~label.eq(person)])",
   "annotations" : {
-    "percentDur" : 11.133713822660305
+    "percentDur" : 12.93474299884718
   },
   "id" : "7.0.0()",
   "metrics" : [ {
-    "dur" : 0.174724,
+    "dur" : 0.2619,
     "counts" : {
       "traverserCount" : 13,
       "elementCount" : 13
     },
     "name" : "VertexStep(OUT,vertex)",
     "annotations" : {
-      "percentDur" : 24.411487331381988
+      "percentDur" : 30.012307452540675
     },
     "id" : "2.0.0()"
   } ]

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/metrics-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/metrics-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/metrics-v2d0-partial.json
index f123b72..5d2a919 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/metrics-v2d0-partial.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/metrics-v2d0-partial.json
@@ -3,7 +3,7 @@
   "@value" : {
     "dur" : {
       "@type" : "g:Double",
-      "@value" : 0.164766
+      "@value" : 0.173382
     },
     "counts" : {
       "traverserCount" : {
@@ -19,7 +19,7 @@
     "annotations" : {
       "percentDur" : {
         "@type" : "g:Double",
-        "@value" : 15.940165606833242
+        "@value" : 17.538702446366866
       }
     },
     "id" : "7.0.0()",
@@ -28,7 +28,7 @@
       "@value" : {
         "dur" : {
           "@type" : "g:Double",
-          "@value" : 0.275414
+          "@value" : 0.259902
         },
         "counts" : {
           "traverserCount" : {
@@ -44,7 +44,7 @@
         "annotations" : {
           "percentDur" : {
             "@type" : "g:Double",
-            "@value" : 26.64472506730982
+            "@value" : 26.29075592169684
           }
         },
         "id" : "2.0.0()"

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsetdatetime-v1d0.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsetdatetime-v1d0.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsetdatetime-v1d0.json
index cd60d26..d85a355 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsetdatetime-v1d0.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsetdatetime-v1d0.json
@@ -1 +1 @@
-"2016-12-13T06:30:29.545-05:00"
\ No newline at end of file
+"2007-12-03T10:15:30+01:00"
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsetdatetime-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsetdatetime-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsetdatetime-v2d0-no-types.json
index b5b5427..d85a355 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsetdatetime-v2d0-no-types.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsetdatetime-v2d0-no-types.json
@@ -1 +1 @@
-"2016-12-13T06:30:37.209-05:00"
\ No newline at end of file
+"2007-12-03T10:15:30+01:00"
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsetdatetime-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsetdatetime-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsetdatetime-v2d0-partial.json
index ec7559d..03f45cd 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsetdatetime-v2d0-partial.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsetdatetime-v2d0-partial.json
@@ -1,4 +1,4 @@
 {
   "@type" : "gx:OffsetDateTime",
-  "@value" : "2016-12-13T06:30:34.477-05:00"
+  "@value" : "2007-12-03T10:15:30+01:00"
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsettime-v1d0.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsettime-v1d0.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsettime-v1d0.json
index 4b43fb2..b8f08fd 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsettime-v1d0.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsettime-v1d0.json
@@ -1 +1 @@
-"06:30:29.551-05:00"
\ No newline at end of file
+"10:15:30+01:00"
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsettime-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsettime-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsettime-v2d0-no-types.json
index c57977d..b8f08fd 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsettime-v2d0-no-types.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsettime-v2d0-no-types.json
@@ -1 +1 @@
-"06:30:37.209-05:00"
\ No newline at end of file
+"10:15:30+01:00"
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsettime-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsettime-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsettime-v2d0-partial.json
index efeec46..b124953 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsettime-v2d0-partial.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/offsettime-v2d0-partial.json
@@ -1,4 +1,4 @@
 {
   "@type" : "gx:OffsetTime",
-  "@value" : "06:30:34.477-05:00"
+  "@value" : "10:15:30+01:00"
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionclose-v1d0.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionclose-v1d0.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionclose-v1d0.json
index 883d7d1..e2cbb13 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionclose-v1d0.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionclose-v1d0.json
@@ -1,5 +1,5 @@
 {
-  "requestId" : "4b39e6aa-363b-4f1d-91d2-c173dc81bea5",
+  "requestId" : "cb682578-9d92-4499-9ebc-5c6aa73c5397",
   "op" : "close",
   "processor" : "session",
   "args" : {

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionclose-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionclose-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionclose-v2d0-no-types.json
index 0640bd3..e2cbb13 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionclose-v2d0-no-types.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionclose-v2d0-no-types.json
@@ -1,5 +1,5 @@
 {
-  "requestId" : "cca7f0f0-0c51-4e9d-90d8-2ef1b7b1c6ca",
+  "requestId" : "cb682578-9d92-4499-9ebc-5c6aa73c5397",
   "op" : "close",
   "processor" : "session",
   "args" : {

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionclose-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionclose-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionclose-v2d0-partial.json
index 4605a98..ee860ea 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionclose-v2d0-partial.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionclose-v2d0-partial.json
@@ -1,7 +1,7 @@
 {
   "requestId" : {
     "@type" : "g:UUID",
-    "@value" : "4a422689-0f01-457f-8963-b6f07aefb106"
+    "@value" : "cb682578-9d92-4499-9ebc-5c6aa73c5397"
   },
   "op" : "close",
   "processor" : "session",

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessioneval-v1d0.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessioneval-v1d0.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessioneval-v1d0.json
index 94a00ae..5e6fae2 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessioneval-v1d0.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessioneval-v1d0.json
@@ -1,5 +1,5 @@
 {
-  "requestId" : "8479fb7d-620e-44e2-99bb-5625b54fb518",
+  "requestId" : "cb682578-9d92-4499-9ebc-5c6aa73c5397",
   "op" : "eval",
   "processor" : "session",
   "args" : {

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessioneval-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessioneval-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessioneval-v2d0-no-types.json
index bd23835..5e6fae2 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessioneval-v2d0-no-types.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessioneval-v2d0-no-types.json
@@ -1,5 +1,5 @@
 {
-  "requestId" : "80259836-35b0-4399-a0d7-f1d0bf956cbc",
+  "requestId" : "cb682578-9d92-4499-9ebc-5c6aa73c5397",
   "op" : "eval",
   "processor" : "session",
   "args" : {

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessioneval-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessioneval-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessioneval-v2d0-partial.json
index a1dee0c..f1f2dc2 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessioneval-v2d0-partial.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessioneval-v2d0-partial.json
@@ -1,7 +1,7 @@
 {
   "requestId" : {
     "@type" : "g:UUID",
-    "@value" : "8a9b4c19-bd79-4470-a73d-ac54b7937c65"
+    "@value" : "cb682578-9d92-4499-9ebc-5c6aa73c5397"
   },
   "op" : "eval",
   "processor" : "session",

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionlesseval-v1d0.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionlesseval-v1d0.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionlesseval-v1d0.json
index 47d2314..59f0c6c 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionlesseval-v1d0.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionlesseval-v1d0.json
@@ -1,5 +1,5 @@
 {
-  "requestId" : "3f905713-9534-43ff-b6e8-2e2aa4f82451",
+  "requestId" : "cb682578-9d92-4499-9ebc-5c6aa73c5397",
   "op" : "eval",
   "processor" : "",
   "args" : {

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionlesseval-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionlesseval-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionlesseval-v2d0-no-types.json
index d6c3b67..59f0c6c 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionlesseval-v2d0-no-types.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionlesseval-v2d0-no-types.json
@@ -1,5 +1,5 @@
 {
-  "requestId" : "7bee05b0-1bca-4560-8f8d-45fce3d07fd8",
+  "requestId" : "cb682578-9d92-4499-9ebc-5c6aa73c5397",
   "op" : "eval",
   "processor" : "",
   "args" : {

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionlesseval-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionlesseval-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionlesseval-v2d0-partial.json
index ecc5b9d..761b71a 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionlesseval-v2d0-partial.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/sessionlesseval-v2d0-partial.json
@@ -1,7 +1,7 @@
 {
   "requestId" : {
     "@type" : "g:UUID",
-    "@value" : "fe49a49e-7552-4c5f-ae33-5f4783926919"
+    "@value" : "cb682578-9d92-4499-9ebc-5c6aa73c5397"
   },
   "op" : "eval",
   "processor" : "",

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/timestamp-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/timestamp-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/timestamp-v2d0-no-types.json
index 139952d..03b71a0 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/timestamp-v2d0-no-types.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/timestamp-v2d0-no-types.json
@@ -1 +1 @@
-1481628637178
\ No newline at end of file
+1481750076295
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/timestamp-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/timestamp-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/timestamp-v2d0-partial.json
index 8097011..1ca0e17 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/timestamp-v2d0-partial.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/timestamp-v2d0-partial.json
@@ -1,4 +1,4 @@
 {
   "@type" : "g:Timestamp",
-  "@value" : 1481628634377
+  "@value" : 1481750076295
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/traversalmetrics-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/traversalmetrics-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/traversalmetrics-v2d0-no-types.json
index b1598bb..604a166 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/traversalmetrics-v2d0-no-types.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/traversalmetrics-v2d0-no-types.json
@@ -1,47 +1,47 @@
 {
-  "dur" : 0.661531,
+  "dur" : 1.101297,
   "metrics" : [ {
-    "dur" : 0.114389,
+    "dur" : 0.224678,
     "counts" : {
       "traverserCount" : 4,
       "elementCount" : 4
     },
     "name" : "TinkerGraphStep(vertex,[~label.eq(person)])",
     "annotations" : {
-      "percentDur" : 17.291555497777125
+      "percentDur" : 20.401217836786987
     },
     "id" : "7.0.0()"
   }, {
-    "dur" : 0.244496,
+    "dur" : 0.323779,
     "counts" : {
       "traverserCount" : 13,
       "elementCount" : 13
     },
     "name" : "VertexStep(OUT,vertex)",
     "annotations" : {
-      "percentDur" : 36.95911453885003
+      "percentDur" : 29.399789520901265
     },
     "id" : "2.0.0()"
   }, {
-    "dur" : 0.162661,
+    "dur" : 0.276658,
     "counts" : {
       "traverserCount" : 7,
       "elementCount" : 7
     },
     "name" : "VertexStep(OUT,vertex)",
     "annotations" : {
-      "percentDur" : 24.588568033848755
+      "percentDur" : 25.121107203597212
     },
     "id" : "3.0.0()"
   }, {
-    "dur" : 0.139985,
+    "dur" : 0.276182,
     "counts" : {
       "traverserCount" : 1,
       "elementCount" : 1
     },
     "name" : "TreeStep",
     "annotations" : {
-      "percentDur" : 21.16076192952409
+      "percentDur" : 25.077885438714535
     },
     "id" : "4.0.0()"
   } ]

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/traversalmetrics-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/traversalmetrics-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/traversalmetrics-v2d0-partial.json
index 967e743..b40c565 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/traversalmetrics-v2d0-partial.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/traversalmetrics-v2d0-partial.json
@@ -3,14 +3,14 @@
   "@value" : {
     "dur" : {
       "@type" : "g:Double",
-      "@value" : 0.583377
+      "@value" : 0.701505
     },
     "metrics" : [ {
       "@type" : "g:Metrics",
       "@value" : {
         "dur" : {
           "@type" : "g:Double",
-          "@value" : 0.084061
+          "@value" : 0.100826
         },
         "counts" : {
           "traverserCount" : {
@@ -26,7 +26,7 @@
         "annotations" : {
           "percentDur" : {
             "@type" : "g:Double",
-            "@value" : 14.409378497952439
+            "@value" : 14.372812738326884
           }
         },
         "id" : "7.0.0()"
@@ -36,7 +36,7 @@
       "@value" : {
         "dur" : {
           "@type" : "g:Double",
-          "@value" : 0.163463
+          "@value" : 0.169312
         },
         "counts" : {
           "traverserCount" : {
@@ -52,7 +52,7 @@
         "annotations" : {
           "percentDur" : {
             "@type" : "g:Double",
-            "@value" : 28.0201310644746
+            "@value" : 24.135537166520553
           }
         },
         "id" : "2.0.0()"
@@ -62,7 +62,7 @@
       "@value" : {
         "dur" : {
           "@type" : "g:Double",
-          "@value" : 0.175719
+          "@value" : 0.268548
         },
         "counts" : {
           "traverserCount" : {
@@ -78,7 +78,7 @@
         "annotations" : {
           "percentDur" : {
             "@type" : "g:Double",
-            "@value" : 30.12100237067968
+            "@value" : 38.28169435713217
           }
         },
         "id" : "3.0.0()"
@@ -88,7 +88,7 @@
       "@value" : {
         "dur" : {
           "@type" : "g:Double",
-          "@value" : 0.160134
+          "@value" : 0.162819
         },
         "counts" : {
           "traverserCount" : {
@@ -104,7 +104,7 @@
         "annotations" : {
           "percentDur" : {
             "@type" : "g:Double",
-            "@value" : 27.449488066893277
+            "@value" : 23.209955738020398
           }
         },
         "id" : "4.0.0()"

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/zoneddatetime-v1d0.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/zoneddatetime-v1d0.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/zoneddatetime-v1d0.json
index aa7c22e..7333537 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/zoneddatetime-v1d0.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/zoneddatetime-v1d0.json
@@ -1 +1 @@
-"2016-12-13T06:30:29.567-05:00[America/New_York]"
\ No newline at end of file
+"2016-12-23T12:12:24.000000036+02:00[GMT+02:00]"
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/zoneddatetime-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/zoneddatetime-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/zoneddatetime-v2d0-no-types.json
index 6fe8540..7333537 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/zoneddatetime-v2d0-no-types.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/zoneddatetime-v2d0-no-types.json
@@ -1 +1 @@
-"2016-12-13T06:30:37.210-05:00[America/New_York]"
\ No newline at end of file
+"2016-12-23T12:12:24.000000036+02:00[GMT+02:00]"
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/fc7b4457/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/zoneddatetime-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/zoneddatetime-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/zoneddatetime-v2d0-partial.json
index deaa3c6..367fc47 100644
--- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/zoneddatetime-v2d0-partial.json
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/zoneddatetime-v2d0-partial.json
@@ -1,4 +1,4 @@
 {
   "@type" : "gx:ZonedDateTime",
-  "@value" : "2016-12-13T06:30:34.481-05:00[America/New_York]"
+  "@value" : "2016-12-23T12:12:24.000000036+02:00[GMT+02:00]"
 }
\ No newline at end of file


Mime
View raw message