cedric pushed a commit to branch master.

commit 3e07236148f8032f476c5928f9ef59487b11529a
Author: Nikolay Lopatka <[email protected]>
Date:   Wed Mar 13 15:23:23 2013 +0900

    Edje: Add test for edje_object_file_set.
    
    Signed-off-by: Cedric BAIL <[email protected]>
---
 src/Makefile_Edje.am                | 33 +++++++++++++++++++++++----------
 src/tests/edje/data/test_layout.edc | 24 ++++++++++++++++++++++++
 src/tests/edje/edje_test_edje.c     | 35 ++++++++++++++++++++++++++++++++++-
 3 files changed, 81 insertions(+), 11 deletions(-)

diff --git a/src/Makefile_Edje.am b/src/Makefile_Edje.am
index 20ec552..94e05a3 100644
--- a/src/Makefile_Edje.am
+++ b/src/Makefile_Edje.am
@@ -196,6 +196,17 @@ tests/edje/edje_tests_helpers.h
 
 bin_SCRIPTS += bin/edje/edje_recc
 
+# Useful to other modules that generate EDJ
+EDJE_CC = EFL_RUN_IN_TREE=1 $(builddir)/bin/edje/edje_cc
+EDJE_CC_FLAGS_VERBOSE = $(EDJE_CC_FLAGS_VERBOSE_@AM_V@)
+EDJE_CC_FLAGS_VERBOSE_ = $(EDJE_CC_FLAGS_VERBOSE_@AM_DEFAULT_V@)
+EDJE_CC_FLAGS_VERBOSE_1 = -v
+EDJE_CC_FLAGS = $(EDJE_CC_FLAGS_VERBOSE) -id $(srcdir) -fd $(srcdir)
+
+AM_V_EDJ = $(am__v_EDJ_@AM_V@)
+am__v_EDJ_ = $(am__v_EDJ_@AM_DEFAULT_V@)
+am__v_EDJ_0 = @echo "  EDJ   " $@;
+
 ### Unit tests
 
 if EFL_ENABLE_TESTS
@@ -214,15 +225,17 @@ $(EDJE_COMMON_CPPFLAGS) \
 @CHECK_CFLAGS@
 tests_edje_edje_suite_LDADD = @CHECK_LIBS@ @USE_EDJE_LIBS@
 tests_edje_edje_suite_DEPENDENCIES = @USE_EDJE_INTERNAL_LIBS@
-endif
 
-# Useful to other modules that generate EDJ
-EDJE_CC = EFL_RUN_IN_TREE=1 $(builddir)/bin/edje/edje_cc
-EDJE_CC_FLAGS_VERBOSE = $(EDJE_CC_FLAGS_VERBOSE_@AM_V@)
-EDJE_CC_FLAGS_VERBOSE_ = $(EDJE_CC_FLAGS_VERBOSE_@AM_DEFAULT_V@)
-EDJE_CC_FLAGS_VERBOSE_1 = -v
-EDJE_CC_FLAGS = $(EDJE_CC_FLAGS_VERBOSE) -id $(srcdir) -fd $(srcdir)
+tests/edje/data/test_layout.edj: tests/edje/data/test_layout.edc 
bin/edje/edje_cc
+       @$(MKDIR_P) tests/edje/data
+       $(AM_V_EDJ)$(EDJE_CC) $(EDJE_CC_FLAGS) -id $(srcdir)/tests/edje/data $< 
$@
 
-AM_V_EDJ = $(am__v_EDJ_@AM_V@)
-am__v_EDJ_ = $(am__v_EDJ_@AM_DEFAULT_V@)
-am__v_EDJ_0 = @echo "  EDJ   " $@;
+EDJE_DATA_FILES = tests/edje/data/test_layout.edc
+
+edjedatafilesdir = $(datadir)/edje/data
+edjedatafiles_DATA = tests/edje/data/test_layout.edj
+CLEANFILES += tests/edje/data/test_layout.edj
+
+endif
+
+EXTRA_DIST += $(EDJE_DATA_FILES)
diff --git a/src/tests/edje/data/test_layout.edc 
b/src/tests/edje/data/test_layout.edc
new file mode 100644
index 0000000..fe6ea01
--- /dev/null
+++ b/src/tests/edje/data/test_layout.edc
@@ -0,0 +1,24 @@
+collections {
+   group {
+      name: "test_group";
+
+      parts {
+         part {
+            name: "background";
+            type: RECT;
+            mouse_events: 0;
+
+            description {
+               state: "default" 0.0;
+               color: 255 255 255 255;
+
+              rel1 {
+                  relative: 0.0 0.0;                  
+               }
+               rel2 {
+                  relative: 1.0 1.0;                  
+               }
+            }
+         }
+   }
+}
diff --git a/src/tests/edje/edje_test_edje.c b/src/tests/edje/edje_test_edje.c
index a15c827..c02419c 100644
--- a/src/tests/edje/edje_test_edje.c
+++ b/src/tests/edje/edje_test_edje.c
@@ -38,8 +38,41 @@ START_TEST(edje_test_edje_load)
 }
 END_TEST
 
-void edje_test_edje(TCase *tc)
+static const char *
+test_layout_get(void)
+{
+   static int is_local = -1;
+   if (is_local == -1)
+     {
+        struct stat st;
+        is_local = 
(stat(PACKAGE_BUILD_DIR"/src/tests/edje/data/test_layout.edj", &st) == 0);
+     }
+
+   if (is_local)
+     return PACKAGE_BUILD_DIR"/src/tests/edje/data/test_layout.edj";
+   else
+     return PACKAGE_DATA_DIR"/data/test_layout.edj";
+}
+
+START_TEST(edje_test_load_simple_layout)
 {
+   Evas *evas = EDJE_TEST_INIT_EVAS();
+   Evas_Object *obj;
+
+   obj = edje_object_add(evas);
+   fail_unless(edje_object_file_set(obj, test_layout_get(), "test_group"));
+
+   fail_if(edje_object_part_exists(obj, "unexistant_part"));
+   fail_unless(edje_object_part_exists(obj, "background"));
+
+
+   EDJE_TEST_FREE_EVAS();
+}
+END_TEST
+
+void edje_test_edje(TCase *tc)
+{    
    tcase_add_test(tc, edje_test_edje_init);
+   tcase_add_test(tc,edje_test_load_simple_layout);
    tcase_add_test(tc, edje_test_edje_load);
 }

-- 

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_mar

Reply via email to