summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Hirt <hirt.danny@gmail.com>2017-05-24 15:48:47 +0300
committerDaniel Hirt <hirt.danny@gmail.com>2017-05-25 14:27:00 +0300
commit962d293cf8d3367aa223f2797371a963b90bdea9 (patch)
tree67cc5d192e479a57695eb44354fd6632e597c49a
parenta7e3f5c0451fe22e8db1a57b8f7bd0ce7c50f101 (diff)
downloadefl-962d293cf8d3367aa223f2797371a963b90bdea9.tar.gz
Canvas text: add rudimentary tests for Efl.Text interfaces
-rw-r--r--src/tests/evas/evas_test_textblock.c73
1 files changed, 73 insertions, 0 deletions
diff --git a/src/tests/evas/evas_test_textblock.c b/src/tests/evas/evas_test_textblock.c
index b3b78dfb7b..fa34216dfb 100644
--- a/src/tests/evas/evas_test_textblock.c
+++ b/src/tests/evas/evas_test_textblock.c
@@ -4410,6 +4410,77 @@ START_TEST(efl_canvas_text_cursor)
}
END_TEST
+#define START_TEXT_TEST() \
+ Evas *evas; \
+ Eo *obj; \
+ evas = EVAS_TEST_INIT_EVAS(); \
+ evas_font_hinting_set(evas, EVAS_FONT_HINTING_AUTO); \
+ obj = efl_add(EFL_CANVAS_TEXT_CLASS, evas); \
+ fail_if(!obj); \
+do \
+{ \
+} \
+while (0)
+
+#define END_TEXT_TEST() \
+do \
+{ \
+ efl_del(obj); \
+ evas_free(evas); \
+ evas_shutdown(); \
+} \
+while (0)
+
+START_TEST(efl_text_font)
+{
+ START_TEXT_TEST();
+
+ Evas_Coord nw, nh;
+
+ /* No style */
+ efl_text_set(obj, "hello world");
+ efl_canvas_text_size_native_get(obj, &nw, &nh);
+ ck_assert_int_eq(nw, 0);
+ ck_assert_int_eq(nh, 0);
+ /* Set a style */
+ efl_text_font_set(obj, "Sans", 10);
+ efl_canvas_text_size_native_get(obj, &nw, &nh);
+ ck_assert_int_ne(nw, 0);
+ ck_assert_int_ne(nh, 0);
+
+ END_TEXT_TEST();
+
+}
+END_TEST
+
+START_TEST(efl_text_format)
+{
+ START_TEXT_TEST();
+
+ Evas_Coord fw, fh;
+ Evas_Coord nw, nh;
+
+ efl_text_font_set(obj, "Sans", 10);
+
+ efl_canvas_text_size_native_get(obj, &nw, &nh);
+
+ efl_canvas_text_size_formatted_get(obj, &fw, &fh);
+ ck_assert_int_eq(nw, fw);
+ ck_assert_int_eq(nh, fh);
+ efl_text_format_wrap_set(obj, EFL_TEXT_FORMAT_WRAP_WORD);
+ efl_canvas_text_size_formatted_get(obj, &fw, &fh);
+ ck_assert_int_eq(nw, fw);
+ ck_assert_int_eq(nh, fh);
+ efl_text_format_multiline_set(obj, EINA_TRUE);
+ efl_canvas_text_size_formatted_get(obj, &fw, &fh);
+ ck_assert_int_ne(nw, fw);
+ ck_assert_int_ne(nh, fh);
+
+ END_TEXT_TEST();
+
+}
+END_TEST
+
void evas_test_textblock(TCase *tc)
{
tcase_add_test(tc, evas_textblock_simple);
@@ -4438,5 +4509,7 @@ void evas_test_textblock(TCase *tc)
tcase_add_test(tc, evas_textblock_text_iface);
tcase_add_test(tc, evas_textblock_annotation);
tcase_add_test(tc, efl_canvas_text_cursor);
+ tcase_add_test(tc, efl_text_font);
+ tcase_add_test(tc, efl_text_format);
}