0014_transient_for_below: add transient_for_below_activate test 56/296956/1
authorDoyoun Kang <doyoun.kang@samsung.com>
Tue, 8 Aug 2023 02:47:15 +0000 (11:47 +0900)
committerDoyoun Kang <doyoun.kang@samsung.com>
Tue, 8 Aug 2023 02:47:15 +0000 (11:47 +0900)
Change-Id: I50105cea73e41e1c7512d371d460161fa81bf028

src/testcase/0014_transient_for_below.cpp

index 7ece1c21d8d60b7681f355e6daa409784f14db65..87e288ac9270bac9381b4fa0f0ca8e7cbed2e497 100644 (file)
@@ -413,6 +413,68 @@ TEST_F(etTestTransientForBelow, transient_for_below_raise)
    //ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE);
 }
 
+TEST_F(etTestTransientForBelow, transient_for_below_activate)
+{
+   etWin *tw = NULL;
+   etWin *tw_child = NULL;
+   etWin *tw_child2 = NULL;
+   Eina_List *list = NULL, *l = NULL;
+   int pass_count = 0;
+
+   // init TC window, show=true, geom=true
+   initTC(EINA_TRUE);
+
+   makeTransientBelowChild(&tw_child, tw_parent, 80, 80, 300, 300, E_TC_WIN_COLOR_BLUE, "TCWin_Normal_child");
+   makeTransientBelowChild(&tw_child2, tw_parent, 110, 110, 300, 300, E_TC_WIN_COLOR_GREEN, "TCWin_Normal_child2");
+
+   // Expected stack res:
+   // [Top] tw_parent -> tw_child -> tw_child2 -> tw_base [Bottom]
+
+   // Raise tw_child2
+   etRunner::get().setWinActivate(tw_child2);
+   ASSERT_EVENT(tw_child2, E_TC_EVENT_TYPE_STACK_RAISE);
+
+   // Expected stack res:
+   // [Top] tw_parent -> tw_child2 -> tw_child -> tw_base [Bottom]
+   list = etRunner::get().getWinInfoList();
+   ASSERT_TRUE(list != NULL);
+
+   EINA_LIST_CAST_FOREACH(list, l, tw, etWin*)
+     {
+        if (tw->layer > 200) continue;
+
+        if (pass_count == 0)
+          {
+             ASSERT_EQ(tw->native_win, tw_parent->native_win);
+             pass_count++;
+             continue;
+          }
+        else if (pass_count == 1)
+          {
+             ASSERT_EQ(tw->native_win, tw_child2->native_win);
+             pass_count++;
+             continue;
+          }
+        else if (pass_count == 2)
+          {
+             ASSERT_EQ(tw->native_win, tw_child->native_win);
+             pass_count++;
+             continue;
+          }
+        else
+          {
+             ASSERT_EQ(tw->native_win, tw_base->native_win);
+             pass_count++;
+          }
+
+        break;
+     }
+   etRunner::get().freeWinInfoList(list);
+
+   ASSERT_EQ(4, pass_count);
+   //ASSERT_EQ(etRunner::get().verifyTC(testCaseName, testName), EINA_TRUE);
+}
+
 TEST_F(etTestTransientForBelow, transient_for_below_lower)
 {
    etWin *tw = NULL;