class TestGraphSONWriter(object): graphbinary_writer = GraphBinaryWriter() graphbinary_reader = GraphBinaryReader() def test_null(self): c = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(None)) assert c is None def test_int(self): x = 100 output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_long(self): x = long(100) output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_float(self): x = float(100.001) output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output x = float('nan') output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert math.isnan(output) x = float('-inf') output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert math.isinf(output) and output < 0 x = float('inf') output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert math.isinf(output) and output > 0 def test_double(self): x = 100.001 output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_date(self): x = datetime.datetime(2016, 12, 14, 16, 14, 36, 295000) output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_timestamp(self): x = timestamp(1481750076295 / 1000) output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_string(self): x = "serialize this!" output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_homogeneous_list(self): x = [ "serialize this!", "serialize that!", "serialize that!", "stop telling me what to serialize" ] output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_heterogeneous_list(self): x = [ "serialize this!", 0, "serialize that!", "serialize that!", 1, "stop telling me what to serialize", 2 ] output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_heterogeneous_list_with_none(self): x = [ "serialize this!", 0, "serialize that!", "serialize that!", 1, "stop telling me what to serialize", 2, None ] output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_homogeneous_set(self): x = { "serialize this!", "serialize that!", "stop telling me what to serialize" } output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_heterogeneous_set(self): x = { "serialize this!", 0, "serialize that!", 1, "stop telling me what to serialize", 2 } output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_dict(self): x = { "yo": "what?", "go": "no!", "number": 123, 321: "crazy with the number for a key", 987: ["go", "deep", { "here": "!" }] } output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output x = {"marko": [666], "noone": ["blah"]} output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output x = { "ripple": [], "peter": ["created"], "noone": ["blah"], "vadas": [], "josh": ["created", "created"], "lop": [], "marko": [666, "created", "knows", "knows"] } output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_uuid(self): x = uuid.UUID("41d2e28a-20a4-4ab0-b379-d810dede3786") output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_edge(self): x = Edge(123, Vertex(1, 'person'), "developed", Vertex(10, "software")) output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output assert x.inV == output.inV assert x.outV == output.outV def test_path(self): x = Path(["x", "y", "z"], [1, 2, 3]) output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_property(self): x = Property("name", "stephen", None) output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_vertex(self): x = Vertex(123, "person") output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_vertexproperty(self): x = VertexProperty(123, "name", "stephen", None) output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_barrier(self): x = Barrier.normSack output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_binding(self): x = Binding("name", "marko") output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_bytecode(self): x = Bytecode() x.source_instructions.append(["withStrategies", "SubgraphStrategy"]) x.step_instructions.append(["V", 1, 2, 3]) x.step_instructions.append(["out"]) output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_byte(self): x = int.__new__(SingleByte, 1) output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_bytebuffer(self): x = ByteBufferType("c29tZSBieXRlcyBmb3IgeW91", "utf8") output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_boolean(self): x = True output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output x = False output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_char(self): x = str.__new__(SingleChar, chr(76)) output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output if six.PY3: x = str.__new__(SingleChar, chr(57344)) output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output def test_duration(self): x = datetime.timedelta(seconds=1000, microseconds=1000) output = self.graphbinary_reader.readObject( self.graphbinary_writer.writeObject(x)) assert x == output
class TestGraphBinaryReader(object): graphbinary_reader = GraphBinaryReader()