e_test_main.cpp \
e_test_event.h \
e_test_event.cpp \
+e_test_base.h \
+e_test_base.cpp \
e_test_win.h \
e_test_win.cpp \
e_test_util.h \
--- /dev/null
+#include "e_test_base.h"
+
+using ::testing::Test;
+
+etTCBase::~etTCBase()
+{
+ etWin *tw = NULL;
+ numGeomTw = 0;
+ numTw = 0;
+
+ // if there are any error, print list of window
+ if (HasFailure())
+ {
+ etRunner::get().printWinInfoList();
+ etRunner::get().waitForDestroy();
+ }
+
+ // remove register win
+ if (tw_register)
+ {
+ etRunner::get().deregisterWin(tw_register);
+ tw_register = NULL;
+ }
+
+ // remove all testcase win
+ if (tw_list)
+ {
+ EINA_LIST_CAST_FREE(tw_list, tw, etWin*)
+ {
+ if (tw)
+ {
+ tw->hide();
+ delete tw;
+ tw = NULL;
+ }
+ }
+ }
+
+ // remove win info list
+ if (etRunner::get().hasLastWinInfoList())
+ etRunner::get().freeLastWinInfoList();
+}
+
+etWin *
+etTCBase::initNormalWin(const char *name, Eina_Bool show_win, Eina_Bool usr_geom)
+{
+ Eina_Bool res = EINA_FALSE;
+ etWin *tw = new etWin();
+
+ res = tw->init(NULL,
+ ELM_WIN_BASIC,
+ EINA_FALSE,
+ name? name : "TCWin_Normal",
+ (100*numGeomTw), (100*numGeomTw), 400, 400, usr_geom,
+ (E_TC_Win_Color) ((numTw % E_TC_WIN_COLOR_CYAN) + 2));
+ EINA_SAFETY_ON_FALSE_GOTO(res, err);
+ tw->native_win = etRunner::get().getWinId(tw->elm_win);
+
+ if (show_win)
+ {
+ res = showTCWin(tw);
+ EINA_SAFETY_ON_FALSE_GOTO(res, err);
+ }
+
+ numTw++;
+ if (usr_geom) numGeomTw++;
+
+ tw_list = eina_list_append(tw_list, tw);
+
+ return tw;
+
+err:
+ delete tw;
+ return NULL;
+}
+
+etWin *
+etTCBase::initNotiWin(const char *name, Eina_Bool show_win, Eina_Bool usr_geom, Eina_Bool set_noti_level_normal)
+{
+ Eina_Bool res = EINA_FALSE;
+ etWin *tw = new etWin();
+
+ res = tw->init(NULL,
+ ELM_WIN_NOTIFICATION,
+ EINA_FALSE,
+ name? name : "TCWin_Noti",
+ (100*numGeomTw), (100*numGeomTw), 400, 400, usr_geom,
+ (E_TC_Win_Color) ((numTw % E_TC_WIN_COLOR_CYAN) + 2));
+ EINA_SAFETY_ON_FALSE_GOTO(res, err);
+ tw->native_win = etRunner::get().getWinId(tw->elm_win);
+
+ if (set_noti_level_normal)
+ etRunner::get().setWinNotiLevel(tw, EFL_UTIL_NOTIFICATION_LEVEL_MEDIUM);
+
+ if (show_win)
+ {
+ res = showTCWin(tw);
+ EINA_SAFETY_ON_FALSE_GOTO(res, err);
+ }
+
+ numTw++;
+ if (usr_geom) numGeomTw++;
+
+ tw_list = eina_list_append(tw_list, tw);
+
+ return tw;
+
+err:
+ delete tw;
+ return NULL;
+}
+
+Eina_Bool
+etTCBase::registerTCWin(etWin *tw)
+{
+ Eina_Bool res = EINA_FALSE;
+
+ EINA_SAFETY_ON_NULL_RETURN_VAL(tw, EINA_FALSE);
+ EINA_SAFETY_ON_TRUE_RETURN_VAL(tw == tw_register, EINA_TRUE);
+
+ if (tw_register)
+ {
+ res = etRunner::get().deregisterWin(tw_register);
+ EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
+
+ tw_register = NULL;
+ }
+
+ res = etRunner::get().registerWin(tw);
+ EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
+
+ tw_register = tw;
+
+ return EINA_TRUE;
+}
+
+Eina_Bool
+etTCBase::deregisterTCWin(etWin *tw)
+{
+ Eina_Bool res = EINA_FALSE;
+
+ EINA_SAFETY_ON_NULL_RETURN_VAL(tw, EINA_FALSE);
+ EINA_SAFETY_ON_NULL_RETURN_VAL(tw_register, EINA_TRUE);
+ EINA_SAFETY_ON_TRUE_RETURN_VAL(tw != tw_register, EINA_FALSE);
+
+ res = etRunner::get().deregisterWin(tw);
+ EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
+
+ tw_register = NULL;
+
+ return EINA_TRUE;
+}
+
+Eina_Bool
+etTCBase::showTCWin(etWin *tw)
+{
+ Eina_Bool res = EINA_FALSE;
+
+ EINA_SAFETY_ON_NULL_RETURN_VAL(tw, EINA_FALSE);
+ EINA_SAFETY_ON_NULL_RETURN_VAL(tw->elm_win, EINA_FALSE);
+
+ res = registerTCWin(tw);
+ EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
+
+ tw->updateGeometry();
+ tw->show();
+
+ etRunner::get().waitEvent(E_TC_EVENT_TYPE_VIS_ON);
+
+ return EINA_TRUE;
+}
+
+Eina_Bool
+etTCBase::removeTCWin(etWin *tw)
+{
+ Eina_Bool res = EINA_FALSE;
+
+ EINA_SAFETY_ON_NULL_RETURN_VAL(tw, EINA_FALSE);
+ EINA_SAFETY_ON_NULL_RETURN_VAL(tw->elm_win, EINA_FALSE);
+
+ res = registerTCWin(tw);
+ EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
+
+ tw->hide();
+
+ etRunner::get().waitEvent(E_TC_EVENT_TYPE_VIS_OFF);
+
+ res = deregisterTCWin(tw);
+ tw_list = eina_list_remove(tw_list, tw);
+ delete tw;
+
+ return EINA_TRUE;
+}
+
--- /dev/null
+#ifndef __ET_TESTCASE_BASE__
+#define __ET_TESTCASE_BASE__
+
+#include "e_test_event.h"
+
+using ::testing::Test;
+
+class etTCBase : public ::testing::Test
+{
+ public:
+ etTCBase() { };
+ ~etTCBase();
+
+ public:
+ etWin *initNormalWin(const char *name, Eina_Bool show_win, Eina_Bool usr_geom);
+ etWin *initNotiWin(const char *name, Eina_Bool show_win, Eina_Bool usr_geom, Eina_Bool set_noti_level_normal);
+
+ Eina_Bool registerTCWin(etWin *tw);
+ Eina_Bool deregisterTCWin(etWin *tw);
+ Eina_Bool showTCWin(etWin *tw);
+ Eina_Bool removeTCWin(etWin *tw);
+
+ private:
+ etWin *tw_register = NULL;
+ Eina_List *tw_list = NULL;
+
+ int numTw = 0; // number of wins
+ int numGeomTw = 0; // number of wins using usr_geom
+};
+
+#endif // end of __ET_TESTCASE_BASE__
int x, int y,
int w, int h,
Eina_Bool usr_geom,
- E_Layer layer,
E_TC_Win_Color color)
{
Evas_Object *bg = NULL;
const char *name,
int x, int y, int w, int h,
Eina_Bool usr_geom,
- E_Layer layer,
E_TC_Win_Color color);
void deInit();
void updateGeometry()
-#include <gtest/gtest.h>
#include "e_test_event.h"
+#include "e_test_base.h"
#define _WIN_ID 0x123456
-using ::testing::Test;
-
-class etTestEasy : public ::testing::Test
+class etTestEasy : public ::etTCBase
{
public:
etTestEasy() { };
- ~etTestEasy()
- {
- if (HasFailure()) etRunner::get().waitForDestroy();
- };
+ ~etTestEasy() { };
};
static void
-#include <gtest/gtest.h>
#include "e_test_event.h"
+#include "e_test_base.h"
-using ::testing::Test;
-
-class etTestBaseOperation : public ::testing::Test
-{
-public:
- etTestBaseOperation() { };
- ~etTestBaseOperation()
- {
- if (HasFailure()) etRunner::get().waitForDestroy();
-
- if (tw)
- {
- etRunner::get().deregisterWin(tw);
- tw->deInit();
- delete tw;
- tw = NULL;
- }
-
- if (etRunner::get().hasLastWinInfoList())
- etRunner::get().freeLastWinInfoList();
- };
-
-protected:
- etWin *tw = NULL;
-
- Eina_Bool initTC(Eina_Bool alpha);
-};
-
-Eina_Bool
-etTestBaseOperation::initTC(Eina_Bool alpha)
+class etTestBaseOperation : public ::etTCBase
{
- Eina_Bool res = EINA_FALSE;
+ public:
+ etTestBaseOperation() { };
+ ~etTestBaseOperation() { };
- tw = new etWin();
- tw->init(NULL,
- ELM_WIN_BASIC,
- alpha,
- "E_Testcase_Window",
- 0, 0, 320, 320, EINA_FALSE,
- E_LAYER_CLIENT_NORMAL,
- E_TC_WIN_COLOR_GREEN);
- EINA_SAFETY_ON_NULL_RETURN_VAL(tw, EINA_FALSE);
- tw->native_win = etRunner::get().getWinId(tw->elm_win);
+ protected:
+ etWin *tw = NULL;
- res = etRunner::get().registerWin(tw);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
+ void initTC(Eina_Bool alpha_set);
+};
- tw->updateGeometry();
- tw->show();
+void
+etTestBaseOperation::initTC(Eina_Bool alpha_set)
+{
+ tw = initNormalWin("TCWin_Normal", EINA_FALSE, EINA_TRUE);
+ ASSERT_TRUE(tw != NULL) << "failed to initiation window";
- etRunner::get().waitEvent(E_TC_EVENT_TYPE_VIS_ON);
+ if (alpha_set)
+ elm_win_alpha_set(tw->elm_win, alpha_set);
- return EINA_TRUE;
+ ASSERT_TRUE(showTCWin(tw)) << "failed to show window";
}
TEST_F(etTestBaseOperation, win_show)
{
- Eina_Bool res = EINA_FALSE;
-
- res = initTC(EINA_FALSE);
- ASSERT_TRUE(res);
+ initTC(EINA_FALSE);
}
TEST_F(etTestBaseOperation, win_stack)
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_FALSE);
- ASSERT_TRUE(res);
+ initTC(EINA_FALSE);
list = etRunner::get().getWinInfoList();
ASSERT_TRUE(list != NULL);
TEST_F(etTestBaseOperation, alpha_win_show)
{
- Eina_Bool res = EINA_FALSE;
-
- res = initTC(EINA_TRUE);
- ASSERT_TRUE(res);
+ initTC(EINA_TRUE);
}
TEST_F(etTestBaseOperation, alpha_win_stack)
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE);
- ASSERT_TRUE(res);
+ initTC(EINA_TRUE);
list = etRunner::get().getWinInfoList();
ASSERT_TRUE(list != NULL);
}
etRunner::get().freeWinInfoList(list);
- ASSERT_TRUE(EINA_TRUE);
+ ASSERT_TRUE(res);
}
-#include <gtest/gtest.h>
#include "e_test_event.h"
+#include "e_test_base.h"
-using ::testing::Test;
-
-class etTestBaseMulti : public ::testing::Test
-{
-public:
- etTestBaseMulti() { };
- ~etTestBaseMulti()
- {
- if (HasFailure()) etRunner::get().waitForDestroy();
- if (tw_register) etRunner::get().deregisterWin(tw_register);
- if (tw_red) delete tw_red;
- if (tw_blue) delete tw_blue;
- if (tw_green) delete tw_green;
- if (etRunner::get().hasLastWinInfoList()) etRunner::get().freeLastWinInfoList();
- };
-
-protected:
- etWin *tw_red = NULL;
- etWin *tw_green = NULL;
- etWin *tw_blue = NULL;
- etWin *tw_register = NULL;
-
- Eina_Bool registerTCWin(etWin *tw);
- Eina_Bool initTC(Eina_Bool show_win, Eina_Bool use_geom);
- Eina_Bool showTCWin(etWin *tw);
-};
-
-Eina_Bool
-etTestBaseMulti::registerTCWin(etWin *tw)
-{
- Eina_Bool res = EINA_FALSE;
-
- EINA_SAFETY_ON_NULL_RETURN_VAL(tw, EINA_FALSE);
- EINA_SAFETY_ON_TRUE_RETURN_VAL(tw == tw_register, EINA_TRUE);
-
- if (tw_register)
- {
- etRunner::get().deregisterWin(tw_register);
- tw_register = NULL;
- }
-
- res = etRunner::get().registerWin(tw);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
-
- tw_register = tw;
-
- return EINA_TRUE;
-}
-
-Eina_Bool
-etTestBaseMulti::initTC(Eina_Bool show_win,
- Eina_Bool use_geom)
+class etTestBaseMulti : public ::etTCBase
{
- tw_red = new etWin();
- tw_red->init(NULL,
- ELM_WIN_BASIC,
- EINA_FALSE,
- "etWin Red",
- 0, 0, 400, 400, use_geom,
- E_LAYER_CLIENT_NORMAL,
- E_TC_WIN_COLOR_RED);
- EINA_SAFETY_ON_NULL_RETURN_VAL(tw_red, EINA_FALSE);
- tw_red->native_win = etRunner::get().getWinId(tw_red->elm_win);
-
- if (show_win)
- {
- tw_red->updateGeometry();
- tw_red->show();
- }
-
- tw_green = new etWin();
- tw_green->init(NULL,
- ELM_WIN_BASIC,
- EINA_FALSE,
- "etWin Green",
- 50, 50, 400, 400, use_geom,
- E_LAYER_CLIENT_NORMAL,
- E_TC_WIN_COLOR_GREEN);
- EINA_SAFETY_ON_NULL_RETURN_VAL(tw_green, EINA_FALSE);
+ public:
+ etTestBaseMulti() { };
+ ~etTestBaseMulti() { };
- tw_green->native_win = etRunner::get().getWinId(tw_green->elm_win);
+ protected:
+ etWin *tw_red = NULL;
+ etWin *tw_green = NULL;
+ etWin *tw_blue = NULL;
- if (show_win)
- {
- tw_green->updateGeometry();
- tw_green->show();
- }
-
- tw_blue = new etWin();
- tw_blue->init(NULL,
- ELM_WIN_BASIC,
- EINA_FALSE,
- "etWin Blue",
- 100, 100, 400, 400, use_geom,
- E_LAYER_CLIENT_NORMAL,
- E_TC_WIN_COLOR_BLUE);
- EINA_SAFETY_ON_NULL_RETURN_VAL(tw_blue, EINA_FALSE);
-
- tw_blue->native_win = etRunner::get().getWinId(tw_blue->elm_win);
-
- if (show_win)
- {
- registerTCWin(tw_blue);
-
- tw_blue->updateGeometry();
- tw_blue->show();
-
- etRunner::get().waitEvent(E_TC_EVENT_TYPE_VIS_ON);
- }
-
- return EINA_TRUE;
-}
+ void initTC(Eina_Bool show_win, Eina_Bool usr_geom);
+};
-Eina_Bool
-etTestBaseMulti::showTCWin(etWin *tw)
+void
+etTestBaseMulti::initTC(Eina_Bool show_win, Eina_Bool usr_geom)
{
- Eina_Bool res = EINA_FALSE;
-
- EINA_SAFETY_ON_NULL_RETURN_VAL(tw, EINA_FALSE);
-
- res = registerTCWin(tw);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
+ tw_red = initNormalWin("TCWin_Normal_red", show_win, usr_geom);
+ ASSERT_TRUE(tw_red != NULL) << "failed to initiation window";
- tw->updateGeometry();
- tw->show();
- etRunner::get().waitEvent(E_TC_EVENT_TYPE_VIS_ON);
+ tw_green = initNormalWin("TCWin_Normal_green", show_win, usr_geom);
+ ASSERT_TRUE(tw_green != NULL) << "failed to initiation window";
- return EINA_TRUE;
+ tw_blue = initNormalWin("TCWin_Normal_blue", show_win, usr_geom);
+ ASSERT_TRUE(tw_blue != NULL) << "failed to initiation window";
}
TEST_F(etTestBaseMulti, multi_all_wins_basic)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_TRUE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// Expected stack res:
// [Top] Blue -> Green -> Red [Bottom]
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_FALSE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=false, geom=true
+ initTC(EINA_FALSE, EINA_TRUE);
// show red
res = showTCWin(tw_red);
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_FALSE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=false, geom=true
+ initTC(EINA_FALSE, EINA_TRUE);
// show blue
res = showTCWin(tw_blue);
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_FALSE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=false, geom=true
+ initTC(EINA_FALSE, EINA_TRUE);
// show green
res = showTCWin(tw_green);
TEST_F(etTestBaseMulti, multi_all_wins_raise1)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_TRUE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// Raise Red
etRunner::get().setWinStack(tw_red, NULL, EINA_TRUE);
TEST_F(etTestBaseMulti, multi_all_wins_raise2)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_TRUE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// Raise Green
etRunner::get().setWinStack(tw_green, NULL, EINA_TRUE);
TEST_F(etTestBaseMulti, multi_all_wins_stack_above1)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_TRUE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// Raise Red on the Green
etRunner::get().setWinStack(tw_red, tw_green, EINA_TRUE);
TEST_F(etTestBaseMulti, multi_all_wins_stack_above2)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_TRUE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// Raise Blue on the Red
etRunner::get().setWinStack(tw_blue, tw_red, EINA_TRUE);
TEST_F(etTestBaseMulti, multi_all_wins_stack_above3)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_TRUE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// Raise Red on the Blue
etRunner::get().setWinStack(tw_red, tw_blue, EINA_TRUE);
TEST_F(etTestBaseMulti, multi_all_wins_lower1)
{
etWin *tw = NULL, *tw_above = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_TRUE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// Lower Blue
etRunner::get().setWinStack(tw_blue, NULL, EINA_FALSE);
TEST_F(etTestBaseMulti, multi_all_wins_lower2)
{
etWin *tw = NULL, *tw_above = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_TRUE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// Lower Green
etRunner::get().setWinStack(tw_green, NULL, EINA_FALSE);
TEST_F(etTestBaseMulti, multi_all_full_wins_basic)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_TRUE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// Expected stack res:
// [Top] Blue -> Green -> Red [Bottom]
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_FALSE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=false, geom=false
+ initTC(EINA_FALSE, EINA_FALSE);
// show red
res = showTCWin(tw_red);
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_FALSE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=false, geom=false
+ initTC(EINA_FALSE, EINA_FALSE);
// show blue
res = showTCWin(tw_blue);
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_FALSE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=false, geom=false
+ initTC(EINA_FALSE, EINA_FALSE);
// show green
res = showTCWin(tw_green);
TEST_F(etTestBaseMulti, multi_all_full_wins_raise1)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_TRUE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// Raise Red
etRunner::get().setWinStack(tw_red, NULL, EINA_TRUE);
TEST_F(etTestBaseMulti, multi_all_full_wins_raise2)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_TRUE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// Raise Green
etRunner::get().setWinStack(tw_green, NULL, EINA_TRUE);
TEST_F(etTestBaseMulti, multi_all_full_wins_stack_above1)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_TRUE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// Raise Red on the Green
etRunner::get().setWinStack(tw_red, tw_green, EINA_TRUE);
TEST_F(etTestBaseMulti, multi_all_full_wins_stack_above2)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_TRUE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// Raise Blue on the Red
etRunner::get().setWinStack(tw_blue, tw_red, EINA_TRUE);
TEST_F(etTestBaseMulti, multi_all_full_wins_stack_above3)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_TRUE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// Raise Red on the Blue
etRunner::get().setWinStack(tw_red, tw_blue, EINA_TRUE);
TEST_F(etTestBaseMulti, multi_all_full_wins_lower1)
{
etWin *tw = NULL, *tw_above = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_TRUE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// Lower Blue
etRunner::get().setWinStack(tw_blue, NULL, EINA_FALSE);
TEST_F(etTestBaseMulti, multi_all_full_wins_lower2)
{
etWin *tw = NULL, *tw_above = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_TRUE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// Lower Green
etRunner::get().setWinStack(tw_green, NULL, EINA_FALSE);
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_FALSE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=false, geom=true
+ initTC(EINA_FALSE, EINA_TRUE);
// show green
res = showTCWin(tw_green);
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_FALSE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=false, geom=true
+ initTC(EINA_FALSE, EINA_TRUE);
// show blue
res = showTCWin(tw_blue);
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_FALSE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=false, geom=true
+ initTC(EINA_FALSE, EINA_TRUE);
// show red
res = showTCWin(tw_red);
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_FALSE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=false, geom=false
+ initTC(EINA_FALSE, EINA_FALSE);
// show green
res = showTCWin(tw_green);
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_FALSE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=false, geom=false
+ initTC(EINA_FALSE, EINA_FALSE);
// show blue
res = showTCWin(tw_blue);
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC(EINA_FALSE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=false, geom=false
+ initTC(EINA_FALSE, EINA_FALSE);
// show red
res = showTCWin(tw_red);
#include "e_test_event.h"
+#include "e_test_base.h"
-using ::testing::Test;
-
-class etTestTransientFor : public ::testing::Test
-{
-public:
- etTestTransientFor() { };
- ~etTestTransientFor()
- {
- if (HasFailure()) etRunner::get().waitForDestroy();
- if (tw_register) etRunner::get().deregisterWin(tw_register);
- if (tw_base) delete tw_base;
- if (tw_parent) delete tw_parent;
- if (tw_child) delete tw_child;
- if (etRunner::get().hasLastWinInfoList()) etRunner::get().freeLastWinInfoList();
- };
-
-protected:
- etWin *tw_base = NULL;
- etWin *tw_parent = NULL;
- etWin *tw_child = NULL;
- etWin *tw_register = NULL;
-
- Eina_Bool registerTCWin(etWin *tw);
- Eina_Bool initTC();
- Eina_Bool showTCWin(etWin *tw);
-};
-
-Eina_Bool
-etTestTransientFor::registerTCWin(etWin *tw)
-{
- Eina_Bool res = EINA_FALSE;
-
- EINA_SAFETY_ON_NULL_RETURN_VAL(tw, EINA_FALSE);
-
- if (tw_register)
- {
- etRunner::get().deregisterWin(tw_register);
- tw_register = NULL;
- }
-
- res = etRunner::get().registerWin(tw);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
-
- tw_register = tw;
-
- return EINA_TRUE;
-}
-
-Eina_Bool
-etTestTransientFor::initTC()
+class etTestTransientFor : public ::etTCBase
{
- Eina_Bool res = EINA_FALSE;
+ public:
+ etTestTransientFor() { };
+ ~etTestTransientFor() { };
- tw_parent = new etWin();
- tw_parent->init(NULL,
- ELM_WIN_BASIC,
- EINA_FALSE,
- "etWin Parent",
- 0, 0, 400, 400, EINA_FALSE,
- E_LAYER_CLIENT_NORMAL,
- E_TC_WIN_COLOR_BLUE);
- EINA_SAFETY_ON_NULL_RETURN_VAL(tw_parent, EINA_FALSE);
-
- tw_parent->native_win = etRunner::get().getWinId(tw_parent->elm_win);
-
- res = showTCWin(tw_parent);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
-
- tw_child = new etWin();
- tw_child->init(NULL,
- ELM_WIN_BASIC,
- EINA_FALSE,
- "etWin Child",
- 0, 0, 320, 320, EINA_FALSE,
- E_LAYER_CLIENT_NORMAL,
- E_TC_WIN_COLOR_RED);
- EINA_SAFETY_ON_NULL_RETURN_VAL(tw_child, EINA_FALSE);
- tw_child->native_win = etRunner::get().getWinId(tw_child->elm_win);
-
- res = showTCWin(tw_child);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
-
- tw_base = new etWin();
- tw_base->init(NULL,ELM_WIN_BASIC,
- EINA_FALSE,
- "etWin Base",
- 200, 200, 500, 500, EINA_FALSE,
- E_LAYER_CLIENT_NORMAL,
- E_TC_WIN_COLOR_RED);
- EINA_SAFETY_ON_NULL_RETURN_VAL(tw_base, EINA_FALSE);
- tw_base->native_win = etRunner::get().getWinId(tw_base->elm_win);
-
- res = showTCWin(tw_base);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
+ protected:
+ etWin *tw_parent = NULL;
+ etWin *tw_child = NULL;
+ etWin *tw_base = NULL;
- // set transient_for
- res = etRunner::get().setWinTransientFor(tw_child,
- tw_parent,
- EINA_TRUE);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
-
- return EINA_TRUE;
-}
+ void initTC(Eina_Bool show_win, Eina_Bool usr_geom);
+};
-Eina_Bool
-etTestTransientFor::showTCWin(etWin *tw)
+void
+etTestTransientFor::initTC(Eina_Bool show_win, Eina_Bool usr_geom)
{
- Eina_Bool res = EINA_FALSE;
-
- res = registerTCWin(tw);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
+ tw_parent = initNormalWin("TCWin_Normal_parent", show_win, usr_geom);
+ ASSERT_TRUE(tw_parent != NULL) << "failed to initiation window";
- tw->updateGeometry();
- tw->show();
- etRunner::get().waitEvent(E_TC_EVENT_TYPE_VIS_ON);
+ tw_child = initNormalWin("TCWin_Normal_child", show_win, usr_geom);
+ ASSERT_TRUE(tw_child != NULL) << "failed to initiation window";
- return EINA_TRUE;
+ tw_base = initNormalWin("TCWin_Normal_normal", show_win, usr_geom);
+ ASSERT_TRUE(tw_base != NULL) << "failed to initiation window";
}
TEST_F(etTestTransientFor, transient_for_basic)
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC();
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
+
+ // set transient_for
+ res = etRunner::get().setWinTransientFor(tw_child, tw_parent, EINA_TRUE);
ASSERT_TRUE(res);
// Expected stack res:
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC();
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
+
+ // set transient_for
+ res = etRunner::get().setWinTransientFor(tw_child, tw_parent, EINA_TRUE);
ASSERT_TRUE(res);
res = registerTCWin(tw_parent);
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC();
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
+
+ // set transient_for
+ res = etRunner::get().setWinTransientFor(tw_child, tw_parent, EINA_TRUE);
ASSERT_TRUE(res);
res = registerTCWin(tw_parent);
Eina_List *list = NULL, *l = NULL;
int pass_count = 0;
- res = initTC();
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
res = registerTCWin(tw_parent);
EXPECT_TRUE(res);
+ // set transient_for
+ res = etRunner::get().setWinTransientFor(tw_child, tw_parent, EINA_TRUE);
+ ASSERT_TRUE(res);
+
// tw_parent raise for prepare lower
res = etRunner::get().setWinStack(tw_parent, tw_base, EINA_TRUE);
etRunner::get().waitEvent(E_TC_EVENT_TYPE_STACK_ABOVE);
#include "e_test_event.h"
+#include "e_test_base.h"
#include <efl_util.h>
-using ::testing::Test;
-
-class etTestNotification : public ::testing::Test
-{
-public:
- etTestNotification() { };
- ~etTestNotification()
- {
- if (HasFailure()) etRunner::get().waitForDestroy();
- if (tw_register) etRunner::get().deregisterWin(tw_register);
- if (tw_normal) delete tw_normal;
- if (tw_noti1) delete tw_noti1;
- if (tw_noti2) delete tw_noti2;
- if (etRunner::get().hasLastWinInfoList()) etRunner::get().freeLastWinInfoList();
- };
-
-protected:
- etWin *tw_normal = NULL;
- etWin *tw_noti1 = NULL;
- etWin *tw_noti2 = NULL;
- etWin *tw_register = NULL;
-
- Eina_Bool initTC(Eina_Bool use_geom);
- Eina_Bool registerTCWin(etWin *tw);
-};
-
-Eina_Bool
-etTestNotification::initTC(Eina_Bool use_geom)
+class etTestNotification : public ::etTCBase
{
- Eina_Bool res = EINA_FALSE;
- tw_normal = new etWin();
- tw_normal->init(NULL,
- ELM_WIN_BASIC,
- EINA_FALSE,
- "etWin Normal",
- 0, 0, 400, 400, use_geom,
- E_LAYER_CLIENT_NORMAL,
- E_TC_WIN_COLOR_RED);
- EINA_SAFETY_ON_NULL_RETURN_VAL(tw_normal, EINA_FALSE);
- tw_normal->native_win = etRunner::get().getWinId(tw_normal->elm_win);
-
- tw_normal->updateGeometry();
- tw_normal->show();
-
- tw_noti1 = new etWin();
- tw_noti1->init(NULL,
- ELM_WIN_NOTIFICATION,
- EINA_FALSE,
- "etWin Noti_1",
- 100, 100, 400, 400, use_geom,
- E_LAYER_CLIENT_NORMAL,
- E_TC_WIN_COLOR_GREEN);
- EINA_SAFETY_ON_NULL_RETURN_VAL(tw_noti1, EINA_FALSE);
- tw_noti1->native_win = etRunner::get().getWinId(tw_noti1->elm_win);
-
- tw_noti1->updateGeometry();
- tw_noti1->show();
-
- tw_noti2 = new etWin();
- tw_noti2->init(NULL,
- ELM_WIN_NOTIFICATION,
- EINA_FALSE,
- "etWin Noti_2",
- 50, 200, 400, 400, use_geom,
- E_LAYER_CLIENT_NORMAL,
- E_TC_WIN_COLOR_BLUE);
- EINA_SAFETY_ON_NULL_RETURN_VAL(tw_noti2, EINA_FALSE);
- tw_noti2->native_win = etRunner::get().getWinId(tw_noti2->elm_win);
-
- tw_noti2->updateGeometry();
- tw_noti2->show();
-
- // register window
- res = registerTCWin(tw_normal);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
-
- etRunner::get().waitEvent(E_TC_EVENT_TYPE_VIS_ON);
-
- return EINA_TRUE;
-}
+ public:
+ etTestNotification() { };
+ ~etTestNotification() { };
-Eina_Bool
-etTestNotification::registerTCWin(etWin *tw)
-{
- Eina_Bool res = EINA_FALSE;
- EINA_SAFETY_ON_NULL_RETURN_VAL(tw, EINA_FALSE);
+ protected:
+ etWin *tw_normal = NULL;
+ etWin *tw_noti1 = NULL;
+ etWin *tw_noti2 = NULL;
- if (tw_register)
- {
- etRunner::get().deregisterWin(tw_register);
- tw_register = NULL;
- }
+ void initTC(Eina_Bool usr_geom);
+};
- res = etRunner::get().registerWin(tw);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
+void
+etTestNotification::initTC(Eina_Bool usr_geom)
+{
+ tw_normal = initNormalWin("TCWin_Normal_normal", EINA_TRUE, usr_geom);
+ ASSERT_TRUE(tw_normal != NULL) << "failed to initiation window";
- tw_register = tw;
+ tw_noti1 = initNotiWin("TCWin_Noti_1", EINA_TRUE, usr_geom, EINA_FALSE);
+ ASSERT_TRUE(tw_noti1 != NULL) << "failed to initiation window";
- return EINA_TRUE;
+ tw_noti2 = initNotiWin("TCWin_Noti_2", EINA_TRUE, usr_geom, EINA_FALSE);
+ ASSERT_TRUE(tw_noti2 != NULL) << "failed to initiation window";
}
TEST_F(etTestNotification, notification_level_default)
efl_util_notification_level_e level = EFL_UTIL_NOTIFICATION_LEVEL_NONE;
int pass_count = 0;
- res = initTC(EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, geom=true
+ initTC(EINA_TRUE);
// set tw_noti1 to notification layer
res = etRunner::get().setWinNotiLevel(tw_noti1,
efl_util_notification_level_e level = EFL_UTIL_NOTIFICATION_LEVEL_NONE;
int pass_count = 0;
- res = initTC(EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, geom=true
+ initTC(EINA_TRUE);
// set tw_noti1 to notification layer
res = etRunner::get().setWinNotiLevel(tw_noti1,
efl_util_notification_level_e level = EFL_UTIL_NOTIFICATION_LEVEL_NONE;
int pass_count = 0;
- res = initTC(EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, geom=true
+ initTC(EINA_TRUE);
// set tw_noti1 to notification layer
res = etRunner::get().setWinNotiLevel(tw_noti1,
efl_util_notification_level_e level = EFL_UTIL_NOTIFICATION_LEVEL_NONE;
int pass_count = 0;
- res = initTC(EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, geom=true
+ initTC(EINA_TRUE);
// set tw_noti1 to notification layer
res = etRunner::get().setWinNotiLevel(tw_noti1,
efl_util_notification_level_e level = EFL_UTIL_NOTIFICATION_LEVEL_NONE;
int pass_count = 0;
- res = initTC(EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, geom=true
+ initTC(EINA_TRUE);
// set tw_noti1 to notification high
res = etRunner::get().setWinNotiLevel(tw_noti1,
efl_util_notification_level_e level = EFL_UTIL_NOTIFICATION_LEVEL_NONE;
int pass_count = 0;
- res = initTC(EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, geom=true
+ initTC(EINA_TRUE);
// set tw_noti1 to notification default
res = etRunner::get().setWinNotiLevel(tw_noti1,
efl_util_notification_level_e level = EFL_UTIL_NOTIFICATION_LEVEL_NONE;
int pass_count = 0;
- res = initTC(EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, geom=false
+ initTC(EINA_FALSE);
// set tw_noti1 to notification layer
res = etRunner::get().setWinNotiLevel(tw_noti1,
efl_util_notification_level_e level = EFL_UTIL_NOTIFICATION_LEVEL_NONE;
int pass_count = 0;
- res = initTC(EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, geom=false
+ initTC(EINA_FALSE);
// set tw_noti1 to notification layer
res = etRunner::get().setWinNotiLevel(tw_noti1,
efl_util_notification_level_e level = EFL_UTIL_NOTIFICATION_LEVEL_NONE;
int pass_count = 0;
- res = initTC(EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, geom=false
+ initTC(EINA_FALSE);
// set tw_noti1 to notification layer
res = etRunner::get().setWinNotiLevel(tw_noti1,
efl_util_notification_level_e level = EFL_UTIL_NOTIFICATION_LEVEL_NONE;
int pass_count = 0;
- res = initTC(EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, geom=false
+ initTC(EINA_FALSE);
// set tw_noti1 to notification layer
res = etRunner::get().setWinNotiLevel(tw_noti1,
efl_util_notification_level_e level = EFL_UTIL_NOTIFICATION_LEVEL_NONE;
int pass_count = 0;
- res = initTC(EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, geom=false
+ initTC(EINA_FALSE);
// set tw_noti1 to notification high
res = etRunner::get().setWinNotiLevel(tw_noti1,
efl_util_notification_level_e level = EFL_UTIL_NOTIFICATION_LEVEL_NONE;
int pass_count = 0;
- res = initTC(EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, geom=false
+ initTC(EINA_FALSE);
// set tw_noti1 to notification default
res = etRunner::get().setWinNotiLevel(tw_noti1,
#include "e_test_event.h"
+#include "e_test_base.h"
#include <tzsh_screensaver_manager_service.h>
#include <tzsh_screensaver_service.h>
#define E_TEST_WORK_TIME 3.0
-using ::testing::Test;
-
-class etTestTzsh : public :: testing::Test
+class etTestTzsh : public ::etTCBase
{
-public:
- Eina_Bool chk_timeout_val_ = EINA_FALSE;
- Eina_Bool chk_ev_state_idle_timeout_ = EINA_FALSE;
- Eina_Bool chk_ev_state_not_idle_ = EINA_FALSE;
- int chk_cb_called_ = 0;
-
- tzsh_h tzsh = NULL;
- tzsh_window tz_win = 0x0;
- tzsh_screensaver_service_h tz_scrsaver = NULL;
- tzsh_screensaver_manager_service_h tz_scrsaver_mng = NULL;
-
- etTestTzsh()
- {
- chk_timeout_val_ = EINA_FALSE;
- chk_ev_state_idle_timeout_ = EINA_FALSE;
- chk_ev_state_not_idle_ = EINA_FALSE;
- chk_cb_called_ = 0;
- };
-
- ~etTestTzsh()
- {
- if (HasFailure()) etRunner::get().waitForDestroy();
- if (tz_scrsaver_mng) tzsh_screensaver_manager_service_destroy(tz_scrsaver_mng);
- if (tz_scrsaver) tzsh_screensaver_service_destroy(tz_scrsaver);
- if (tzsh) tzsh_destroy(tzsh);
- if (tw_base)
- {
- etRunner::get().deregisterWin(tw_base);
- delete tw_base;
- }
-
- if (etRunner::get().hasLastWinInfoList()) etRunner::get().freeLastWinInfoList();
- };
-
-protected:
- etWin *tw_base = NULL;
-
- Eina_Bool initTC();
+ public:
+ Eina_Bool chk_timeout_val_ = EINA_FALSE;
+ Eina_Bool chk_ev_state_idle_timeout_ = EINA_FALSE;
+ Eina_Bool chk_ev_state_not_idle_ = EINA_FALSE;
+ int chk_cb_called_ = 0;
+
+ tzsh_h tzsh = NULL;
+ tzsh_window tz_win = 0x0;
+ tzsh_screensaver_service_h tz_scrsaver = NULL;
+ tzsh_screensaver_manager_service_h tz_scrsaver_mng = NULL;
+
+ etTestTzsh()
+ {
+ chk_timeout_val_ = EINA_FALSE;
+ chk_ev_state_idle_timeout_ = EINA_FALSE;
+ chk_ev_state_not_idle_ = EINA_FALSE;
+ chk_cb_called_ = 0;
+ };
+
+ ~etTestTzsh()
+ {
+ if (tz_scrsaver_mng) tzsh_screensaver_manager_service_destroy(tz_scrsaver_mng);
+ if (tz_scrsaver) tzsh_screensaver_service_destroy(tz_scrsaver);
+ if (tzsh) tzsh_destroy(tzsh);
+ };
+
+ protected:
+ etWin *tw_base = NULL;
+
+ void initTC();
};
-Eina_Bool
+void
etTestTzsh::initTC()
{
- Eina_Bool res = EINA_FALSE;
-
- tw_base = new etWin();
- res = tw_base->init(NULL,
- ELM_WIN_BASIC,
- EINA_FALSE,
- "etWin Tzsh",
- 0, 0, 0, 0, EINA_FALSE,
- (E_Layer) 0,
- E_TC_WIN_COLOR_RED);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
-
- tw_base->native_win = etRunner::get().getWinId(tw_base->elm_win);
-
- res = etRunner::get().registerWin(tw_base);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
-
- return EINA_TRUE;
+ tw_base = initNormalWin("TCWin_Normal_base", EINA_FALSE, EINA_FALSE);
+ ASSERT_TRUE(tw_base != NULL) << "failed to initiation window";
}
/******************
{
Eina_Bool res = EINA_FALSE;
- res = initTC();
- ASSERT_TRUE(res);
+ initTC();
tzsh = tzsh_create(TZSH_TOOLKIT_TYPE_EFL);
ASSERT_TRUE(tzsh != NULL);
#include "e_test_event.h"
+#include "e_test_base.h"
-using ::testing::Test;
-
-class etTestRotation : public ::testing::Test
+class etTestRotation : public ::etTCBase
{
-public:
- etTestRotation() { };
- ~etTestRotation()
- {
- if (HasFailure()) etRunner::get().waitForDestroy();
- if (tw_register) etRunner::get().deregisterWin(tw_register);
- if (tw_base) delete tw_base;
-
- if (etRunner::get().hasLastWinInfoList())
- etRunner::get().freeLastWinInfoList();
- };
-
-protected:
- const int rots[4] = {0, 90, 180, 270};
- etWin *tw_base = NULL;
- etWin *tw_register = NULL;
-
- int saved_rot_ = 0;
-
- Eina_Bool initTC();
- Eina_Bool testWinRotation(etWin *tw, int rot);
+ public:
+ etTestRotation() { };
+ ~etTestRotation() { };
+
+ protected:
+ const int rots[4] = {0, 90, 180, 270};
+ int saved_rot_ = 0;
+
+ etWin *tw_base = NULL;
+
+ void initTC();
+ Eina_Bool testWinRotation(etWin *tw, int rot);
};
-Eina_Bool
+void
etTestRotation::initTC()
{
- Eina_Bool res = EINA_FALSE;
-
- tw_base = new etWin();
- res = tw_base->init(NULL,
- ELM_WIN_BASIC,
- EINA_FALSE,
- "etWin Rotation",
- 0, 0, 400, 400, EINA_FALSE,
- E_LAYER_CLIENT_NORMAL,
- E_TC_WIN_COLOR_BLUE);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
- tw_base->native_win = etRunner::get().getWinId(tw_base->elm_win);
+ tw_base = initNormalWin("TCWin_Normal_Rotation",EINA_TRUE, EINA_TRUE);
+ ASSERT_TRUE(tw_base != NULL) << "failed to initiation window";
// available rotations
elm_win_wm_rotation_available_rotations_set(tw_base->elm_win, rots, 4);
-
- res = etRunner::get().registerWin(tw_base);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
-
- tw_register = tw_base;
-
- tw_base->updateGeometry();
- tw_base->show();
- etRunner::get().waitEvent(E_TC_EVENT_TYPE_VIS_ON);
-
- return EINA_TRUE;
}
Eina_Bool
Eina_Bool res = EINA_FALSE;
int rot = 0;
- res = initTC();
- ASSERT_TRUE(res);
+ initTC();
res = etRunner::get().getWinInfo(tw_base);
ASSERT_TRUE(res);
#include "e_test_event.h"
+#include "e_test_base.h"
-using ::testing::Test;
-
-class etTestFocus : public ::testing::Test
+class etTestFocus : public ::etTCBase
{
-public:
- etTestFocus() { };
- ~etTestFocus()
- {
- if (HasFailure()) etRunner::get().waitForDestroy();
- if (tw_register)
- {
- etRunner::get().deregisterWin(tw_register);
- tw_register = NULL;
- }
- if (tw_red)
- {
- delete tw_red;
- tw_red = NULL;
- }
- if (tw_green)
- {
- delete tw_green;
- tw_green = NULL;
- }
- if (tw_blue)
- {
- delete tw_blue;
- tw_blue = NULL;
- }
- if (tw_blocker)
- {
- delete tw_blocker;
- tw_blocker = NULL;
- }
- if (etRunner::get().hasLastWinInfoList())
- etRunner::get().freeLastWinInfoList();
- };
-
-protected:
- etWin *tw_red = NULL;
- etWin *tw_green = NULL;
- etWin *tw_blue = NULL;
- etWin *tw_blocker = NULL;
- etWin *tw_register = NULL;
-
- Eina_Bool initTC(Eina_Bool show_win, Eina_Bool use_geom);
- Eina_Bool registerTCWin(etWin *tw);
- Eina_Bool showTCWin(etWin *tw);
-};
+ public:
+ etTestFocus() { };
+ ~etTestFocus() { };
-Eina_Bool
-etTestFocus::initTC(Eina_Bool show_win, Eina_Bool use_geom)
-{
- Eina_Bool res = EINA_FALSE;
+ protected:
+ etWin *tw_red = NULL;
+ etWin *tw_green = NULL;
+ etWin *tw_blue = NULL;
+ etWin *tw_blocker = NULL;
- tw_red = new etWin();
- res = tw_red->init(NULL,
- ELM_WIN_BASIC,
- EINA_FALSE,
- "etWin Red",
- 0, 0, 400, 400, use_geom,
- E_LAYER_CLIENT_NORMAL,
- E_TC_WIN_COLOR_RED);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
- tw_red->native_win = etRunner::get().getWinId(tw_red->elm_win);
-
- if (show_win)
- showTCWin(tw_red);
-
- tw_green = new etWin();
- res = tw_green->init(NULL,
- ELM_WIN_BASIC,
- EINA_FALSE,
- "etWin Green",
- 100, 100, 400, 400, use_geom,
- E_LAYER_CLIENT_NORMAL,
- E_TC_WIN_COLOR_GREEN);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
- tw_green->native_win = etRunner::get().getWinId(tw_green->elm_win);
-
- if (show_win)
- showTCWin(tw_green);
-
- tw_blue = new etWin();
- res = tw_blue->init(NULL,
- ELM_WIN_BASIC,
- EINA_FALSE,
- "etWin Blue",
- 200, 200, 400, 400, use_geom,
- E_LAYER_CLIENT_NORMAL,
- E_TC_WIN_COLOR_BLUE);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
- tw_blue->native_win = etRunner::get().getWinId(tw_blue->elm_win);
-
- if (show_win)
- showTCWin(tw_blue);
-
- tw_blocker = new etWin();
- res = tw_blocker->init(NULL,
- ELM_WIN_NOTIFICATION,
- EINA_FALSE,
- "etWin Blocker",
- 0, 0, 0, 0, EINA_FALSE,
- E_LAYER_CLIENT_NORMAL,
- E_TC_WIN_COLOR_CYAN);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
- tw_blocker->native_win = etRunner::get().getWinId(tw_blocker->elm_win);
-
- return EINA_TRUE;
-}
+ void initTC(Eina_Bool show_win, Eina_Bool usr_geom);
+};
-Eina_Bool
-etTestFocus::registerTCWin(etWin *tw)
+void
+etTestFocus::initTC(Eina_Bool show_win, Eina_Bool usr_geom)
{
- Eina_Bool res = EINA_FALSE;
-
- EINA_SAFETY_ON_NULL_RETURN_VAL(tw, EINA_FALSE);
-
- if (tw_register)
- {
- res = etRunner::get().deregisterWin(tw_register);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
-
- tw_register = NULL;
- }
+ tw_red = initNormalWin("TCWin_Normal_red", show_win, usr_geom);
+ ASSERT_TRUE(tw_red != NULL) << "failed to initiation window";
- res = etRunner::get().registerWin(tw);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
+ tw_green = initNormalWin("TCWin_Normal_green", show_win, usr_geom);
+ ASSERT_TRUE(tw_green != NULL) << "failed to initiation window";
- tw_register = tw;
+ tw_blue = initNormalWin("TCWin_Normal_blue", show_win, usr_geom);
+ ASSERT_TRUE(tw_blue != NULL) << "failed to initiation window";
- return EINA_TRUE;
-}
-
-Eina_Bool
-etTestFocus::showTCWin(etWin *tw)
-{
- Eina_Bool res = EINA_FALSE;
-
- EINA_SAFETY_ON_NULL_RETURN_VAL(tw, EINA_FALSE);
-
- res = registerTCWin(tw);
- EINA_SAFETY_ON_FALSE_RETURN_VAL(res, EINA_FALSE);
-
- tw->updateGeometry();
- tw->show();
-
- etRunner::get().waitEvent(E_TC_EVENT_TYPE_VIS_ON);
-
- return EINA_TRUE;
+ tw_blocker = initNotiWin("TCWin_Noti_Blocker", EINA_FALSE, EINA_FALSE, EINA_FALSE);
+ ASSERT_TRUE(tw_blue != NULL) << "failed to initiation window";
}
TEST_F(etTestFocus, focus_basic)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// Expected focus res:
// [Top] Blue[focused] -> Green -> Red [Bottom]
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// make tw_blue lower
res = etRunner::get().setWinStack(tw_blue, NULL, EINA_FALSE);
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// make tw_red raise
res = registerTCWin(tw_red);
TEST_F(etTestFocus, focus_destroy)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// delete tw_blue
- tw_blue->hide();
- delete tw_blue;
+ removeTCWin(tw_blue);
tw_blue = NULL;
- etRunner::get().waitEvent(E_TC_EVENT_TYPE_VIS_OFF);
// Expected focus res:
// [Top] Green[focused] -> Red [Bottom]
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// Activate tw_red
res = registerTCWin(tw_red);
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// show Blocker
showTCWin(tw_blocker);
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_TRUE);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// set transient_for Blue(parent) & Red(child)
res = registerTCWin(tw_red);
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_TRUE);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// set transient_for Blue(parent) & Green(child)
res = registerTCWin(tw_green);
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_TRUE);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// set transient_for Green(parent) & Blue(child)
res = registerTCWin(tw_green);
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_TRUE);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// set iconify Blue
res = registerTCWin(tw_blue);
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_TRUE);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// set iconify Red
res = registerTCWin(tw_red);
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_TRUE);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// set iconify Red
res = registerTCWin(tw_red);
etRunner::get().freeWinInfoList(list);
}
-TEST_F(etTestFocus, focus_touch_basic)
+// TODO:: Set enable when fix focus policy is done.
+TEST_F(etTestFocus, DISABLED_focus_uniconify2)
{
etWin *tw = NULL;
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_TRUE);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
+
+ // set iconify Blue
+ res = registerTCWin(tw_blue);
+ EXPECT_TRUE(res);
+ res = etRunner::get().setWinIconic(tw_blue, EINA_TRUE);
+ ASSERT_TRUE(res);
+ etRunner::get().waitEvent(E_TC_EVENT_TYPE_VIS_OFF);
+
+ // set uniconify Blue
+ res = etRunner::get().setWinIconic(tw_blue, EINA_FALSE);
ASSERT_TRUE(res);
+ etRunner::get().waitEvent(E_TC_EVENT_TYPE_VIS_ON);
+
+ // Expected focus res:
+ // [Top] Blue[focused] -> Green -> Red [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);
+}
+
+// TODO:: Set enable when fix focus policy is done.
+TEST_F(etTestFocus, DISABLED_focus_visibility)
+{
+ 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);
+
+ // show blocker
+ res = etRunner::get().setWinNotiLevel(tw_blocker,
+ EFL_UTIL_NOTIFICATION_LEVEL_DEFAULT);
+ EXPECT_TRUE(res);
+ showTCWin(tw_blocker);
+
+ // hide blocker
+ tw_blocker->hide();
+ etRunner::get().waitEvent(E_TC_EVENT_TYPE_VIS_OFF);
+ res = registerTCWin(tw_blue);
+ EXPECT_TRUE(res);
+
+ // Expected focus res:
+ // [Top] Blue[focused] -> Green -> Red [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_touch_basic)
+{
+ 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);
// touch red win
res = registerTCWin(tw_red);
TEST_F(etTestFocus, focus_skip_set)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// set focus_skip on tw_blue
etRunner::get().setFocusSkip(tw_blue, EINA_TRUE);
TEST_F(etTestFocus, focus_skip_unset)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_TRUE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
// set focus_skip on tw_blue
etRunner::get().setFocusSkip(tw_blue, EINA_TRUE);
}
etRunner::get().freeWinInfoList(list);
}
-TEST_F(etTestFocus, focus_fullsize_basic)
+
+TEST_F(etTestFocus, focus_touch_with_focus_skip)
{
etWin *tw = NULL;
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=true
+ initTC(EINA_TRUE, EINA_TRUE);
+
+ // set focus_skip on tw_red
+ res = registerTCWin(tw_red);
+ EXPECT_TRUE(res);
+ etRunner::get().setFocusSkip(tw_red, EINA_TRUE);
+ etRunner::get().waitEvent(E_TC_EVENT_TYPE_FOCUS_CHANGED);
+
+ // touch red win
+ etRunner::get().generateMouseDown(50, 50);
+ etRunner::get().generateMouseUp(50, 50);
+ etRunner::get().waitEvent(E_TC_EVENT_TYPE_FOCUS_CHANGED);
+
+ // Expected focus res:
+ // [Top] Blue[focused] -> Green -> Red [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_basic)
+{
+ etWin *tw = NULL;
+ Eina_List *list = NULL, *l = NULL;
+
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// Expected focus res:
// [Top] Blue[focused] -> Green -> Red [Bottom]
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// make tw_blue lower
res = etRunner::get().setWinStack(tw_blue, NULL, EINA_FALSE);
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// make tw_red raise
res = etRunner::get().setWinStack(tw_red, NULL, EINA_TRUE);
TEST_F(etTestFocus, focus_fullsize_destroy)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// delete tw_blue
- tw_blue->hide();
- delete tw_blue;
+ removeTCWin(tw_blue);
tw_blue = NULL;
- etRunner::get().waitEvent(E_TC_EVENT_TYPE_VIS_OFF);
// Expected focus res:
// [Top] Green[focused] -> Red [Bottom]
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// Activate tw_red
res = registerTCWin(tw_red);
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_FALSE);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// set transient_for Blue(parent) & Red(child)
res = registerTCWin(tw_red);
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_FALSE);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// set iconify Blue
res = registerTCWin(tw_blue);
Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_FALSE);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// set iconify Red
res = registerTCWin(tw_red);
TEST_F(etTestFocus, focus_fullsize_skip_set)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// set focus_skip on tw_blue
etRunner::get().setFocusSkip(tw_blue, EINA_TRUE);
TEST_F(etTestFocus, focus_fullsize_skip_unset)
{
etWin *tw = NULL;
- Eina_Bool res = EINA_FALSE;
Eina_List *list = NULL, *l = NULL;
- res = initTC(EINA_TRUE, EINA_FALSE);
- ASSERT_TRUE(res);
+ // init TC window, show=true, geom=false
+ initTC(EINA_TRUE, EINA_FALSE);
// set focus_skip on tw_blue
// Expected focus res: