efl

Форк
0
/
eldbus_test_eldbus_init.c 
90 строк · 1.9 Кб
1
#ifdef HAVE_CONFIG_H
2
# include <config.h>
3
#endif
4

5
#include <stdio.h>
6
#include <unistd.h>
7

8
#include <Eina.h>
9
#include <Ecore.h>
10
#include <Eldbus.h>
11

12
#include "eldbus_suite.h"
13

14
static Eina_Bool
15
_quit_cb(void *data EINA_UNUSED)
16
{
17
   ck_abort_msg("dbus timeout triggered!");
18
   ecore_main_loop_quit();
19
   return EINA_FALSE;
20
}
21

22
EFL_START_TEST(eldbus_test_eldbus)
23
{
24
}
25
EFL_END_TEST
26

27
EFL_START_TEST(eldbus_test_eldbus_conn)
28
{
29
   Eldbus_Connection *conn;
30

31
   conn = eldbus_connection_get(ELDBUS_CONNECTION_TYPE_SESSION);
32
   fail_if(conn == NULL);
33

34
   eldbus_connection_unref(conn);
35
}
36
EFL_END_TEST
37

38
EFL_START_TEST(eldbus_test_eldbus_conn_object)
39
{
40
   Eldbus_Connection *conn;
41
   Eldbus_Object *obj;
42

43
   conn = eldbus_connection_get(ELDBUS_CONNECTION_TYPE_SESSION);
44
   fail_if(conn == NULL);
45

46
   obj = eldbus_object_get(conn, "org.buu", "/org/buu");
47
   fail_if(obj == NULL);
48

49
   eldbus_object_unref(obj);
50

51
   eldbus_connection_unref(conn);
52

53
}
54
EFL_END_TEST
55

56
void name_owner_changed_cb(void *data, const char *bus EINA_UNUSED, const char *old_id EINA_UNUSED, const char *new_id)
57
{
58
   const char **id = data;
59
   *id = new_id;
60
   ecore_main_loop_quit();
61
}
62

63
EFL_START_TEST(eldbus_test_eldbus_name_owner_changed)
64
{
65
   Eldbus_Connection *conn;
66
   const char *id = NULL;
67

68
   conn = eldbus_connection_get(ELDBUS_CONNECTION_TYPE_SESSION);
69
   fail_if(conn == NULL);
70

71
   eldbus_name_owner_changed_callback_add(conn, "org.bus.that.not.exist",
72
                                         name_owner_changed_cb, &id, EINA_TRUE);
73
   ecore_timer_add(0.1, _quit_cb, NULL);
74

75
   ecore_main_loop_begin();
76

77
   fail_if(id == NULL);
78

79
   eldbus_connection_unref(conn);
80

81
}
82
EFL_END_TEST
83

84
void eldbus_test_eldbus_init(TCase *tc)
85
{
86
   tcase_add_test(tc, eldbus_test_eldbus);
87
   tcase_add_test(tc, eldbus_test_eldbus_conn);
88
   tcase_add_test(tc, eldbus_test_eldbus_conn_object);
89
   tcase_add_test(tc, eldbus_test_eldbus_name_owner_changed);
90
}
91

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.