Пример #1
0
 def set_aspect_mode(self, mode):
     """
     Args:
         mode (str): One of ("letterbox" | "fill" | "stretch")
     """
     self._get_player_interface().SetAspectMode(ObjectPath('/not/used'),
                                                String(mode))
Пример #2
0
 def set_videopos(self,new_coordinates):
     logger.debug('CameraStream: ' + self.name + ' Set new position for ' + self.name + ' with new coordinates: + ' + str(new_coordinates) + ' on dbus interface')
     if platform.system() == "Linux":
         if self.dbusconnection is not None:
             self.dbusconnection.VideoPosWrapper((ObjectPath('/not/used'), String(" ".join(map(str,new_coordinates)))))
         else:
             logger.error('CameraStream: ' + self.name + ' has no dbus connection, probably because omxplayer crashed because it can not connect to this stream. As a result we could not change its videopos dynamically for this stream at this time.')
Пример #3
0
 def video_pos(self):
     """
     Returns:
     """
     position_string = self._player_interface.VideoPos(
         ObjectPath('/not/used'), String(position))
     return list(map(int, position_string.split(" ")))
Пример #4
0
 def set_video_crop(self, x1, y1, x2, y2):
     """
     Args:
         Image position (int, int, int, int):
     """
     crop = "%s %s %s %s" % (str(x1), str(y1), str(x2), str(y2))
     self._get_player_interface().SetVideoCropPos(ObjectPath('/not/used'),
                                                  String(crop))
Пример #5
0
 def set_video_pos(self, x1, y1, x2, y2):
     """
     Args:
         Image position (int, int, int, int):
     """
     position = "%s %s %s %s" % (str(x1), str(y1), str(x2), str(y2))
     self._get_player_interface().VideoPos(ObjectPath('/not/used'),
                                           String(position))
Пример #6
0
 def set_video_crop(self, x1, y1, x2, y2):
     """
     Args:
         x1 (int): Top left x coordinate (px)
         y1 (int): Top left y coordinate (px)
         x2 (int): Bottom right x coordinate (px)
         y2 (int): Bottom right y coordinate (px)
     """
     crop = "%s %s %s %s" % (str(x1), str(y1), str(x2), str(y2))
     self._player_interface.SetVideoCropPos(ObjectPath('/not/used'),
                                            String(crop))
Пример #7
0
    def set_video_pos(self, x1, y1, x2, y2):
        """
        Set the video position on the screen

        Args:
            x1 (int): Top left x coordinate (px)
            y1 (int): Top left y coordinate (px)
            x2 (int): Bottom right x coordinate (px)
            y2 (int): Bottom right y coordinate (px)
        """
        position = "%s %s %s %s" % (str(x1), str(y1), str(x2), str(y2))
        self._player_interface.VideoPos(ObjectPath('/not/used'),
                                        String(position))
 def test_make_introspection_object(self, gpoc):
     """Verify that make_introspection_object makes the right call."""
     gpoc.return_value = self.DefaultSelector
     fake_id = Mock()
     new_fake = backends.make_introspection_object(
         (String('/Object'), {
             'id': [0, 42]
         }),
         None,
         fake_id,
     )
     self.assertThat(new_fake, IsInstance(self.DefaultSelector))
     gpoc.assert_called_once_with(fake_id, b'/Object', {'id': [0, 42]})
Пример #9
0
class GetDetailsFromStateDataTests(TestCase):

    fake_state_data = (String('/some/path'), dict(foo=123))

    def test_returns_classname(self):
        class_name, _, _ = _s._get_details_from_state_data(
            self.fake_state_data)
        self.assertThat(class_name, Equals('path'))

    def test_returns_path(self):
        _, path, _ = _s._get_details_from_state_data(self.fake_state_data)
        self.assertThat(path, Equals(b'/some/path'))

    def test_returned_path_is_bytestring(self):
        _, path, _ = _s._get_details_from_state_data(self.fake_state_data)
        self.assertThat(path, IsInstance(type(b'')))

    def test_returns_state_dict(self):
        _, _, state = _s._get_details_from_state_data(self.fake_state_data)
        self.assertThat(state, Equals(dict(foo=123)))
Пример #10
0
             'LoadUnit': {
                 'foobar.service':
                 '/org/freedesktop/systemd1/unit/foobar_2eservice',
                 'NetworkManager.service':
                 '/org/freedesktop/systemd1/unit/NetworkManager_2eservice',
                 'nginx.service':
                 '/org/freedesktop/systemd1/unit/nginx_2eservice',
             },
         },
     },
 },
 '/org/freedesktop/systemd1/unit/foobar_2eservice': {
     'org.freedesktop.systemd1.Unit': {
         'properties': {
             'org.freedesktop.systemd1.Unit': {
                 'Id': String('foobar.service'),
                 'LoadState': String('not-found'),
             },
         },
     },
 },
 '/org/freedesktop/systemd1/unit/nginx_2eservice': {
     'org.freedesktop.systemd1.Unit': {
         'properties': {
             'org.freedesktop.systemd1.Unit': {
                 'ActiveState': String('inactive'),
                 'Id': String('nginx.service'),
                 'LoadState': String('loaded'),
             },
         },
     },
Пример #11
0
    def run_synchronous_tests(self, obj):
        # We can't test that coercion works correctly unless the server has
        # sent us introspection data. Java doesn't :-/
        have_signatures = True

        # "Single tests"
        if have_signatures:
            self.assert_method_eq(INTERFACE_SINGLE_TESTS, 6, 'Sum', [1, 2, 3])
            self.assert_method_eq(INTERFACE_SINGLE_TESTS, 6, 'Sum',
                                  [b'\x01', b'\x02', b'\x03'])
        self.assert_method_eq(INTERFACE_SINGLE_TESTS, 6, 'Sum',
                              [Byte(1), Byte(2), Byte(3)])
        self.assert_method_eq(INTERFACE_SINGLE_TESTS, 6, 'Sum',
                              ByteArray(b'\x01\x02\x03'))

        # Main tests
        self.assert_method_eq(INTERFACE_TESTS, String('foo', variant_level=1),
                              'Identity', String('foo'))
        if is_py2:
            self.assert_method_eq(INTERFACE_TESTS,
                                  String('foo', variant_level=1), 'Identity',
                                  UTF8String('foo'))
        self.assert_method_eq(INTERFACE_TESTS, Byte(42, variant_level=1),
                              'Identity', Byte(42))
        self.assert_method_eq(INTERFACE_TESTS, Byte(42, variant_level=23),
                              'Identity', Byte(42, variant_level=23))
        self.assert_method_eq(INTERFACE_TESTS, Double(42.5, variant_level=1),
                              'Identity', 42.5)
        self.assert_method_eq(INTERFACE_TESTS, Double(-42.5, variant_level=1),
                              'Identity', -42.5)

        if have_signatures:
            self.assert_method_eq(INTERFACE_TESTS,
                                  String('foo', variant_level=1), 'Identity',
                                  'foo')
            self.assert_method_eq(INTERFACE_TESTS, Byte(42, variant_level=1),
                                  'Identity', Byte(42))
            self.assert_method_eq(INTERFACE_TESTS, Double(42.5,
                                                          variant_level=1),
                                  'Identity', Double(42.5))
            self.assert_method_eq(INTERFACE_TESTS,
                                  Double(-42.5, variant_level=1), 'Identity',
                                  -42.5)

        for i in (0, 42, 255):
            self.assert_method_eq(INTERFACE_TESTS, Byte(i), 'IdentityByte',
                                  Byte(i))
        for i in (True, False):
            self.assert_method_eq(INTERFACE_TESTS, i, 'IdentityBool', i)

        for i in (-0x8000, 0, 42, 0x7fff):
            self.assert_method_eq(INTERFACE_TESTS, i, 'IdentityInt16',
                                  Int16(i))
        for i in (0, 42, 0xffff):
            self.assert_method_eq(INTERFACE_TESTS, i, 'IdentityUInt16',
                                  UInt16(i))
        for i in (-0x7fffffff - 1, 0, 42, 0x7fffffff):
            self.assert_method_eq(INTERFACE_TESTS, i, 'IdentityInt32',
                                  Int32(i))
        for i in (0, 42, 0xffffffff):
            i = make_long(i)
            self.assert_method_eq(INTERFACE_TESTS, i, 'IdentityUInt32',
                                  UInt32(i))
        MANY = 1
        for n in (0x8000, 0x10000, 0x10000, 0x10000):
            MANY *= make_long(n)
        for i in (-MANY, 0, 42, MANY - 1):
            self.assert_method_eq(INTERFACE_TESTS, i, 'IdentityInt64',
                                  Int64(i))
        for i in (0, 42, 2 * MANY - 1):
            self.assert_method_eq(INTERFACE_TESTS, i, 'IdentityUInt64',
                                  UInt64(i))

        self.assert_method_eq(INTERFACE_TESTS, 42.3, 'IdentityDouble', 42.3)
        for i in ('', 'foo'):
            self.assert_method_eq(INTERFACE_TESTS, i, 'IdentityString', i)
        for i in ('\xa9', b'\xc2\xa9'):
            self.assert_method_eq(INTERFACE_TESTS, '\xa9', 'IdentityString', i)

        if have_signatures:
            self.assert_method_eq(INTERFACE_TESTS, Byte(0x42), 'IdentityByte',
                                  b'\x42')
            self.assert_method_eq(INTERFACE_TESTS, True, 'IdentityBool', 42)
            self.assert_method_eq(INTERFACE_TESTS, 42, 'IdentityInt16', 42)
            self.assert_method_eq(INTERFACE_TESTS, 42, 'IdentityUInt16', 42)
            self.assert_method_eq(INTERFACE_TESTS, 42, 'IdentityInt32', 42)
            self.assert_method_eq(INTERFACE_TESTS, 42, 'IdentityUInt32', 42)
            self.assert_method_eq(INTERFACE_TESTS, 42, 'IdentityInt64', 42)
            self.assert_method_eq(INTERFACE_TESTS, 42, 'IdentityUInt64', 42)
            self.assert_method_eq(INTERFACE_TESTS, 42.0, 'IdentityDouble', 42)

        self.assert_method_eq(
            INTERFACE_TESTS, [
                Byte(b'\x01', variant_level=1),
                Byte(b'\x02', variant_level=1),
                Byte(b'\x03', variant_level=1)
            ], 'IdentityArray',
            Array([Byte(b'\x01'), Byte(b'\x02'),
                   Byte(b'\x03')], signature='v'))

        self.assert_method_eq(
            INTERFACE_TESTS, [
                Int32(1, variant_level=1),
                Int32(2, variant_level=1),
                Int32(3, variant_level=1)
            ], 'IdentityArray',
            Array([Int32(1), Int32(2), Int32(3)], signature='v'))
        self.assert_method_eq(
            INTERFACE_TESTS, [
                String('a', variant_level=1),
                String('b', variant_level=1),
                String('c', variant_level=1)
            ], 'IdentityArray',
            Array([String('a'), String('b'),
                   String('c')], signature='v'))

        if have_signatures:
            self.assert_method_eq(INTERFACE_TESTS, [
                Byte(b'\x01', variant_level=1),
                Byte(b'\x02', variant_level=1),
                Byte(b'\x03', variant_level=1)
            ], 'IdentityArray', ByteArray(b'\x01\x02\x03'))
            self.assert_method_eq(
                INTERFACE_TESTS, [
                    Int32(1, variant_level=1),
                    Int32(2, variant_level=1),
                    Int32(3, variant_level=1)
                ], 'IdentityArray',
                [Int32(1), Int32(2), Int32(3)])
            self.assert_method_eq(INTERFACE_TESTS, [
                String('a', variant_level=1),
                String('b', variant_level=1),
                String('c', variant_level=1)
            ], 'IdentityArray', ['a', 'b', 'c'])

        self.assert_method_eq(INTERFACE_TESTS,
                              [Byte(1), Byte(2), Byte(3)], 'IdentityByteArray',
                              ByteArray(b'\x01\x02\x03'))
        if have_signatures:
            self.assert_method_eq(INTERFACE_TESTS, [1, 2, 3],
                                  'IdentityByteArray',
                                  [b'\x01', b'\x02', b'\x03'])
        self.assert_method_eq(INTERFACE_TESTS, [False, True],
                              'IdentityBoolArray', [False, True])
        if have_signatures:
            self.assert_method_eq(INTERFACE_TESTS, [False, True, True],
                                  'IdentityBoolArray', [0, 1, 2])

        self.assert_method_eq(
            INTERFACE_TESTS, [1, 2, 3], 'IdentityInt16Array',
            [Int16(1), Int16(2), Int16(3)])
        self.assert_method_eq(
            INTERFACE_TESTS, [1, 2, 3], 'IdentityUInt16Array',
            [UInt16(1), UInt16(2), UInt16(3)])
        self.assert_method_eq(
            INTERFACE_TESTS, [1, 2, 3], 'IdentityInt32Array',
            [Int32(1), Int32(2), Int32(3)])
        self.assert_method_eq(
            INTERFACE_TESTS, [1, 2, 3], 'IdentityUInt32Array',
            [UInt32(1), UInt32(2), UInt32(3)])
        self.assert_method_eq(
            INTERFACE_TESTS, [1, 2, 3], 'IdentityInt64Array',
            [Int64(1), Int64(2), Int64(3)])
        self.assert_method_eq(
            INTERFACE_TESTS, [1, 2, 3], 'IdentityUInt64Array',
            [UInt64(1), UInt64(2), UInt64(3)])

        if have_signatures:
            self.assert_method_eq(INTERFACE_TESTS, [1, 2, 3],
                                  'IdentityInt16Array', [1, 2, 3])
            self.assert_method_eq(INTERFACE_TESTS, [1, 2, 3],
                                  'IdentityUInt16Array', [1, 2, 3])
            self.assert_method_eq(INTERFACE_TESTS, [1, 2, 3],
                                  'IdentityInt32Array', [1, 2, 3])
            self.assert_method_eq(INTERFACE_TESTS, [1, 2, 3],
                                  'IdentityUInt32Array', [1, 2, 3])
            self.assert_method_eq(INTERFACE_TESTS, [1, 2, 3],
                                  'IdentityInt64Array', [1, 2, 3])
            self.assert_method_eq(INTERFACE_TESTS, [1, 2, 3],
                                  'IdentityUInt64Array', [1, 2, 3])

        self.assert_method_eq(INTERFACE_TESTS, [1.0, 2.5, 3.1],
                              'IdentityDoubleArray', [1.0, 2.5, 3.1])
        if have_signatures:
            self.assert_method_eq(INTERFACE_TESTS, [1.0, 2.5, 3.1],
                                  'IdentityDoubleArray', [1, 2.5, 3.1])
        self.assert_method_eq(INTERFACE_TESTS, ['a', 'b', 'c'],
                              'IdentityStringArray', ['a', 'b', 'c'])
        self.assert_method_eq(
            INTERFACE_TESTS, 6, 'Sum',
            [Int32(1), Int32(2), Int32(3)])
        if have_signatures:
            self.assert_method_eq(INTERFACE_TESTS, 6, 'Sum', [1, 2, 3])

        self.assert_InvertMapping_eq(INTERFACE_TESTS, {
            'fps': ['unreal', 'quake'],
            'rts': ['warcraft']
        }, 'InvertMapping', {
            'unreal': 'fps',
            'quake': 'fps',
            'warcraft': 'rts'
        })

        self.assert_method_eq(INTERFACE_TESTS, ('a', 1, 2), 'DeStruct',
                              ('a', UInt32(1), Int16(2)))
        self.assert_method_eq(INTERFACE_TESTS,
                              Array([String('x', variant_level=1)]),
                              'Primitize', [String('x', variant_level=1)])
        self.assert_method_eq(INTERFACE_TESTS,
                              Array([String('x', variant_level=1)]),
                              'Primitize', [String('x', variant_level=23)])
        self.assert_method_eq(
            INTERFACE_TESTS,
            Array([
                String('x', variant_level=1),
                Byte(1, variant_level=1),
                Byte(2, variant_level=1)
            ]), 'Primitize',
            Array([String('x'), Byte(1), Byte(2)], signature='v'))
        self.assert_method_eq(
            INTERFACE_TESTS,
            Array([
                String('x', variant_level=1),
                Byte(1, variant_level=1),
                Byte(2, variant_level=1)
            ]), 'Primitize',
            Array([String('x'), Array([Byte(1), Byte(2)])], signature='v'))
        self.assert_method_eq(INTERFACE_TESTS, Boolean(False), 'Invert', True)
        self.assert_method_eq(INTERFACE_TESTS, Boolean(True), 'Invert', False)
        if have_signatures:
            self.assert_method_eq(INTERFACE_TESTS, Boolean(False), 'Invert',
                                  42)
            self.assert_method_eq(INTERFACE_TESTS, Boolean(True), 'Invert', 0)
Пример #12
0
                Byte('\x02', variant_level=1),
                Byte('\x03', variant_level=1)
            ], 'IdentityArray',
            Array([Byte('\x01'), Byte('\x02'),
                   Byte('\x03')], signature='v'))

        self.assert_method_eq(
            INTERFACE_TESTS, [
                Int32(1, variant_level=1),
                Int32(2, variant_level=1),
                Int32(3, variant_level=1)
            ], 'IdentityArray',
            Array([Int32(1), Int32(2), Int32(3)], signature='v'))
        self.assert_method_eq(
            INTERFACE_TESTS, [
                String(u'a', variant_level=1),
                String(u'b', variant_level=1),
                String(u'c', variant_level=1)
            ], 'IdentityArray',
            Array([String('a'), String('b'),
                   String('c')], signature='v'))

        if have_signatures:
            self.assert_method_eq(INTERFACE_TESTS, [
                Byte('\x01', variant_level=1),
                Byte('\x02', variant_level=1),
                Byte('\x03', variant_level=1)
            ], 'IdentityArray', ByteArray('\x01\x02\x03'))
            self.assert_method_eq(
                INTERFACE_TESTS, [
                    Int32(1, variant_level=1),
Пример #13
0
	def SetValue(self, value):
		# mmm, always use a string for now
		variant = String(str(value), variant_level=1)
		self.object.SetValue(variant)