0008_focus: added test for revert_focus when window lower/hide/removed 21/259021/2
authorJunseok, Kim <juns.kim@samsung.com>
Fri, 28 May 2021 03:35:59 +0000 (12:35 +0900)
committerJunseok, Kim <juns.kim@samsung.com>
Mon, 31 May 2021 05:22:22 +0000 (14:22 +0900)
Change-Id: I8b97a0af336c22aa27aa5dd7f02fcf7561e8abd1
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
data/img/etTestFocus/focus_fullsize_visible_by_above_del.png [new file with mode: 0644]
data/img/etTestFocus/focus_fullsize_visible_by_above_hide.png [new file with mode: 0644]
data/img/etTestFocus/focus_fullsize_visible_by_above_lower.png [new file with mode: 0644]
src/testcase/0008_focus.cpp

diff --git a/data/img/etTestFocus/focus_fullsize_visible_by_above_del.png b/data/img/etTestFocus/focus_fullsize_visible_by_above_del.png
new file mode 100644 (file)
index 0000000..375e688
Binary files /dev/null and b/data/img/etTestFocus/focus_fullsize_visible_by_above_del.png differ
diff --git a/data/img/etTestFocus/focus_fullsize_visible_by_above_hide.png b/data/img/etTestFocus/focus_fullsize_visible_by_above_hide.png
new file mode 100644 (file)
index 0000000..375e688
Binary files /dev/null and b/data/img/etTestFocus/focus_fullsize_visible_by_above_hide.png differ
diff --git a/data/img/etTestFocus/focus_fullsize_visible_by_above_lower.png b/data/img/etTestFocus/focus_fullsize_visible_by_above_lower.png
new file mode 100644 (file)
index 0000000..375e688
Binary files /dev/null and b/data/img/etTestFocus/focus_fullsize_visible_by_above_lower.png differ
index 592fa91..6bea2bb 100644 (file)
@@ -1681,3 +1681,99 @@ TEST_F(etTestFocus, focus_fullsize_show_after_skip_set_and_transient_for)
 
    ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE);
 }
+
+TEST_F(etTestFocus, focus_fullsize_alpha_visible_by_above_lower)
+{
+   etWin *tw = NULL;
+   Eina_List *list = NULL, *l = NULL;
+
+   // init TC window, show=true, geom=false
+   initTC(EINA_TRUE, EINA_FALSE);
+
+   // tw_green alpha set
+   elm_win_alpha_set(tw_green->elm_win, EINA_TRUE);
+
+   // lower tw_blue
+   etRunner::get().setWinLower(tw_blue);
+   ASSERT_VIS_OFF(tw_blue);
+
+   // Expected focus res:
+   // [Top] Green[focused] -> Red -> Blue [Bottom]
+   list = etRunner::get().getWinInfoList();
+   ASSERT_TRUE(list != NULL);
+
+   EINA_LIST_CAST_FOREACH(list, l, tw, etWin*)
+     {
+        if (tw->native_win == tw_green->native_win)
+          ASSERT_TRUE(tw->Focus.obj);
+        else
+          ASSERT_FALSE(tw->Focus.obj);
+     }
+   etRunner::get().freeWinInfoList(list);
+
+   ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE);
+}
+
+TEST_F(etTestFocus, focus_fullsize_alpha_visible_by_above_hide)
+{
+   etWin *tw = NULL;
+   Eina_List *list = NULL, *l = NULL;
+
+   // init TC window, show=true, geom=false
+   initTC(EINA_TRUE, EINA_FALSE);
+
+   // tw_green alpha set
+   elm_win_alpha_set(tw_green->elm_win, EINA_TRUE);
+
+   // hide tw_blue
+   hideTCWin(tw_blue);
+   ASSERT_VIS_OFF(tw_blue);
+
+   // Expected focus res:
+   // [Top] Green[focused] -> Red [Bottom]
+   list = etRunner::get().getWinInfoList();
+   ASSERT_TRUE(list != NULL);
+
+   EINA_LIST_CAST_FOREACH(list, l, tw, etWin*)
+     {
+        if (tw->native_win == tw_green->native_win)
+          ASSERT_TRUE(tw->Focus.obj);
+        else
+          ASSERT_FALSE(tw->Focus.obj);
+     }
+   etRunner::get().freeWinInfoList(list);
+
+   ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE);
+}
+
+TEST_F(etTestFocus, focus_fullsize_alpha_visible_by_above_del)
+{
+   etWin *tw = NULL;
+   Eina_List *list = NULL, *l = NULL;
+
+   // init TC window, show=true, geom=false
+   initTC(EINA_TRUE, EINA_FALSE);
+
+   // tw_green alpha set
+   elm_win_alpha_set(tw_green->elm_win, EINA_TRUE);
+
+   // delete tw_blue
+   deleteTCWin(tw_blue);
+   ASSERT_VIS_ON(tw_green);
+
+   // Expected focus res:
+   // [Top] Green[focused] -> Red [Bottom]
+   list = etRunner::get().getWinInfoList();
+   ASSERT_TRUE(list != NULL);
+
+   EINA_LIST_CAST_FOREACH(list, l, tw, etWin*)
+     {
+        if (tw->native_win == tw_green->native_win)
+          ASSERT_TRUE(tw->Focus.obj);
+        else
+          ASSERT_FALSE(tw->Focus.obj);
+     }
+   etRunner::get().freeWinInfoList(list);
+
+   ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE);
+}