Add test script for testing with https://github.com/kaos/capnp_test
This commit is contained in:
29
scripts/capnp_test_pycapnp.py
Executable file
29
scripts/capnp_test_pycapnp.py
Executable file
@@ -0,0 +1,29 @@
|
|||||||
|
#!/usr/bin/env python
|
||||||
|
import capnp
|
||||||
|
import os
|
||||||
|
capnp.add_import_hook([os.getcwd(), "/usr/local/include/"]) # change this to be auto-detected?
|
||||||
|
|
||||||
|
import test_capnp
|
||||||
|
|
||||||
|
import sys
|
||||||
|
|
||||||
|
def format_decode(val):
|
||||||
|
val = val.replace('\n ', '')
|
||||||
|
val = val.replace('( ', '(')
|
||||||
|
val = val.replace(' )', ')')
|
||||||
|
|
||||||
|
return val
|
||||||
|
|
||||||
|
def decode(name):
|
||||||
|
print format_decode(str(getattr(test_capnp, name)))
|
||||||
|
|
||||||
|
def encode(name):
|
||||||
|
val = getattr(test_capnp, name)
|
||||||
|
class_name = name[0].upper() + name[1:]
|
||||||
|
message = getattr(test_capnp, class_name).from_dict(val.to_dict())
|
||||||
|
print message.to_bytes()
|
||||||
|
|
||||||
|
if sys.argv[1] == 'decode':
|
||||||
|
decode(sys.argv[2])
|
||||||
|
else:
|
||||||
|
encode(sys.argv[2])
|
||||||
Reference in New Issue
Block a user