xref: /openbmc/boost-dbus/test/message.cpp (revision 8f81b71d)
1 // Copyright (c) Benjamin Kietzman (github.com/bkietz)
2 //
3 // Distributed under the Boost Software License, Version 1.0. (See accompanying
4 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5 
6 #include <gtest/gtest.h>
7 #include <dbus/message.hpp>
8 #include <dbus/error.hpp>
9 
10 
11 class MessageTest
12   : public testing::Test
13 {
14 };
15 
16 
17 TEST_F(MessageTest, CallMessage)
18 {
19   using namespace dbus;
20 
21   const message m = message::new_call(
22     endpoint(
23       "org.freedesktop.Avahi",
24       "/",
25       "org.freedesktop.Avahi.Server"),
26     "GetHostName");
27 
28   ASSERT_EQ("org.freedesktop.Avahi", m.get_destination());
29   ASSERT_EQ("/", m.get_path());
30   ASSERT_EQ("org.freedesktop.Avahi.Server", m.get_interface());
31   ASSERT_EQ("GetHostName", m.get_member());
32 
33   message m2 = message::new_call(
34     endpoint(
35       "org.freedesktop.Avahi",
36       "/",
37       "org.freedesktop.Avahi.Server"),
38     "GetHostName");
39 
40   m2 << 1;
41   int i;
42   m2 >> i;
43   ASSERT_EQ(i, 1);
44 
45   // m.get_sender();
46 }
47 
48 
49 // I actually don't know what to do with these yet.
50 /*
51 TEST_F(MessageTest, ErrorMessage)
52 {
53   using namespace dbus;
54 
55   message m = message::new_call(
56     endpoint(
57       "org.freedesktop.Avahi",
58       "/",
59       "org.freedesktop.Avahi.Server"),
60     "GetHostName");
61 
62   m.set_reply_serial(42);
63   m.set_serial(43);
64 
65   message em = message::new_error(
66     m,
67     "com.skizizo.NoHostname",
68     "No hostname for you!");
69 
70   const error e(em);
71 
72   e.throw_if_set();
73 }
74 */
75