4 * Copyright (c) 2013 Samsung Electronics Co., Ltd.
6 * Licensed under the Apache License, Version 2.0 (the License);
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
21 #define METHOD_GET_CRADLE "GetCradle"
23 static const struct device_change_type {
26 } device_change_types [] = {
31 static int test_cradle(void)
37 msg = dbus_method_sync_with_reply(DEVICED_BUS_NAME,
39 DEVICED_INTERFACE_SYSNOTI,
40 METHOD_GET_CRADLE, NULL, NULL);
42 _E("fail : %s %s %s %s",
43 DEVICED_BUS_NAME, DEVICED_PATH_SYSNOTI, DEVICED_INTERFACE_SYSNOTI,
48 dbus_error_init(&err);
50 ret = dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &level,
53 _E("no message : [%s:%s]", err.name, err.message);
57 dbus_message_unref(msg);
58 dbus_error_free(&err);
59 sleep(TEST_WAIT_TIME_INTERVAL);
63 static int test(int index)
70 param[0] = METHOD_SET_DEVICE;
72 param[2] = device_change_types[index].name;
73 param[3] = device_change_types[index].status;
75 msg = dbus_method_sync_with_reply(DEVICED_BUS_NAME,
77 DEVICED_INTERFACE_SYSNOTI,
78 METHOD_SET_DEVICE, "siss", param);
80 _E("fail : %s %s %s %s",
81 DEVICED_BUS_NAME, DEVICED_PATH_SYSNOTI, DEVICED_INTERFACE_SYSNOTI,
86 dbus_error_init(&err);
88 ret = dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &ret_val, DBUS_TYPE_INVALID);
90 _E("no message : [%s:%s]", err.name, err.message);
91 dbus_error_free(&err);
94 _I("%s %s", device_change_types[index].name, device_change_types[index].status);
95 dbus_message_unref(msg);
96 dbus_error_free(&err);
97 sleep(TEST_WAIT_TIME_INTERVAL);
101 static void unit(char *unit, char *status)
105 for (index = 0; index < ARRAY_SIZE(device_change_types); index++) {
106 if (strcmp(unit, device_change_types[index].name) != 0 ||
107 strcmp(status, device_change_types[index].status) != 0)
114 static void cradle_init(void *data)
119 for (index = 0; index < ARRAY_SIZE(device_change_types); index++)
123 static void cradle_exit(void *data)
128 static int cradle_unit(int argc, char **argv)
137 unit(argv[2], argv[3]);
142 static const struct test_ops cradle_test_ops = {
143 .priority = TEST_PRIORITY_NORMAL,
150 TEST_OPS_REGISTER(&cradle_test_ops)