From 51ef9c242ccfff37905d71132aab33d2f642b427 Mon Sep 17 00:00:00 2001 From: Themba Dube Date: Sun, 23 Jan 2022 10:07:50 -0500 Subject: [PATCH] test(event) add test for #2886 --- tests/src/test_cases/test_event.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 tests/src/test_cases/test_event.c diff --git a/tests/src/test_cases/test_event.c b/tests/src/test_cases/test_event.c new file mode 100644 index 000000000..e6af8ba8a --- /dev/null +++ b/tests/src/test_cases/test_event.c @@ -0,0 +1,27 @@ +#if LV_BUILD_TEST +#include "../lvgl.h" + +#include "unity/unity.h" + +static void event_object_deletion_cb(const lv_obj_class_t *cls, lv_event_t *e) +{ + LV_UNUSED(cls); + if(lv_event_get_code(e) == LV_EVENT_VALUE_CHANGED) { + lv_obj_del(lv_event_get_current_target(e)); + } +} + +static const lv_obj_class_t event_object_deletion_class = { + .event_cb = event_object_deletion_cb, + .base_class = &lv_obj_class +}; + + +/* Checks for memory leaks/invalid memory accesses on deleted objects */ +void test_event_object_deletion(void) +{ + lv_obj_t * obj = lv_obj_class_create_obj(&event_object_deletion_class, lv_scr_act()); + lv_event_send(obj, LV_EVENT_VALUE_CHANGED, NULL); +} + +#endif