2013-11-19 05:18:02 -08:00
|
|
|
#ifdef HAVE_CONFIG_H
|
|
|
|
# include "elementary_config.h"
|
|
|
|
#endif
|
|
|
|
|
2018-04-03 04:27:30 -07:00
|
|
|
#define EFL_ACCESS_OBJECT_BETA
|
2013-11-19 05:18:02 -08:00
|
|
|
#include <Elementary.h>
|
|
|
|
#include "elm_suite.h"
|
|
|
|
|
2019-09-20 21:28:24 -07:00
|
|
|
EFL_START_TEST(elm_test_check_size)
|
|
|
|
{
|
|
|
|
Evas_Object *win, *check, *box;
|
|
|
|
int width, height;
|
|
|
|
|
|
|
|
win = elm_win_util_standard_add("check", "Check");
|
|
|
|
|
|
|
|
box = elm_box_add(win);
|
|
|
|
evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
|
|
|
elm_win_resize_object_add(win, box);
|
|
|
|
evas_object_show(box);
|
|
|
|
|
|
|
|
check = elm_check_add(box);
|
|
|
|
elm_box_pack_end(box, check);
|
|
|
|
evas_object_show(check);
|
|
|
|
|
|
|
|
evas_object_show(win);
|
|
|
|
|
|
|
|
get_me_to_those_events(check);
|
|
|
|
|
|
|
|
evas_object_size_hint_min_get(check, &width, &height);
|
|
|
|
ck_assert_int_gt(width, 0);
|
|
|
|
ck_assert_int_gt(height, 0);
|
|
|
|
}
|
|
|
|
EFL_END_TEST
|
|
|
|
|
2019-09-03 11:11:25 -07:00
|
|
|
EFL_START_TEST(elm_test_check_legacy_type_check)
|
2018-02-14 12:04:24 -08:00
|
|
|
{
|
|
|
|
Evas_Object *win, *check;
|
|
|
|
const char *type;
|
|
|
|
|
2018-04-27 05:59:04 -07:00
|
|
|
win = win_add(NULL, "check", ELM_WIN_BASIC);
|
2018-02-14 12:04:24 -08:00
|
|
|
|
|
|
|
check = elm_check_add(win);
|
|
|
|
|
|
|
|
type = elm_object_widget_type_get(check);
|
|
|
|
ck_assert(type != NULL);
|
|
|
|
ck_assert(!strcmp(type, "Elm_Check"));
|
|
|
|
|
|
|
|
type = evas_object_type_get(check);
|
|
|
|
ck_assert(type != NULL);
|
|
|
|
ck_assert(!strcmp(type, "elm_check"));
|
|
|
|
|
|
|
|
}
|
2018-03-26 11:19:28 -07:00
|
|
|
EFL_END_TEST
|
2018-02-14 12:04:24 -08:00
|
|
|
|
2019-09-03 11:11:25 -07:00
|
|
|
EFL_START_TEST(elm_test_check_onoff_text)
|
2013-11-19 05:18:02 -08:00
|
|
|
{
|
|
|
|
Evas_Object *win, *check;
|
|
|
|
|
2018-04-27 05:59:04 -07:00
|
|
|
win = win_add(NULL, "check", ELM_WIN_BASIC);
|
2013-11-19 05:18:02 -08:00
|
|
|
|
|
|
|
check = elm_check_add(win);
|
|
|
|
elm_object_style_set(check, "toggle");
|
|
|
|
elm_object_part_text_set(check, "on", "OnText");
|
|
|
|
elm_object_part_text_set(check, "off", "OffText");
|
|
|
|
|
|
|
|
ck_assert_str_eq(elm_object_part_text_get(check, "on"), "OnText");
|
|
|
|
ck_assert_str_eq(elm_object_part_text_get(check, "off"), "OffText");
|
|
|
|
|
|
|
|
elm_object_style_set(check, "default");
|
2019-05-30 10:09:19 -07:00
|
|
|
DISABLE_ABORT_ON_CRITICAL_START;
|
2013-11-19 05:18:02 -08:00
|
|
|
ck_assert(elm_object_part_text_get(check, "on") == NULL);
|
|
|
|
ck_assert(elm_object_part_text_get(check, "off") == NULL);
|
2019-05-30 10:09:19 -07:00
|
|
|
DISABLE_ABORT_ON_CRITICAL_END;
|
2013-11-19 05:18:02 -08:00
|
|
|
|
|
|
|
}
|
2018-03-26 11:19:28 -07:00
|
|
|
EFL_END_TEST
|
2013-11-19 05:18:02 -08:00
|
|
|
|
2019-09-03 11:56:24 -07:00
|
|
|
EFL_START_TEST(elm_test_check_callbacks)
|
|
|
|
{
|
|
|
|
Evas_Object *win, *check;
|
|
|
|
int called = 0;
|
2019-09-05 07:53:59 -07:00
|
|
|
int i;
|
2019-09-03 11:56:24 -07:00
|
|
|
|
|
|
|
win = win_add(NULL, "check", ELM_WIN_BASIC);
|
|
|
|
evas_object_resize(win, 500, 500);
|
|
|
|
|
|
|
|
check = elm_check_add(win);
|
2019-09-05 07:53:59 -07:00
|
|
|
if (_i)
|
|
|
|
elm_object_style_set(check, "toggle");
|
2019-09-03 11:56:24 -07:00
|
|
|
elm_object_text_set(check, "TEST TEST TEST");
|
|
|
|
evas_object_smart_callback_add(check, "changed", event_callback_single_call_int_data, &called);
|
|
|
|
|
|
|
|
evas_object_resize(check, 200, 100);
|
|
|
|
evas_object_show(win);
|
|
|
|
evas_object_show(check);
|
|
|
|
get_me_to_those_events(check);
|
|
|
|
|
2019-09-05 07:53:59 -07:00
|
|
|
for (i = 0; i < 4; i++)
|
|
|
|
{
|
|
|
|
called = 0;
|
|
|
|
if (_i)
|
|
|
|
click_object_at(check, 150, 50);
|
|
|
|
else
|
|
|
|
click_object(check);
|
|
|
|
ecore_main_loop_iterate();
|
|
|
|
ck_assert_int_eq(elm_check_state_get(check), !(i % 2));
|
|
|
|
ck_assert_int_eq(called, 1);
|
|
|
|
}
|
2019-09-03 11:56:24 -07:00
|
|
|
}
|
|
|
|
EFL_END_TEST
|
|
|
|
|
2019-09-03 11:11:25 -07:00
|
|
|
EFL_START_TEST(elm_test_check_state)
|
2013-11-19 05:18:02 -08:00
|
|
|
{
|
|
|
|
Evas_Object *win, *check;
|
|
|
|
Eina_Bool state = EINA_TRUE;
|
2019-09-05 07:53:59 -07:00
|
|
|
int called = 0;
|
2013-11-19 05:18:02 -08:00
|
|
|
|
2018-04-27 05:59:04 -07:00
|
|
|
win = win_add(NULL, "check", ELM_WIN_BASIC);
|
2013-11-19 05:18:02 -08:00
|
|
|
|
|
|
|
check = elm_check_add(win);
|
|
|
|
elm_check_state_pointer_set(check, &state);
|
|
|
|
ck_assert(elm_check_state_get(check) == EINA_TRUE);
|
|
|
|
ck_assert(state == EINA_TRUE);
|
|
|
|
|
2019-09-05 07:53:59 -07:00
|
|
|
evas_object_smart_callback_add(check, "changed", event_callback_single_call_int_data, &called);
|
2013-11-19 05:18:02 -08:00
|
|
|
elm_check_state_set(check, EINA_FALSE);
|
|
|
|
ck_assert(elm_check_state_get(check) == EINA_FALSE);
|
|
|
|
ck_assert(state == EINA_FALSE);
|
2019-09-05 07:53:59 -07:00
|
|
|
ck_assert_int_eq(called, 0);
|
2013-11-19 05:18:02 -08:00
|
|
|
|
|
|
|
}
|
2018-03-26 11:19:28 -07:00
|
|
|
EFL_END_TEST
|
2013-11-19 05:18:02 -08:00
|
|
|
|
2019-01-28 10:42:56 -08:00
|
|
|
EFL_START_TEST(elm_atspi_role_get)
|
2014-06-10 19:07:15 -07:00
|
|
|
{
|
|
|
|
Evas_Object *win, *check;
|
2017-10-18 18:13:54 -07:00
|
|
|
Efl_Access_Role role;
|
2014-06-10 19:07:15 -07:00
|
|
|
|
2018-04-27 05:59:04 -07:00
|
|
|
win = win_add(NULL, "check", ELM_WIN_BASIC);
|
2014-06-10 19:07:15 -07:00
|
|
|
|
|
|
|
check = elm_check_add(win);
|
2018-04-03 04:27:30 -07:00
|
|
|
role = efl_access_object_role_get(check);
|
2014-06-10 19:07:15 -07:00
|
|
|
|
2017-10-18 18:13:54 -07:00
|
|
|
ck_assert(role == EFL_ACCESS_ROLE_CHECK_BOX);
|
2014-06-10 19:07:15 -07:00
|
|
|
|
|
|
|
}
|
2018-03-26 11:19:28 -07:00
|
|
|
EFL_END_TEST
|
2014-06-10 19:07:15 -07:00
|
|
|
|
2013-11-19 05:18:02 -08:00
|
|
|
void elm_test_check(TCase *tc)
|
|
|
|
{
|
2019-09-20 21:28:24 -07:00
|
|
|
tcase_add_test(tc, elm_test_check_size);
|
2019-09-03 11:11:25 -07:00
|
|
|
tcase_add_test(tc, elm_test_check_legacy_type_check);
|
|
|
|
tcase_add_test(tc, elm_test_check_onoff_text);
|
|
|
|
tcase_add_test(tc, elm_test_check_state);
|
2019-09-05 07:53:59 -07:00
|
|
|
tcase_add_loop_test(tc, elm_test_check_callbacks, 0, 2);
|
2014-06-10 19:07:15 -07:00
|
|
|
tcase_add_test(tc, elm_atspi_role_get);
|
2013-11-19 05:18:02 -08:00
|
|
|
}
|