예제 #1
0
파일: test.py 프로젝트: hal1932/rte2
    def test_serializeAsRoot(self):
        node = self.root.addChild("node", "lnode")

        size = node.calcSize()
        buf = rt.buffer(size)
        node.serialize(buf.cast())

        n = rt.Node()
        n.deserialize(buf.cast())
        self.assertEqual(n.getParent(), None)
        self.assertEqual(n.getPath(), "node")
예제 #2
0
def main():
    rt.core.setup()

    rootNode = rt.Node.createRootNode("root", "root_ラベル")

    child1 = rootNode.addChild("child1", "child1_label")
    content1 = child1.createContent("content1", "content1_ラベル")
    data1 = content1.createDataInt32()
    data1.Value = 1234

    bufSize = rootNode.calcSize()
    buf = rt.buffer(bufSize)
    rootNode.serialize(buf.cast())

    client = rt.TcpClient()
    client.connect("127.0.0.1", 0x1234)
    client.sendAsync(buf.cast(), bufSize)

    # send
    while True:
        if len(client.popSentQueue()) > 0:
            break
        time.sleep(0.1)

    # receive, deserialize
    while True:
        if not client.isConnectionAlive():
            print "connection is closed by server"
            break

        received = client.popReceivedQueue()
        if len(received) > 0:
            print "received"
            data = received[0]

            context = rt.NodeDeserializationContext(data.buffer, data.bufferSize)
            while context.hasNext():
                n = context.getNext()
                print n.getName(), n.getLabel()

            print "success!"
            break

        time.sleep(0.1)
    
    client.close()
    rt.core.shutdown()
예제 #3
0
파일: test.py 프로젝트: hal1932/rte2
    def test_serialize(self):
        node = self.root.addChild("node", "lnode")

        c = node.createContent()
        c.setName("cn")
        c.setLabel("cl")

        d = c.createDataInt32()
        d.Value = 1

        size = self.root.calcSize()
        buf = rt.buffer(size)
        self.root.serialize(buf.cast())

        root = rt.Node()
        root.deserialize(buf.cast())
        self.assertEqual(root.getName(), self.root.getName())
        self.assertEqual(root.getPath(), self.root.getPath())
        self.assertEqual(root.getLabel(), self.root.getLabel())
        self.assertEqual(root.getChildren().size(), 1)

        n = root.getChildren()[0]
        self.assertEqual(n.getParent(), root)
        self.assertEqual(n.getName(), node.getName())
        self.assertEqual(n.getPath(), node.getPath())
        self.assertEqual(n.getLabel(), node.getLabel())

        c1 = n.getContent()
        self.assertEqual(c1.getName(), c.getName())
        self.assertEqual(c1.getPath(), c.getPath())
        self.assertEqual(c1.getLabel(), c.getLabel())
        self.assertEqual(c1.getDataType(), c.getDataType())

        d1 = c1.getDataInt32()
        self.assertEqual(d1.getType(), d.getType())
        self.assertEqual(d1.Value, d.Value)