0008_focus: Add test cases for lower unfocused window. 02/185302/2
authorJunSeok, Kim <juns.kim@samsung.com>
Fri, 27 Jul 2018 09:37:23 +0000 (18:37 +0900)
committerJunSeok, Kim <juns.kim@samsung.com>
Fri, 27 Jul 2018 09:42:43 +0000 (18:42 +0900)
Change-Id: Ia8736dc4f2850ef9997d7bdce32c1af6ce56bf0f

src/testcase/0008_focus.cpp

index c0dee66885b356d7c8a2452ec203555807c21619..d0af0ec12a0b747fe2a199811c8dc7607a3bd163 100644 (file)
@@ -84,6 +84,37 @@ TEST_F(etTestFocus, focus_lower)
    etRunner::get().freeWinInfoList(list);
 }
 
+TEST_F(etTestFocus, focus_lower2)
+{
+   etWin *tw = NULL;
+   Eina_Bool res = EINA_FALSE;
+   Eina_List *list = NULL, *l = NULL;
+
+   // init TC window, show=true, geom=true
+   initTC(EINA_TRUE, EINA_TRUE);
+
+   // make tw_green lower
+   res = registerTCWin(tw_green);
+   EXPECT_TRUE(res);
+   res = etRunner::get().setWinStack(tw_green, NULL, EINA_FALSE);
+   etRunner::get().waitEvent(E_TC_EVENT_TYPE_STACK_LOWER);
+   ASSERT_TRUE(res);
+
+   // Expected focus res:
+   // [Top] Blue[focused] -> Red -> ... -> Green [Bottom]
+   list = etRunner::get().getWinInfoList();
+   ASSERT_TRUE(list != NULL);
+
+   EINA_LIST_CAST_FOREACH(list, l, tw, etWin*)
+     {
+        if (tw->native_win == tw_blue->native_win)
+          ASSERT_TRUE(tw->Focus.obj);
+        else
+          ASSERT_FALSE(tw->Focus.obj);
+     }
+   etRunner::get().freeWinInfoList(list);
+}
+
 TEST_F(etTestFocus, focus_raise)
 {
    etWin *tw = NULL;
@@ -662,6 +693,37 @@ TEST_F(etTestFocus, focus_fullsize_lower)
    etRunner::get().freeWinInfoList(list);
 }
 
+TEST_F(etTestFocus, focus_fullsize_lower2)
+{
+   etWin *tw = NULL;
+   Eina_Bool res = EINA_FALSE;
+   Eina_List *list = NULL, *l = NULL;
+
+   // init TC window, show=true, geom=false
+   initTC(EINA_TRUE, EINA_FALSE);
+
+   // make tw_green lower
+   res = registerTCWin(tw_green);
+   EXPECT_TRUE(res);
+   res = etRunner::get().setWinStack(tw_green, NULL, EINA_FALSE);
+   etRunner::get().waitEvent(E_TC_EVENT_TYPE_STACK_LOWER);
+   ASSERT_TRUE(res);
+
+   // Expected focus res:
+   // [Top] Blue[focused] -> Red -> ... -> Green [Bottom]
+   list = etRunner::get().getWinInfoList();
+   ASSERT_TRUE(list != NULL);
+
+   EINA_LIST_CAST_FOREACH(list, l, tw, etWin*)
+     {
+        if (tw->native_win == tw_blue->native_win)
+          ASSERT_TRUE(tw->Focus.obj);
+        else
+          ASSERT_FALSE(tw->Focus.obj);
+     }
+   etRunner::get().freeWinInfoList(list);
+}
+
 TEST_F(etTestFocus, focus_fullsize_raise)
 {
    etWin *tw = NULL;