]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
tests: Extend "DBus errors" tests to increase coverage
authorRico Tzschichholz <ricotz@ubuntu.com>
Sat, 5 Jan 2019 21:01:06 +0000 (22:01 +0100)
committerRico Tzschichholz <ricotz@ubuntu.com>
Thu, 10 Jan 2019 20:56:03 +0000 (21:56 +0100)
tests/dbus/errors.test

index 9088fb4fddce00c5ea163ac16129e76992a7c6da..ded8f959b0c9cde3a85f33a7c3a53f2e41441017 100644 (file)
@@ -3,12 +3,20 @@ D-Bus
 
 Program: client
 
+[DBus (name = "org.example.TestError")]
+errordomain TestError {
+       NOT_SO_GOOD,
+       BAD,
+       WORSE
+}
+
 [DBus (name = "org.example.Test")]
 interface Test : Object {
        public abstract void test_void () throws Error;
        public abstract int test_int (int i, out int j) throws Error;
        public abstract string test_string (string s, out string t) throws Error;
        public abstract void test_cancellable (Cancellable? cancellable = null) throws Error;
+       public abstract void test_custom_error () throws TestError;
 }
 
 void main () {
@@ -44,10 +52,27 @@ void main () {
                assert_not_reached ();
        } catch {
        }
+
+       try {
+               test.test_custom_error ();
+               assert_not_reached ();
+       } catch (TestError e) {
+               assert (e is TestError.BAD);
+               assert (e.message == "GDBus.Error:org.example.TestError.Bad: Something failed badly");
+       } catch {
+               assert_not_reached ();
+       }
 }
 
 Program: server
 
+[DBus (name = "org.example.TestError")]
+errordomain TestError {
+       NOT_SO_GOOD,
+       BAD,
+       WORSE
+}
+
 [DBus (name = "org.example.Test")]
 class Test : Object {
        public void test_void () throws Error {
@@ -64,6 +89,10 @@ class Test : Object {
 
        public void test_cancellable (Cancellable? cancellable = null) throws Error {
        }
+
+       public void test_custom_error () throws TestError {
+               throw new TestError.BAD ("Something failed badly");
+       }
 }
 
 MainLoop main_loop;