Пример #1
0
    def test_decode(self):
        self.assertEquals(decode_variable(v('0003666f6f 05')), ('foo', None))

        # trailing (garbage) data in the buffer
        self.assertEquals(decode_variable(v('0003666f6f 05 badbad')),
                          ('foo', None))

        # not enough data
        self.assertRaises(amf0.DecoderError, decode_variable, v('0003666f6f'))
        self.assertRaises(amf0.DecoderError, decode_variable, v('0003666f'))
        self.assertRaises(amf0.DecoderError, decode_variable, v('0003'))
        self.assertRaises(amf0.DecoderError, decode_variable, v('00'))
        self.assertRaises(amf0.DecoderError, decode_variable, v(''))

        d = ('000d7661726961626c65206e616d650a0000000300'
             '3ff000000000000000400000000000000002000133')
        self.assertEquals(decode_variable(v(d)),
                          ('variable name', [1, 2, '3']))

        # trailing data
        buf = v(d + d)
        self.assertEquals(decode_variable(buf), ('variable name', [1, 2, '3']))
        self.assertEquals(decode_variable(buf), ('variable name', [1, 2, '3']))

        self.assertRaises(amf0.DecoderError, decode_variable, buf)
Пример #2
0
    def test_decode(self):
        self.assertEquals(decode_variable(v('0003666f6f 05')), ('foo', None))

        # trailing (garbage) data in the buffer
        self.assertEquals(decode_variable(v('0003666f6f 05 badbad')),
                          ('foo', None))

        # not enough data
        self.assertRaises(amf0.DecoderError, decode_variable, v('0003666f6f'))
        self.assertRaises(amf0.DecoderError, decode_variable, v('0003666f'))
        self.assertRaises(amf0.DecoderError, decode_variable, v('0003'))
        self.assertRaises(amf0.DecoderError, decode_variable, v('00'))
        self.assertRaises(amf0.DecoderError, decode_variable, v(''))

        d = ('000d7661726961626c65206e616d650a0000000300'
             '3ff000000000000000400000000000000002000133')
        self.assertEquals(decode_variable(v(d)),
                          ('variable name', [1, 2, '3']))

        # trailing data
        buf = v(d + d)
        self.assertEquals(decode_variable(buf), ('variable name', [1, 2, '3']))
        self.assertEquals(decode_variable(buf), ('variable name', [1, 2, '3']))

        self.assertRaises(amf0.DecoderError, decode_variable, buf)
Пример #3
0
 def test_encode_decode(self):
     self.assertEquals(decode_variable(encode_variable('bar', None)),
                       ('bar', None))
     self.assertEquals(
         decode_variable(encode_variable('baz', [None, 1, {
             '3': 2
         }])), ('baz', [None, 1, {
             '3': 2
         }]))
Пример #4
0
 def test_encode_decode(self):
     self.assertEquals(decode_variable(encode_variable('bar', None)),
                       ('bar', None))
     self.assertEquals(decode_variable(encode_variable('baz', [None, 1,
                                                               {'3': 2}])),
                       ('baz', [None, 1, {'3': 2}]))