Esempio n. 1
0
def test_load_multiple_messages():
    f = _get_many_messages()
    p1 = load(f, Struct)
    assert p1._read_primitive(0, Types.int64.ifmt) == 1
    assert p1._read_primitive(8, Types.int64.ifmt) == 2
    p2 = load(f, Struct)
    assert p2._read_primitive(0, Types.int64.ifmt) == 3
    assert p2._read_primitive(8, Types.int64.ifmt) == 4
Esempio n. 2
0
def test_load():
    buf = b('\x00\x00\x00\x00\x03\x00\x00\x00'   # message header: 1 segment, size 3 words
            '\x00\x00\x00\x00\x02\x00\x00\x00'   # ptr to payload (Point {x, y})
            '\x01\x00\x00\x00\x00\x00\x00\x00'   # x == 1
            '\x02\x00\x00\x00\x00\x00\x00\x00')  # y == 2
    f = BytesIO(buf)
    p = load(f, Struct)
    assert isinstance(p, Struct)
    assert p._read_primitive(0, Types.int64.ifmt) == 1
    assert p._read_primitive(8, Types.int64.ifmt) == 2
Esempio n. 3
0
def decode(args):
    print('Loading schema...', file=sys.stderr)
    a = time.time()
    mod = load_schema(modname=args['SCHEMA'],
                      convert_case=args['--convert-case'],
                      pyx=args['--pyx'])
    b = time.time()
    print('schema loaded in %.2f secs' % (b - a), file=sys.stderr)
    print('decoding stream...', file=sys.stderr)
    cls = getattr(mod, args['CLASS'])
    with open(args['FILE'], 'rb') as f:
        i = 0
        while True:
            try:
                obj = load(f, cls)
            except ValueError:
                break
            print(obj.shortrepr())
            i += 1
            if i % 10000 == 0:
                print(i, file=sys.stderr, end='\r')
    c = time.time()
    print('\nstream decoded in %.2f secs' % (c - b), file=sys.stderr)
Esempio n. 4
0
def decode(args):
    print >> sys.stderr, 'Loading schema...'
    a = time.time()
    mod = load_schema(args['SCHEMA'],
                      convert_case=args['--convert-case'],
                      pyx=args['--pyx'])
    b = time.time()
    print >> sys.stderr, 'schema loaded in %.2f secs' % (b - a)
    print >> sys.stderr, 'decoding stream...'
    cls = getattr(mod, args['CLASS'])
    with open(args['FILE']) as f:
        i = 0
        while True:
            try:
                obj = load(f, cls)
            except ValueError:
                break
            print obj.shortrepr()
            i += 1
            if i % 10000 == 0:
                print >> sys.stderr, i
    c = time.time()
    print >> sys.stderr, 'stream decoded in %.2f secs' % (c - b)
Esempio n. 5
0
 def check(self, f):
     p = load(f, Struct)
     assert isinstance(p, Struct)
     assert p._read_primitive(0, Types.int64.ifmt) == 1
     assert p._read_primitive(8, Types.int64.ifmt) == 2