Michael Albinus
17fb8a45f7
; * test/lisp/net/dbus-tests.el: Remove obsolete function declarations.
2026-02-11 14:17:30 +01:00
Mattias Engdegård
37891d1a1e
; * test/lisp/net/dbus-tests.el: no warnings for non-dbus configs
2026-02-11 11:06:54 +01:00
Michael Albinus
89209a83b6
Support D-Bus file descriptor manipulation
...
* doc/misc/dbus.texi (Synchronous Methods): Adapt `dbus-call-method'.
(Asynchronous Methods): Adapt `dbus-call-method-asynchronously'.
(File Descriptors): New chapter, replaces Inhibitor Locks.
* etc/NEWS: Replace "New D-Bus functions to support systemd
inhibitor locks" by "Support D-Bus file descriptor manipulation".
Presentational fixes and improvements.
* lisp/net/dbus.el (dbus-call-method)
(dbus-call-method-asynchronously): Adapt docstring.
(dbus-list-hash-table): Return (nreverse result).
(dbus-monitor-goto-serial): Declare `completion'.
* src/dbusbind.c (Fdbus_message_internal, xd_read_message_1):
Handle `:keep-fd'.
(xd_registered_inhibitor_locks, Fdbus_make_inhibitor_lock)
(Fdbus_close_inhibitor_lock, Fdbus_registered_inhibitor_locks): Delete.
(xd_registered_fds): New variable.
(Fdbus__fd_open, Fdbus__fd_close, Fdbus__registered_fds):
New DEFUNs. (Bug#79963)
(syms_of_dbusbind_for_pdumper): Initialize `xd_registered_fds'.
(syms_of_dbusbind): Remove subroutines
`Sdbus_make_inhibitor_lock', `Sdbus_close_inhibitor_lock' and
`Sdbus_registered_inhibitor_locks'. Remove symbol `Qdbus_call_method'.
Declare subroutines `Sdbus__fd_open', `Sdbus__fd_close' and
`Sdbus__registered_fds'. Declare symbol `QCkeep_fd'. staticpro
`xd_registered_fds'.
* test/lisp/net/dbus-tests.el (dbus-test10-inhibitor-locks): Delete.
(dbus-test10-keep-fd, dbus-test10-open-close-fd): New tests.
2026-02-07 11:32:54 +01:00
Michael Albinus
2696eff451
; * test/lisp/net/dbus-tests.el: Fix typos.
2026-01-22 09:58:37 +01:00
Mattias Engdegård
fe2469c1c1
; * test/lisp/net/dbus-tests.el: hush warnings on no-dbus platforms
2026-01-21 16:22:05 +01:00
Michael Albinus
ab77b4b60c
New D-Bus functions to support systemd inhibitor locks
...
* doc/misc/dbus.texi (Top): Add "Inhibitor Locks" submenu.
Remove trailing period from chapter and section titles.
(Inhibitor Locks): New node.
* etc/NEWS: New D-Bus functions to support systemd inhibitor locks.
Presentational fixes and improvements.
* src/dbusbind.c (xd_registered_inhibitor_locks): New variable.
(Fdbus_make_inhibitor_lock, Fdbus_close_inhibitor_lock)
(Fdbus_registered_inhibitor_locks): New DEFUNs. (Bug#79963)
(syms_of_dbusbind_for_pdumper): Initialize
`xd_registered_inhibitor_locks'.
(syms_of_dbusbind): Declare subroutines
`Sdbus_make_inhibitor_lock', `Sdbus_close_inhibitor_lock' and
`Sdbus_registered_inhibitor_locks'. Declare symbol `Qdbus_call_method'.
staticpro `xd_registered_inhibitor_locks'.
* test/lisp/net/dbus-tests.el (dbus--test-systemd-service)
(dbus--test-systemd-path, dbus--test-systemd-manager-interface):
New defconsts.
(dbus-test10-inhibitor-locks): New test.
2026-01-17 11:40:31 +01:00
Michael Albinus
5a1ced4b24
Call all registered D-Bus signal handlers
...
* doc/misc/dbus.texi (Signals): All registered signal handlers are
called.
(Synchronous Methods, Signals, Monitoring Messages): Add function
result in examples.
* src/dbusbind.c (xd_store_event): New function.
(xd_read_message_1): Use it. Call all registered handlers per
signal. (Bug#80168)
* test/lisp/net/dbus-tests.el (dbus--test-signal-handler): Adapt defun.
(dbus--test-signal-handler1, dbus--test-signal-handler2): New defuns.
(dbus-test05-register-signal-several-handlers): New test.
(dbus-test04-register-method)
(dbus-test04-call-method-authorizable)
(dbus-test05-register-signal)
(dbus-test05-register-signal-with-nils)
(dbus-test06-register-property-emits-signal): Adapt tests.
2026-01-14 10:41:41 +01:00
Sean Whitton
c31f6adc31
; Add 2026 to copyright years.
2026-01-01 12:54:34 +00:00
Michael Albinus
1df9cfdb13
Don't call dbus-launch in dbus-tests.el
...
* test/lisp/net/dbus-tests.el (dbus-test02-register-service-own-bus):
Adapt test. Don't use dbus-launch, call dbus-daemon directly.
See <1117059@bugs.debian.org>.
See <https://lists.debian.org/debian-devel/2016/08/msg00554.html >.
* test/lisp/net/dbus-resources/session.conf.in: New file. It is
copied from <https://salsa.debian.org/debian/flatpak/-/blob/debian/
trixie/tests/session.conf.in>.
2025-10-06 18:10:06 +02:00
Paul Eggert
4da38c6321
Update copyright year to 2025
...
Run "TZ=UTC0 admin/update-copyright".
2025-01-01 07:39:17 +00:00
Mattias Engdegård
f591f47779
; * test/lisp/net/dbus-tests.el: silence compilation warnings
2024-07-19 19:36:38 +02:00
Michael Albinus
29aeed7218
; * test/lisp/net/dbus-tests.el: Fix thinko.
2024-07-10 18:28:43 +02:00
Michael Albinus
a29a385ee5
Extend dbus-test04-call-method-authorizable
...
* test/lisp/net/dbus-tests.el
(dbus--test-method-authorizable-handler): New defun.
(dbus-test04-call-method-authorizable): Extend test.
2024-07-10 09:50:09 +02:00
Michael Albinus
813ca8c214
Adapt dbus-tests.el
...
* test/lisp/net/dbus-tests.el
(dbus-test04-call-method-authorizable): New test.
(dbus--test-signal-handler): Remove debug message.
2024-07-09 14:01:07 +02:00
Michael Albinus
24cad0e2e7
Make D-Bus tests stable
...
* test/lisp/net/dbus-tests.el (dbus-debug): Declare, not define.
(dbus--test-event-expected): New defvar.
(dbus--test-signal-handler): Check for `dbus--test-event-expected'.
(dbus-test05-register-signal-with-nils)
(dbus-test08-register-monitor): Adapt tests.
2024-07-09 12:11:13 +02:00
Andrea Corallo
fc375359ed
Tag dbus-test05-register-signal-with-nils as unstable
...
* test/lisp/net/dbus-tests.el (dbus-test05-register-signal-with-nils):
Tag it as unstable.
2024-07-03 20:13:13 +02:00
Robert Church
4e22ef870c
Add D-Bus test
...
* test/lisp/net/dbus-tests.el (dbus-test05-register-signal-with-nils):
New test. (Bug#69926)
2024-06-30 12:16:20 +02:00
Michael Albinus
a69890eea9
Improve D-Bus byte-array conversion
...
* doc/misc/dbus.texi (Type Conversion): Adapt dbus-byte-array-to-string.
* etc/NEWS: D-Bus byte array conversion works over raw UTF-8 bytes.
Fix typos.
* lisp/net/dbus.el (dbus-string-to-byte-array)
(dbus-byte-array-to-string): BYTE-ARRAY must be an UTF-8 raw bytes
sequence. Make optional argument MULTIBYTE obsolete. (Bug#70301)
(dbus-call-method-handler, dbus-register-signal)
(dbus-escape-as-identifier): Use `length=' and `length>'.
* test/lisp/net/dbus-tests.el (dbus--test-method-handler)
(dbus-test09-get-managed-objects): Use `length='.
(dbus-test01-type-conversion): Extend test.
* test/lisp/net/secrets-tests.el (secrets-test03-items): Extend test.
2024-04-12 10:09:45 +02:00
Po Lu
8e1c56ae46
; Add 2024 to copyright years
2024-01-02 09:47:10 +08:00
Michael Albinus
0676a02931
Extend D-Bus doc and test
...
* doc/misc/dbus.texi (Register Objects): Adapt doc of
dbus-unregister-service.
* test/lisp/net/dbus-tests.el (dbus--test-register-service):
Extend test.
2023-11-24 16:34:26 +01:00
Eli Zaretskii
cae528457c
; Add 2023 to copyright years.
2023-01-01 05:31:12 -05:00
Stefan Kangas
16318bfb51
; Fix typos
2022-11-20 12:59:39 +01:00
Stefan Kangas
f7ee6609ae
; Fix typos (prefer US spelling)
2022-11-18 13:06:55 +01:00
Eli Zaretskii
19dcb237b5
; Add 2022 to copyright years.
2022-01-01 02:45:51 -05:00
Michael Albinus
5e9b4e70ab
Fix dbus-test04-register-method on CentOS (Bug#51369)
...
* test/lisp/net/dbus-tests.el (dbus-test04-register-method):
Fix problem on CentOS. (Bug#51369)
2021-11-06 17:25:19 +01:00
Michael Albinus
84cd95e04c
Fix bug#51369
...
* test/lisp/net/dbus-tests.el (dbus-test04-register-method): Skip on hydra.
2021-11-01 13:22:28 +01:00
Michael Albinus
d5b1deb62e
Add command 'dbus-monitor'
...
* doc/misc/dbus.texi: (Monitoring Messages): Document 'dbus-monitor'.
* etc/NEWS: Mention 'dbus-monitor' but 'dbus-register-monitor'.
Fix typos and other oddities.
* lisp/net/dbus.el (dbus-monitor): New command.
* test/lisp/net/dbus-tests.el (dbus--test-register-service): Extend test.
2021-02-05 14:32:41 +01:00
Paul Eggert
ba05d005e5
Update copyright year to 2021
...
Run "TZ=UTC0 admin/update-copyright".
2021-01-01 01:13:56 -08:00
Hugh Daschbach
4f6b7a0149
* test/lisp/net/dbus-tests.el (dbus-test09-get-managed-objects): Expand test.
2020-10-30 08:59:11 +01:00
Michael Albinus
372739b406
Handle several children of PATH in dbus-managed-objects-handler
...
* lisp/net/dbus.el (dbus-managed-objects-handler): Handle several
children of PATH. (Bug#44298)
* src/dbusbind.c (xd_signature, xd_append_arg): Check object path.
* test/lisp/net/dbus-tests.el (dbus-test09-get-managed-objects):
Tag it :expensive-test. Remove superfluous check.
2020-10-29 16:56:40 +01:00
Hugh Daschbach
1fb85fb138
* test/lisp/net/dbus-tests.el (dbus-test09-get-managed-objects): New test.
2020-10-29 12:16:45 +01:00
Stefan Kangas
1f44a77672
Use new resource directory macros in tests (Bug#43792)
...
* test/lisp/bookmark-tests.el (bookmark-tests-data-dir):
* test/lisp/calendar/todo-mode-tests.el (todo-test-data-dir):
* test/lisp/net/dbus-tests.el (dbus--tests-dir):
* test/lisp/emacs-lisp/edebug-tests.el
(edebug-tests-sample-code-file):
* test/lisp/emacs-lisp/package-tests.el
(package-test-fake-contents-file):
* test/lisp/emacs-lisp/shadow-tests.el (shadow-tests-data-directory):
* test/lisp/emacs-lisp/testcover-tests.el
(testcover-tests-file-dir, testcover-tests-test-cases):
* test/lisp/mail/uudecode-tests.el (uudecode-tests-data-dir):
* test/lisp/net/tramp-archive-tests.el
(tramp-archive-test-resource-directory):
* test/lisp/pcmpl-linux-tests.el (pcmpl-linux-tests-data-dir):
* test/lisp/progmodes/cperl-mode-tests.el
(cperl-mode-tests-data-directory):
* test/lisp/progmodes/flymake-tests.el
(flymake-tests-data-directory):
* test/lisp/progmodes/ruby-mode-tests.el (ruby-mode-tests-data-dir):
* test/lisp/saveplace-tests.el (saveplace-tests-dir):
* test/lisp/textmodes/css-mode-tests.el (css-mode-tests-data-dir):
Remove.
* test/lisp/bookmark-tests.el (bookmark-tests-bookmark-file)
(bookmark-tests-example-file, bookmark-tests-bookmark-file-list):
* test/lisp/calendar/todo-mode-tests.el (todo-test-file-1)
(todo-test-archive-1, with-todo-test, todo-test--add-file):
* test/lisp/custom-tests.el (custom--test-theme-variables):
* test/lisp/net/dbus-tests.el (dbus--test-introspect):
* test/lisp/emacs-lisp/edebug-tests.el (edebug-tests-setup-code-file):
* test/lisp/emacs-lisp/package-tests.el (package-test-data-dir)
(package-test-desc-from-buffer, package-test-install-single)
(package-test-macro-compilation)
(package-test-install-prioritized)
(package-test-install-multifile, package-test-update-archives)
(package-test-update-archives-async)
(package-test-update-archives/ignore-nil-entry)
(package-test-signed, package-x-test-upload-buffer)
(package-x-test-upload-new-version):
* test/lisp/emacs-lisp/shadow-tests.el (shadow-case-insensitive):
* test/lisp/emacs-lisp/testcover-tests.el
(testcover-tests-build-test-cases):
* test/lisp/mail/uudecode-tests.el (uudecode-tests-encoded-str)
(uudecode-tests-decoded-str):
* test/lisp/net/tramp-archive-tests.el
(tramp-archive-test-file-archive)
(tramp-archive-test-directory):
* test/lisp/pcmpl-linux-tests.el (pcmpl-linux-test-fs-types)
(pcmpl-linux-test-mounted-directories):
* test/lisp/progmodes/cperl-mode-tests.el (cperl-mode-test-bug-10483)
(cperl-mode-test-indent-styles):
* test/lisp/progmodes/flymake-tests.el
(flymake-tests--call-with-fixture):
* test/lisp/progmodes/ruby-mode-tests.el
(ruby--indent/converted-from-manual-test):
* test/lisp/saveplace-tests.el
(saveplace-test-save-place-to-alist/dir)
(saveplace-test-load-alist-from-file):
* test/lisp/textmodes/css-mode-tests.el (css-mode-test-indent): Adjust
to use new resource directory macros.
2020-10-16 11:28:09 +02:00
Michael Albinus
3ec6dcfab8
; Fix dbus-tests.el formatting
2020-10-12 11:41:54 +02:00
Hugh Daschbach
2f92177f80
Add interface arg to D-Bus PropertiesChanged signal.
...
* lisp/net/dbus.el (dbus-register-property, dbus-property-handler):
Fix signal generation. (Bug#43936)
* test/lisp/net/dbus-tests.el (dbus-test06-register-property-emits-signal):
Fix test.
2020-10-12 11:37:27 +02:00
Michael Albinus
0a5a1adab9
* src/dbusbind.c (xd_signature): Better type check for array elements.
...
* test/lisp/net/dbus-tests.el (dbus-test01-compound-types): Extend test.
2020-10-05 13:58:28 +02:00
Michael Albinus
96a8e84606
Make dbus-unregister-object work for monitors
...
* doc/misc/dbus.texi (Monitoring Messages): Rename from
"Monitoring Events".
(Register Objects, Monitoring Messages):
Mention returned object.
* lisp/net/dbus.el (dbus-unregister-object): Adapt docstring.
(dbus-unregister-object): Delete monitor if needed.
(dbus-register-monitor): Return proper object.
* src/dbusbind.c (dbus-registered-objects-table): Adapt docstring.
* test/lisp/net/dbus-tests.el (dbus--test-signal-handler):
Adapt docstring.
(dbus-test08-register-monitor): New test.
2020-10-04 18:56:45 +02:00
Stefan Kangas
d6a2754348
; Fix more typos
2020-10-03 12:53:51 +02:00
Michael Albinus
b7224f9629
Stricter checks for D-Bus compound types.
...
* src/dbusbind.c (XD_DBUS_TYPE_P, Fdbus__init_bus)
(xd_read_queued_messages): Use Fkeywordp instead of SYMBOLP.
(xd_signature): Stricter checks for compound types.
* test/lisp/net/dbus-tests.el (dbus-test01-compound-types): Extend test.
2020-09-30 15:28:53 +02:00
Michael Albinus
17ecfa8698
Minor code cleanup in dbus-tests.el
...
* test/lisp/net/dbus-tests.el (dbus--tests-dir): Make it a defconst.
(dbus--test-method-reentry-handler): Mark args as unused.
(dbus-test04-method-reentry): Tag it :expensive-test. Fix typo.
(dbus-test06-property-types): Remove duplicate test.
(dbus--test-introspect): Use `insert-file-contents-literally'.
(dbus--test-validate-property): Mark expected-annotations as unused.
(dbus--test-validate-m-or-s): Remove superfluous le-clause.
2020-09-30 12:40:08 +02:00
Hugh Daschbach
d5f9a07862
Add D-Bus method-call reentrant test
...
* test/lisp/net/dbus-tests.el (dbus--tests-method-reentry-handler):
New defun.
(dbus-test04-method-reentry): New test. (Bug#43251)
2020-09-30 11:27:22 +02:00
Hugh Daschbach
2018090987
* test/lisp/net/dbus-tests.el: Add timeout tests.
...
(dbus-test04-call-method-timeout, dbus-test07-introspection-timeout):
New tests.
2020-09-30 11:23:24 +02:00
Hugh Daschbach
0bc19c17fd
Add D-Bus introspection tests
...
* lisp/net/dbus.el (dbus-annotation-deprecated): New defconst.
* test/lisp/net/dbus-tests.el (dbus--tests-dir): New defvar.
(dbus--test-introspect, dbus--test-validate-interface)
(dbus--test-validate-annotations, dbus--test-validate-property)
(dbus--test-validate-m-or-s, dbus--test-validate-signal)
(dbus--test-validate-method): New defuns.
(dbus-test07-introspection): New test.
* test/lisp/net/dbus-resources/org.gnu.Emacs.TestDBus.xml:
New test data.
2020-09-30 11:19:41 +02:00
Hugh Daschbach
7e581607e7
* test/lisp/net/dbus-tests.el: Add property tests. (Bug#43252)
...
(dbus--test-run-property-test, dbus--test-property): New defuns.
(dbus-test06-property-types): New test for property registration,
set, get.
2020-09-30 11:09:17 +02:00
Michael Albinus
7e45ed3a96
More strict D-Bus type checking
...
* lisp/net/dbus.el (dbus-register-monitor): Register proper key.
(dbus-monitor-handler): Adapt docstring. Use grave text-quoting-style.
* src/dbusbind.c (xd_signature, xd_append_arg): More strict tests.
(syms_of_dbusbind): Adapt docstring.
* test/lisp/net/dbus-tests.el (dbus-test01-basic-types): Extend test.
2020-09-29 19:43:02 +02:00
Michael Albinus
4155ca273a
Document D-Bus monitoring
...
* doc/misc/dbus.texi: Replace "symbol" by "keyword" where appropriate.
(Alternative Buses): Adapt dbus-init-bus description.
(Errors and Events): Adapt dbus-event structure. New defuns
dbus-event-destination-name, dbus-event-handler and dbus-event-arguments.
(Monitoring Events): New node.
* lisp/net/dbus.el: Replace "symbol" by "keyword" where appropriate.
(cl-lib): Require.
(dbus-register-monitor): Adapt the argument list.
(dbus-monitor-handler): Extend.
(dbus-init-bus): Adapt docstring.
* test/lisp/net/dbus-tests.el (dbus-test01-compound-types):
Skip if needed. Extend test.
2020-09-27 18:59:04 +02:00
Glenn Morris
9bf9f699b1
Add skip condition for some dbus tests
...
* test/lisp/net/dbus-tests.el (dbus-test01-type-conversion)
(dbus-test01-basic-types): Add skip for hydra.nixos.org failures.
; Standardize license notice
2020-09-24 11:47:11 -07:00
Michael Albinus
441e875019
* test/lisp/net/dbus-tests.el (dbus-test01-basic-types): Adapt test.
2020-09-23 19:57:03 +02:00
Stefan Kangas
ebad35e4d9
; Fix more trivial typos
2020-09-21 15:51:07 +02:00
Michael Albinus
63f9d9af81
Add D-Bus tests
...
* doc/misc/dbus.texi (Type Conversion): Precise basic type values.
* lisp/net/dbus.el (dbus-register-property): Send signal directly.
* src/dbusbind.c (xd_signature): Accept non-nil objects for
DBUS_TYPE_BOOLEAN.
* test/lisp/net/dbus-tests.el (dbus-test01-basic-types)
(dbus-test01-compound-types): New tests.
2020-09-21 13:41:30 +02:00
Michael Albinus
f8624fb834
Make D-Bus properties type safe
...
* doc/misc/dbus.texi (Properties and Annotations):
Precise dbus-get-property and dbus-set-property.
(Type Conversion): Explain :byte and :boolean type conversion.
(Errors and Events): dbus-ignore-errors returns nil when there is
a D-Bus error. Remove dbus-show-dbus-errors.
* etc/NEWS: Some D-Bus relevant changes.
* lisp/net/dbus.el (dbus-show-dbus-errors): Remove.
(dbus-ignore-errors): Replay implamentation without that variable.
(dbus-check-arguments): New defun.
(dbus-list-activatable-names, dbus-list-names)
(dbus-list-queued-owners, dbus-get-name-owner, dbus-introspect)
(dbus-get-all-properties, dbus-get-all-managed-objects): Don't debug.
(dbus-get-property, dbus-set-property): Propagate errors.
(dbus-register-property): Check for valid VALUE.
(dbus-property-handler): Simplify.
* src/dbusbind.c (Fdbus_message_internal): Adapt docstring.
Handle DBUS_MESSAGE_TYPE_INVALID.
* test/lisp/net/dbus-tests.el (dbus-show-dbus-errors): Don't declare.
(dbus-test06-register-property)
(dbus-test06-register-property-emits-signal): Adapt tests.
2020-09-20 16:44:17 +02:00