diff --git a/test/lisp/net/dbus-tests.el b/test/lisp/net/dbus-tests.el index 8b456c3551f..8b79f5ac201 100644 --- a/test/lisp/net/dbus-tests.el +++ b/test/lisp/net/dbus-tests.el @@ -520,6 +520,31 @@ dbus-test05-register-property-several-paths ;; Cleanup. (dbus-unregister-service :session dbus--test-service))) +(ert-deftest dbus-test06-register-property-types () + "Check property type preservation for an own service." + (skip-unless dbus--test-enabled-session-bus) + (dbus-ignore-errors (dbus-unregister-service :session dbus--test-service)) + + (unwind-protect + (let ((byte-array "ByteArray")) + (should + (equal + (dbus-register-property + :session dbus--test-service dbus--test-path + dbus--test-interface byte-array :read byte-array '(:array :byte 1 :byte 2 : byte 3)) + `((:property :session dbus--test-path ,byte-array) + (,dbus--test-service ,dbus--test-path)))) + (should + (string-equal + (dbus-get-property + :session dbus--test-service dbus--test-path + dbus--test-interface byte-array) + '(1 2 3)))) + + ;; Cleanup. + (dbus-unregister-service :session dbus--test-service))) + + (defun dbus-test-all (&optional interactive) "Run all tests for \\[dbus]." (interactive "p")