def test_append_ByteArray(self): aeq = self.assertEquals from _dbus_bindings import SignalMessage s = SignalMessage('/', 'foo.bar', 'baz') s.append(types.ByteArray('ab'), signature='ay') aeq(s.get_args_list(), [[types.Byte('a'), types.Byte('b')]]) s = SignalMessage('/', 'foo.bar', 'baz') s.append(types.ByteArray('ab'), signature='av') aeq(s.get_args_list(), [[types.Byte('a'), types.Byte('b')]])
def test_append(self): aeq = self.assertEqual from _dbus_bindings import SignalMessage s = SignalMessage('/', 'foo.bar', 'baz') s.append([types.Byte(1)], signature='ay') aeq(s.get_signature(), 'ay') aeq(s.get_args_list(), [[types.Byte(1)]]) s = SignalMessage('/', 'foo.bar', 'baz') s.append([], signature='ay') aeq(s.get_args_list(), [[]])
def test_append_ByteArray(self): aeq = self.assertEqual from _dbus_bindings import SignalMessage s = SignalMessage('/', 'foo.bar', 'baz') s.append(types.ByteArray(b'ab'), signature='ay') aeq(s.get_args_list(), [[types.Byte(b'a'), types.Byte(b'b')]]) s = SignalMessage('/', 'foo.bar', 'baz') s.append(types.ByteArray(b'ab'), signature='av') aeq(s.get_args_list(), [[types.Byte(b'a'), types.Byte(b'b')]]) s = SignalMessage('/', 'foo.bar', 'baz') s.append(types.ByteArray(b''), signature='ay') aeq(s.get_args_list(), [[]]) aeq(s.get_args_list(byte_arrays=True), [types.ByteArray(b'')])
def test_object_path_attr(self): from _dbus_bindings import SignalMessage class MyObject(object): __dbus_object_path__ = '/foo' s = SignalMessage('/', 'foo.bar', 'baz') s.append(MyObject(), signature='o') s.append(MyObject()) self.assertEqual(s.get_args_list(), ['/foo', '/foo'])
def test_append_Byte(self): aeq = self.assertEqual from _dbus_bindings import SignalMessage s = SignalMessage('/', 'foo.bar', 'baz') s.append(0xFE, signature='y') aeq(s.get_args_list(), [types.Byte(0xFE)]) s = SignalMessage('/', 'foo.bar', 'baz') s.append(b'\xfe', signature='y') aeq(s.get_args_list(), [types.Byte(0xFE)]) # appending a unicode object (including str in Python 3) # is not allowed s = SignalMessage('/', 'foo.bar', 'baz') self.assertRaises( Exception, lambda: s.append('a'.decode('latin-1'), signature='y')) s = SignalMessage('/', 'foo.bar', 'baz') self.assertRaises(Exception, lambda: s.append(b'ab', signature='y'))
def test_append_Byte(self): aeq = self.assertEqual from _dbus_bindings import SignalMessage s = SignalMessage('/', 'foo.bar', 'baz') s.append(0xFE, signature='y') aeq(s.get_args_list(), [types.Byte(0xFE)]) s = SignalMessage('/', 'foo.bar', 'baz') s.append(b'\xfe', signature='y') aeq(s.get_args_list(), [types.Byte(0xFE)]) # appending a unicode object (including str in Python 3) # is not allowed s = SignalMessage('/', 'foo.bar', 'baz') self.assertRaises(Exception, lambda: s.append('a'.decode('latin-1'), signature='y')) s = SignalMessage('/', 'foo.bar', 'baz') self.assertRaises(Exception, lambda: s.append(b'ab', signature='y'))
def test_append_Variant(self): aeq = self.assertEqual from _dbus_bindings import SignalMessage s = SignalMessage('/', 'foo.bar', 'baz') s.append(types.Int32(1, variant_level=0), types.String('a', variant_level=42), types.Array([types.Byte(b'a', variant_level=1), types.UInt32(123, variant_level=1)], signature='v'), signature='vvv') aeq(s.get_signature(), 'vvv') args = s.get_args_list() aeq(args[0].__class__, types.Int32) aeq(args[0].variant_level, 1) aeq(args[1].__class__, types.String) aeq(args[1].variant_level, 42) aeq(args[2].__class__, types.Array) aeq(args[2].variant_level, 1) aeq(args[2].signature, 'v')