Add sd-bus cynara API tests
[platform/core/test/security-tests.git] / src / common / cynara_helpers_creds.cpp
1 /*
2  * Copyright (c) 2015-2018 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  *    Licensed under the Apache License, Version 2.0 (the "License");
5  *    you may not use this file except in compliance with the License.
6  *    You may obtain a copy of the License at
7  *
8  *        http://www.apache.org/licenses/LICENSE-2.0
9  *
10  *    Unless required by applicable law or agreed to in writing, software
11  *    distributed under the License is distributed on an "AS IS" BASIS,
12  *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  *    See the License for the specific language governing permissions and
14  *    limitations under the License.
15  */
16 /**
17  * @file        cynara_helper_credentials.cpp
18  * @author      Aleksander Zdyb <a.zdyb@samsung.com>
19  * @version     1.0
20  * @brief       Helpers for cynara-helpers
21  */
22
23 #include <dpl/test/test_runner.h>
24
25 #include <cynara-creds-dbus.h>
26 #include <cynara-creds-socket.h>
27 #include <cynara-creds-gdbus.h>
28 #include <cynara-creds-sd-bus.h>
29
30 #include "cynara_helpers_creds.h"
31
32 namespace CynaraHelperCredentials {
33
34 char *socketGetClient(int sock, cynara_client_creds method, int expectedResult) {
35     char *buff = nullptr;
36     auto ret = cynara_creds_socket_get_client(sock, method, &buff);
37     RUNNER_ASSERT_MSG(ret == expectedResult,
38                       "cynara_creds_socket_get_client failed, ret = " << ret
39                       << "; expected = " << expectedResult);
40     return buff;
41 }
42
43 char *socketGetUser(int sock, cynara_user_creds method, int expectedResult) {
44     char *buff = nullptr;
45     auto ret = cynara_creds_socket_get_user(sock, method, &buff);
46     RUNNER_ASSERT_MSG(ret == expectedResult,
47                       "cynara_creds_socket_get_user failed, ret = " << ret
48                       << "; expected = " << expectedResult);
49     return buff;
50 }
51
52 pid_t socketGetPid(int sock, int expectedResult) {
53     pid_t pid = -1;
54     auto ret = cynara_creds_socket_get_pid(sock, &pid);
55     RUNNER_ASSERT_MSG(ret == expectedResult,
56                       "cynara_creds_socket_get_pid failed, ret = " << ret << "; expected = "
57                       << expectedResult);
58     return pid;
59 }
60
61 char *dbusGetClient(DBusConnectionPtr connection, const char *uniqueName,
62                     cynara_client_creds method, int expectedResult) {
63     char *buff = nullptr;
64     auto ret = cynara_creds_dbus_get_client(connection.get(), uniqueName, method, &buff);
65     RUNNER_ASSERT_MSG(ret == expectedResult,
66                       "cynara_creds_dbus_get_client failed, ret = " << ret
67                       << "; expected = " << expectedResult);
68     return buff;
69 }
70
71 char *dbusGetUser(DBusConnectionPtr connection, const char *uniqueName, cynara_user_creds method,
72                   int expectedResult) {
73     char *buff = nullptr;
74     auto ret = cynara_creds_dbus_get_user(connection.get(), uniqueName, method, &buff);
75     RUNNER_ASSERT_MSG(ret == expectedResult,
76                       "cynara_creds_dbus_get_user failed, ret = " << ret
77                       << "; expected = " << expectedResult);
78     return buff;
79 }
80
81 pid_t dbusGetPid(DBusConnectionPtr connection, const char *uniqueName, int expectedResult) {
82     pid_t pid = -1;
83     auto ret = cynara_creds_dbus_get_pid(connection.get(), uniqueName, &pid);
84     RUNNER_ASSERT_MSG(ret == expectedResult, "cynara_creds_dbus_get_pid failed, ret = " << ret
85                                              << "; expected = " << expectedResult);
86     return pid;
87 }
88
89 char *gdbusGetClient(GDBusConnectionPtr connection, const char *uniqueName,
90                      cynara_client_creds method, int expectedResult) {
91     char *buff = nullptr;
92     auto ret = cynara_creds_gdbus_get_client(connection.get(), uniqueName, method, &buff);
93     RUNNER_ASSERT_MSG(ret == expectedResult,
94                       "cynara_creds_gdbus_get_client failed, ret = " << ret
95                       << "; expected = " << expectedResult);
96     return buff;
97 }
98
99 char *gdbusGetUser(GDBusConnectionPtr connection, const char *uniqueName, cynara_user_creds method,
100                    int expectedResult) {
101     char *buff = nullptr;
102     auto ret = cynara_creds_gdbus_get_user(connection.get(), uniqueName, method, &buff);
103     RUNNER_ASSERT_MSG(ret == expectedResult,
104                       "cynara_creds_gdbus_get_user failed, ret = " << ret
105                       << "; expected = " << expectedResult);
106     return buff;
107 }
108
109 pid_t gdbusGetPid(GDBusConnectionPtr connection, const char *uniqueName) {
110     pid_t pid = -1;
111     auto ret = cynara_creds_gdbus_get_pid(connection.get(), uniqueName, &pid);
112     RUNNER_ASSERT_MSG(ret == CYNARA_API_SUCCESS,
113                       "cynara_creds_gdbus_get_pid failed, ret = " << ret);
114     return pid;
115 }
116
117 char *sdBusGetClient(SdBusConnectionPtr connection, const char *uniqueName,
118                      cynara_client_creds method, int expectedResult) {
119     char *buff = nullptr;
120     auto ret = cynara_creds_sd_bus_get_client(connection.get(), uniqueName, method, &buff);
121     RUNNER_ASSERT_MSG(ret == expectedResult,
122                       "cynara_creds_sd_bus_get_client failed, ret = " << ret
123                       << "; expected = " << expectedResult);
124     return buff;
125 }
126
127 char *sdBusGetUser(SdBusConnectionPtr connection, const char *uniqueName, cynara_user_creds method,
128                    int expectedResult) {
129     char *buff = nullptr;
130     auto ret = cynara_creds_sd_bus_get_user(connection.get(), uniqueName, method, &buff);
131     RUNNER_ASSERT_MSG(ret == expectedResult,
132                       "cynara_creds_sd_bus_get_user failed, ret = " << ret
133                       << "; expected = " << expectedResult);
134     return buff;
135 }
136
137 pid_t sdBusGetPid(SdBusConnectionPtr connection, const char *uniqueName, int expectedResult) {
138     pid_t pid = -1;
139     auto ret = cynara_creds_sd_bus_get_pid(connection.get(), uniqueName, &pid);
140     RUNNER_ASSERT_MSG(ret == expectedResult, "cynara_creds_sd_bus_get_pid failed, ret = " << ret
141                                              << "; expected = " << expectedResult);
142     return pid;
143 }
144
145 } //namespace CynaraHelperCredentials