tests: fix blocking semantic in DBusProxyTest
[profile/ivi/common-api-dbus-runtime.git] / src / test / DBusTestUtils.h
1 /* Copyright (C) 2013 BMW Group
2  * Author: Manfred Bathelt (manfred.bathelt@bmw.de)
3  * Author: Juergen Gehring (juergen.gehring@bmw.de)
4  * This Source Code Form is subject to the terms of the Mozilla Public
5  * License, v. 2.0. If a copy of the MPL was not distributed with this
6  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
7
8 #include <dbus/dbus.h>
9
10
11 inline char eliminateZeroes(char val) {
12     return !val ? '0' : val;
13 }
14
15
16 inline void printLibdbusMessageBody(char* data, uint32_t fromByteIndex, uint32_t toByteIndex) {
17         for(int i = fromByteIndex; i < toByteIndex; i++) {
18                 std::cout << eliminateZeroes(data[i]);
19                 if(i%8 == 7) {
20                         std::cout << std::endl;
21                 }
22         }
23         std::cout << std::endl;
24 }
25
26 inline void printLibdbusMessage(DBusMessage* libdbusMessage, uint32_t fromByteIndex, uint32_t toByteIndex) {
27     char* data = dbus_message_get_body(libdbusMessage);
28     printLibdbusMessageBody(data, fromByteIndex, toByteIndex);
29 }
30
31 inline void printLibdbusMessage(DBusMessage* libdbusMessage) {
32     printLibdbusMessage(libdbusMessage, 0, dbus_message_get_body_length(libdbusMessage));
33 }
34