diff options
author | Jeroen Hofstee <jhofstee@victronenergy.com> | 2023-04-13 11:16:31 +0200 |
---|---|---|
committer | Simon McVittie <smcv@collabora.com> | 2023-08-16 13:09:23 +0100 |
commit | d159c6115f53b83b934e5537ba94268ce4bffa49 (patch) | |
tree | 6af106bb7a09476702c041b2b3be237e431cd4dc | |
parent | e23e06c08e5c3c691cdde616b9f539cba16c60b8 (diff) |
test: Add basic coverage for arg0namespace
Signed-off-by: Jeroen Hofstee <jhofstee@victronenergy.com>
-rwxr-xr-x | test/test-standalone.py | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/test/test-standalone.py b/test/test-standalone.py index c091228..7cca6a0 100755 --- a/test/test-standalone.py +++ b/test/test-standalone.py @@ -581,6 +581,42 @@ class TestMatching(unittest.TestCase): self._message.append('/', signature='o') self.assertFalse(self._match.maybe_handle_message(self._message)) +class TestArg0Namespace(unittest.TestCase): + def setUp(self): + self._match = dbus.connection.SignalMatch(object, None, '/', None, None, + None, arg0namespace='org.freedesktop.dbus-python') + + def test_invalid_arg1namespace(self): + try: + dbus.connection.SignalMatch(object, None, '/', None, None, + None, arg1namespace='org.freedesktop.dbus-python') + except TypeError: + pass + else: + raise AssertionError('arg1namespace is not a valid keyword argument') + + def test_namespace_match(self): + message = _dbus_bindings.SignalMessage('/', 'a.b', 'c') + message.append('org.freedesktop.dbus-python', signature='s') + self.assertTrue(self._match.maybe_handle_message(message)) + + def test_namespace_match2(self): + message = _dbus_bindings.SignalMessage('/', 'a.b', 'c') + message.append('org.freedesktop.dbus-python.test', signature='s') + self.assertTrue(self._match.maybe_handle_message(message)) + + def test_namespace_mismatch(self): + message = _dbus_bindings.SignalMessage('/', 'a.b', 'c') + message.append('org.freedesktop.dbus-python-test', signature='s') + self.assertFalse(self._match.maybe_handle_message(message)) + + def test_namespace_type_mismatch(self): + match = dbus.connection.SignalMatch(object, None, '/', None, None, + None, arg0namespace='1') + message = _dbus_bindings.SignalMessage('/', 'a.b', 'c') + message.append(1, signature='i') + self.assertFalse(match.maybe_handle_message(message)) + class TestVersion(unittest.TestCase): if sys.version_info[:2] < (2, 7): def assertGreater(self, first, second): |