emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r117478: * automated/dbus-tests.el (dbus-test02-regi


From: Michael Albinus
Subject: [Emacs-diffs] trunk r117478: * automated/dbus-tests.el (dbus-test02-register-service-session)
Date: Fri, 04 Jul 2014 10:07:52 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 117478
revision-id: address@hidden
parent: address@hidden
committer: Michael Albinus <address@hidden>
branch nick: trunk
timestamp: Fri 2014-07-04 12:07:45 +0200
message:
  * automated/dbus-tests.el (dbus-test02-register-service-session)
  (dbus-test02-register-service-system): Fix docstring.
  (dbus-test02-register-service-own-bus)
  (dbus-test03-peer-interface): New tests.
modified:
  test/ChangeLog                 changelog-20091113204419-o5vbwnq5f7feedwu-8588
  test/automated/dbus-tests.el   dbustests.el-20131205152340-sqj03az681hmq6pu-1
=== modified file 'test/ChangeLog'
--- a/test/ChangeLog    2014-07-03 06:00:53 +0000
+++ b/test/ChangeLog    2014-07-04 10:07:45 +0000
@@ -1,3 +1,10 @@
+2014-07-04  Michael Albinus  <address@hidden>
+
+       * automated/dbus-tests.el (dbus-test02-register-service-session)
+       (dbus-test02-register-service-system): Fix docstring.
+       (dbus-test02-register-service-own-bus)
+       (dbus-test03-peer-interface): New tests.
+
 2014-07-03  Fabián Ezequiel Gallina  <address@hidden>
 
        * automated/python-tests.el (python-tests-self-insert): New function.

=== modified file 'test/automated/dbus-tests.el'
--- a/test/automated/dbus-tests.el      2014-06-27 18:20:21 +0000
+++ b/test/automated/dbus-tests.el      2014-07-04 10:07:45 +0000
@@ -103,7 +103,7 @@
   (should-error (dbus-unregister-service bus dbus-service-dbus)))
 
 (ert-deftest dbus-test02-register-service-session ()
-  "Check service registration at `:session'."
+  "Check service registration at `:session' bus."
   (skip-unless (and dbus--test-enabled-session-bus
                    (dbus-register-service :session dbus-service-emacs)))
   (dbus--test-register-service :session)
@@ -121,11 +121,57 @@
       (should (eq (dbus-unregister-service :session service) :not-owner)))))
 
 (ert-deftest dbus-test02-register-service-system ()
-  "Check service registration at `:system'."
+  "Check service registration at `:system' bus."
   (skip-unless (and dbus--test-enabled-system-bus
                    (dbus-register-service :system dbus-service-emacs)))
   (dbus--test-register-service :system))
 
+(ert-deftest dbus-test02-register-service-own-bus ()
+  "Check service registration with an own bus.
+This includes initialization and closing the bus."
+  ;; Start bus.
+  (let ((output
+        (ignore-errors
+          (shell-command-to-string "dbus-launch --sh-syntax")))
+       bus pid)
+    (skip-unless (stringp output))
+    (when (string-match "DBUS_SESSION_BUS_ADDRESS='\\(.+\\)';" output)
+      (setq bus (match-string 1 output)))
+    (when (string-match "DBUS_SESSION_BUS_PID=\\([[:digit:]]+\\);" output)
+      (setq pid (match-string 1 output)))
+    (unwind-protect
+       (progn
+         (skip-unless
+          (dbus-ignore-errors
+            (and bus pid
+                 (featurep 'dbusbind)
+                 (dbus-init-bus bus)
+                 (dbus-get-unique-name bus)
+                 (dbus-register-service bus dbus-service-emacs))))
+         ;; Run the test.
+         (dbus--test-register-service bus))
+
+      ;; Save exit.
+      (when pid (call-process "kill" nil nil nil pid)))))
+
+(ert-deftest dbus-test03-peer-interface ()
+  "Check `dbus-interface-peer' methods."
+  (skip-unless
+   (and dbus--test-enabled-session-bus
+       (dbus-register-service :session dbus-service-emacs)
+       ;; "GetMachineId" is not implemented (yet).  When it returns a
+       ;; value, another D-Bus client like dbus-monitor is reacting
+       ;; on `dbus-interface-peer'.  We cannot test then.
+       (not
+        (dbus-ignore-errors
+          (dbus-call-method
+           :session dbus-service-emacs dbus-path-dbus
+           dbus-interface-peer "GetMachineId" :timeout 100)))))
+
+  (should (dbus-ping :session dbus-service-emacs 100))
+  (dbus-unregister-service :session dbus-service-emacs)
+  (should-not (dbus-ping :session dbus-service-emacs 100)))
+
 (defun dbus-test-all (&optional interactive)
   "Run all tests for \\[dbus]."
   (interactive "p")


reply via email to

[Prev in Thread] Current Thread [Next in Thread]