zmike pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=52e39f71fa56b90b0f99c46304ecfc87cc018a26

commit 52e39f71fa56b90b0f99c46304ecfc87cc018a26
Author: Mike Blumenkrantz <[email protected]>
Date:   Wed Sep 11 13:38:35 2019 -0400

    tests/edje: reduce chances of cascading test failures in non-forked mode
    
    Summary:
    move evas_free() into the global shutdown fixture to ensure that 
edje_shutdown
    actually does call internal shutdown methods since evas_free() will not be
    reached if it is at the end of a failing test
    
    Depends on D9878
    
    Reviewers: cedric
    
    Reviewed By: cedric
    
    Subscribers: #reviewers, #committers
    
    Tags: #efl
    
    Differential Revision: https://phab.enlightenment.org/D9879
---
 src/tests/edje/edje_suite.c          | 5 ++++-
 src/tests/edje/edje_test_container.c | 4 ----
 src/tests/edje/edje_test_edje.c      | 8 --------
 src/tests/edje/edje_test_features.c  | 7 -------
 src/tests/edje/edje_test_signal.c    | 4 ----
 src/tests/edje/edje_test_swallow.c   | 5 -----
 src/tests/edje/edje_test_text.c      | 7 -------
 7 files changed, 4 insertions(+), 36 deletions(-)

diff --git a/src/tests/edje/edje_suite.c b/src/tests/edje/edje_suite.c
index 18eb8856fb..80104b0e0b 100644
--- a/src/tests/edje/edje_suite.c
+++ b/src/tests/edje/edje_suite.c
@@ -29,10 +29,11 @@ test_layout_get(const char *name)
    return filename;
 }
 
+static Evas *evas = NULL;
+
 Evas *
 _setup_evas(void)
 {
-   Evas *evas;
    Evas_Engine_Info *einfo;
 
    evas = evas_new();
@@ -55,6 +56,8 @@ SUITE_INIT(edje)
 
 SUITE_SHUTDOWN(edje)
 {
+   if (evas) evas_free(evas);
+   evas = NULL;
    ck_assert_int_eq(edje_shutdown(), 0);
    ck_assert_int_eq(ecore_evas_shutdown(), 0);
 }
diff --git a/src/tests/edje/edje_test_container.c 
b/src/tests/edje/edje_test_container.c
index 1ddeb86985..cfdee2ed68 100644
--- a/src/tests/edje/edje_test_container.c
+++ b/src/tests/edje/edje_test_container.c
@@ -51,7 +51,6 @@ EFL_START_TEST(edje_test_box)
      }
    eina_iterator_free(it);
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -111,7 +110,6 @@ EFL_START_TEST(edje_test_box_eoapi)
    efl_pack_clear(efl_part(obj, "box"));
    fail_if(efl_content_count(efl_part(obj, "box")) != 0);
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -186,7 +184,6 @@ EFL_START_TEST(edje_test_table)
           fail_if(strcmp(txt, buf) != 0);
        }
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -269,7 +266,6 @@ EFL_START_TEST(edje_test_table_eoapi)
    fail_if(efl_content_count(proxy) != 4);
    efl_del(proxy);
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
diff --git a/src/tests/edje/edje_test_edje.c b/src/tests/edje/edje_test_edje.c
index 7f0f3b6f08..17eb7d5d4c 100644
--- a/src/tests/edje/edje_test_edje.c
+++ b/src/tests/edje/edje_test_edje.c
@@ -28,7 +28,6 @@ EFL_START_TEST(edje_test_edje_load)
    error = edje_object_load_error_get(obj);
    fail_if(error != EDJE_LOAD_ERROR_DOES_NOT_EXIST);
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -89,7 +88,6 @@ EFL_START_TEST(edje_test_load_simple_layout)
    fail_unless(edje_object_part_exists(obj, "background"));
 
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -118,7 +116,6 @@ EFL_START_TEST(edje_test_simple_layout_geometry)
    evas_object_color_get(bg, &r, &g, &b, &a);
    fail_if(r != 255 || g != 255 || b != 255 || a != 255);
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -166,7 +163,6 @@ EFL_START_TEST(edje_test_complex_layout)
    fail_if(x != 5 || y != 500+2);
    fail_if(w != 1000-5-5 + 1 || h != 500-5-2 + 1);
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -189,7 +185,6 @@ EFL_START_TEST(edje_test_calculate_parens)
    edje_object_part_geometry_get(obj, "background", &x, &y, &w, &h);
    fail_if(x != 0 || y != 0 || w != 100 || h != 100);
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -232,7 +227,6 @@ EFL_START_TEST(edje_test_access)
      }
    fail_if(i != 2);
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -246,7 +240,6 @@ EFL_START_TEST(edje_test_combine_keywords)
    obj = edje_object_add(evas);
    fail_unless(edje_object_file_set(obj, 
test_layout_get("test_combine_keywords.edj"), "test_group"));
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -277,7 +270,6 @@ EFL_START_TEST(edje_test_part_caching)
 
      }
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
diff --git a/src/tests/edje/edje_test_features.c 
b/src/tests/edje/edje_test_features.c
index 4b6ddb8900..894e27332f 100644
--- a/src/tests/edje/edje_test_features.c
+++ b/src/tests/edje/edje_test_features.c
@@ -55,7 +55,6 @@ EFL_START_TEST(edje_test_masking)
    clip2 = efl_canvas_object_clipper_get(sub);
    fail_if(clip != clip2);
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -104,7 +103,6 @@ EFL_START_TEST(edje_test_filters)
 
    // TODO: Verify properly that the filter runs well
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -130,7 +128,6 @@ EFL_START_TEST(edje_test_snapshot)
 
    // TODO: Verify that evas snapshot actually works (and has a filter)
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -184,14 +181,11 @@ EFL_START_TEST(edje_test_size_class)
    b = edje_object_size_class_get(obj, "rect_size", &minw, &minh, NULL, NULL);
    fail_if(!b || minw != 150 || minh != 150);
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
 EFL_START_TEST(edje_test_color_class)
 {
-   Evas *evas = _setup_evas();
-
    Eina_File *f;
    Eina_Iterator *it;
    Edje_Color_Class *itcc, *cc = NULL;
@@ -219,7 +213,6 @@ EFL_START_TEST(edje_test_color_class)
    eina_file_close(f);
    free(filename);
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
diff --git a/src/tests/edje/edje_test_signal.c 
b/src/tests/edje/edje_test_signal.c
index 20240a421f..553be69abe 100644
--- a/src/tests/edje/edje_test_signal.c
+++ b/src/tests/edje/edje_test_signal.c
@@ -92,7 +92,6 @@ EFL_START_TEST(edje_test_message_send_legacy)
 
    evas_object_del(obj);
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -151,7 +150,6 @@ EFL_START_TEST(edje_test_message_send_eo)
 
    efl_del(obj);
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -185,7 +183,6 @@ EFL_START_TEST(edje_test_signals)
 
    efl_del(obj);
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -229,7 +226,6 @@ EFL_START_TEST(edje_test_signal_callback_del_full)
 
    efl_del(obj);
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
diff --git a/src/tests/edje/edje_test_swallow.c 
b/src/tests/edje/edje_test_swallow.c
index b8f13cf7ec..a0e5b4eb96 100644
--- a/src/tests/edje/edje_test_swallow.c
+++ b/src/tests/edje/edje_test_swallow.c
@@ -40,7 +40,6 @@ EFL_START_TEST(edje_test_swallows)
    /* o1 is deleted at this point. */
    ck_assert_ptr_eq(efl_parent_get(o1), evas_object_evas_get(o1));
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -60,7 +59,6 @@ EFL_START_TEST(edje_test_swallows_lifetime)
    evas_object_del(ly);
    fail_if(!efl_parent_get(o1));
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -88,7 +86,6 @@ EFL_START_TEST(edje_test_swallows_invalidate)
    evas_object_del(ly);
    fail_if(!efl_parent_get(o1));
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -119,7 +116,6 @@ EFL_START_TEST(edje_test_swallows_eoapi)
    /* o1 is deleted at this point. */
    ck_assert_ptr_eq(efl_parent_get(o1), evas_object_evas_get(o1));
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -153,7 +149,6 @@ EFL_START_TEST(edje_test_swallows_container_api)
       eina_array_free(arr);
    }
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
diff --git a/src/tests/edje/edje_test_text.c b/src/tests/edje/edje_test_text.c
index 86e1aaf06d..45ef800ca4 100644
--- a/src/tests/edje/edje_test_text.c
+++ b/src/tests/edje/edje_test_text.c
@@ -88,7 +88,6 @@ EFL_START_TEST(edje_test_text_cursor)
    new_pos = edje_object_part_text_cursor_pos_get(obj, "text", 
EDJE_CURSOR_MAIN);
    ck_assert_int_eq(old_pos, new_pos);
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -110,7 +109,6 @@ EFL_START_TEST(edje_test_textblock)
    txt = edje_object_part_text_get(obj, "text");
    fail_if(!txt || strcmp(txt, buf));
 
-   evas_free(evas);
 }
 EFL_END_TEST
 
@@ -129,7 +127,6 @@ START_TEST(edje_test_text_ellipsis)
 
    efl_text_ellipsis_set(efl_part(layout, "text"), 1.0);
 
-   evas_free(evas);
 }
 END_TEST
 
@@ -148,7 +145,6 @@ START_TEST(edje_test_text_wrap)
 
    efl_text_wrap_set(efl_part(layout, "text"), EFL_TEXT_FORMAT_WRAP_WORD);
 
-   evas_free(evas);
 }
 END_TEST
 
@@ -167,7 +163,6 @@ START_TEST(edje_test_text_font)
 
    efl_text_font_set(efl_part(layout, "text"), "Sans", 14);
 
-   evas_free(evas);
 }
 END_TEST
 
@@ -186,7 +181,6 @@ START_TEST(edje_test_text_color)
 
    efl_text_normal_color_set(efl_part(layout, "text"), 255, 255, 255, 255);
 
-   evas_free(evas);
 }
 END_TEST
 
@@ -330,7 +324,6 @@ START_TEST(edje_test_text_part)
    ck_assert(!efl_file_load(layout));
    _basic_check(layout, EINA_FALSE);
 
-   evas_free(evas);
 }
 END_TEST
 

-- 


Reply via email to