From: Marcin Niesluchowski Date: Thu, 24 Nov 2016 13:03:55 +0000 (+0100) Subject: [UTC][webkit2][ACR-848][Add TC for ewk_view_focus_get/set API] X-Git-Tag: Public_Final_RC6~18^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d4fc0048d38972bbaedf79d8db2df8225f45e664;p=test%2Ftct%2Fnative%2Fapi.git [UTC][webkit2][ACR-848][Add TC for ewk_view_focus_get/set API] Change-Id: Ieefc4a1514982d7437ed711b339cb390ec3f222b --- diff --git a/src/utc/webkit2/CMakeLists.txt b/src/utc/webkit2/CMakeLists.txt index 70253513e..eb1b9b942 100755 --- a/src/utc/webkit2/CMakeLists.txt +++ b/src/utc/webkit2/CMakeLists.txt @@ -123,6 +123,8 @@ SET(TC_SOURCES utc_webkit2_ewk_view_contents_size_get_func.c utc_webkit2_ewk_view_context_get_func.c utc_webkit2_ewk_view_evaluate_javascript.c + utc_webkit2_ewk_view_focus_get_func.c + utc_webkit2_ewk_view_focus_set_func.c utc_webkit2_ewk_view_forward_func.c utc_webkit2_ewk_view_forward_possible_func.c utc_webkit2_ewk_view_fullscreen_exit_func.c @@ -367,6 +369,8 @@ SET(TC_SOURCES utc_webkit2_ewk_view_contents_size_get_func.c utc_webkit2_ewk_view_context_get_func.c utc_webkit2_ewk_view_evaluate_javascript.c + utc_webkit2_ewk_view_focus_get_func.c + utc_webkit2_ewk_view_focus_set_func.c utc_webkit2_ewk_view_forward_func.c utc_webkit2_ewk_view_forward_possible_func.c utc_webkit2_ewk_view_fullscreen_exit_func.c diff --git a/src/utc/webkit2/tct-webkit2-core_mobile.h b/src/utc/webkit2/tct-webkit2-core_mobile.h index 06b7832ec..307f73126 100755 --- a/src/utc/webkit2/tct-webkit2-core_mobile.h +++ b/src/utc/webkit2/tct-webkit2-core_mobile.h @@ -263,6 +263,10 @@ extern void utc_webkit2_ewk_view_contents_set_func_startup(void); extern void utc_webkit2_ewk_view_contents_set_func_cleanup(void); extern void utc_webkit2_ewk_view_evaluate_javascript_startup(void); extern void utc_webkit2_ewk_view_evaluate_javascript_cleanup(void); +extern void utc_webkit2_ewk_view_focus_get_startup(void); +extern void utc_webkit2_ewk_view_focus_get_cleanup(void); +extern void utc_webkit2_ewk_view_focus_set_startup(void); +extern void utc_webkit2_ewk_view_focus_set_cleanup(void); extern void utc_webkit2_ewk_view_forward_possible_func_startup(void); extern void utc_webkit2_ewk_view_forward_possible_func_cleanup(void); extern void utc_webkit2_ewk_view_fullscreen_exit_func_startup(void); @@ -571,6 +575,12 @@ extern int utc_webkit2_ewk_view_contents_set_p(void); extern int utc_webkit2_ewk_view_contents_set_n(void); extern int utc_webkit2_ewk_view_evaluate_javascript_p(void); extern int utc_webkit2_ewk_view_evaluate_javascript_n(void); +extern int utc_webkit2_ewk_view_focus_get_p(void); +extern int utc_webkit2_ewk_view_focus_get_p1(void); +extern int utc_webkit2_ewk_view_focus_get_n(void); +extern int utc_webkit2_ewk_view_focus_set_p(void); +extern int utc_webkit2_ewk_view_focus_set_p1(void); +extern int utc_webkit2_ewk_view_focus_set_n(void); extern int utc_webkit2_ewk_view_forward_possible_p(void); extern int utc_webkit2_ewk_view_forward_possible_p1(void); extern int utc_webkit2_ewk_view_forward_possible_p2(void); @@ -891,6 +901,12 @@ testcase tc_array[] = { {"utc_webkit2_ewk_view_contents_set_n", utc_webkit2_ewk_view_contents_set_n, utc_webkit2_ewk_view_contents_set_func_startup, utc_webkit2_ewk_view_contents_set_func_cleanup}, {"utc_webkit2_ewk_view_evaluate_javascript_p", utc_webkit2_ewk_view_evaluate_javascript_p, utc_webkit2_ewk_view_evaluate_javascript_startup, utc_webkit2_ewk_view_evaluate_javascript_cleanup}, {"utc_webkit2_ewk_view_evaluate_javascript_n", utc_webkit2_ewk_view_evaluate_javascript_n, utc_webkit2_ewk_view_evaluate_javascript_startup, utc_webkit2_ewk_view_evaluate_javascript_cleanup}, + {"utc_webkit2_ewk_view_focus_get_p", utc_webkit2_ewk_view_focus_get_p, utc_webkit2_ewk_view_focus_get_startup, utc_webkit2_ewk_view_focus_get_cleanup}, + {"utc_webkit2_ewk_view_focus_get_p1", utc_webkit2_ewk_view_focus_get_p1, utc_webkit2_ewk_view_focus_get_startup, utc_webkit2_ewk_view_focus_get_cleanup}, + {"utc_webkit2_ewk_view_focus_get_n", utc_webkit2_ewk_view_focus_get_n, utc_webkit2_ewk_view_focus_get_startup, utc_webkit2_ewk_view_focus_get_cleanup}, + {"utc_webkit2_ewk_view_focus_set_p", utc_webkit2_ewk_view_focus_set_p, utc_webkit2_ewk_view_focus_set_startup, utc_webkit2_ewk_view_focus_set_cleanup}, + {"utc_webkit2_ewk_view_focus_set_p1", utc_webkit2_ewk_view_focus_set_p1, utc_webkit2_ewk_view_focus_set_startup, utc_webkit2_ewk_view_focus_set_cleanup}, + {"utc_webkit2_ewk_view_focus_set_n", utc_webkit2_ewk_view_focus_set_n, utc_webkit2_ewk_view_focus_set_startup, utc_webkit2_ewk_view_focus_set_cleanup}, {"utc_webkit2_ewk_view_forward_possible_p", utc_webkit2_ewk_view_forward_possible_p, utc_webkit2_ewk_view_forward_possible_func_startup, utc_webkit2_ewk_view_forward_possible_func_cleanup}, {"utc_webkit2_ewk_view_forward_possible_p1", utc_webkit2_ewk_view_forward_possible_p1, utc_webkit2_ewk_view_forward_possible_func_startup, utc_webkit2_ewk_view_forward_possible_func_cleanup}, {"utc_webkit2_ewk_view_forward_possible_p2", utc_webkit2_ewk_view_forward_possible_p2, utc_webkit2_ewk_view_forward_possible_func_startup, utc_webkit2_ewk_view_forward_possible_func_cleanup}, diff --git a/src/utc/webkit2/tct-webkit2-core_wearable.h b/src/utc/webkit2/tct-webkit2-core_wearable.h index a82d3c82a..f9cdd80a6 100755 --- a/src/utc/webkit2/tct-webkit2-core_wearable.h +++ b/src/utc/webkit2/tct-webkit2-core_wearable.h @@ -201,6 +201,10 @@ extern void utc_webkit2_ewk_view_back_startup(void); extern void utc_webkit2_ewk_view_back_cleanup(void); extern void utc_webkit2_ewk_view_evaluate_javascript_startup(void); extern void utc_webkit2_ewk_view_evaluate_javascript_cleanup(void); +extern void utc_webkit2_ewk_view_focus_get_startup(void); +extern void utc_webkit2_ewk_view_focus_get_cleanup(void); +extern void utc_webkit2_ewk_view_focus_set_startup(void); +extern void utc_webkit2_ewk_view_focus_set_cleanup(void); extern void utc_webkit2_ewk_view_forward_possible_func_startup(void); extern void utc_webkit2_ewk_view_forward_possible_func_cleanup(void); extern void utc_webkit2_ewk_view_fullscreen_exit_func_startup(void); @@ -446,6 +450,12 @@ extern int utc_webkit2_ewk_view_back_p(void); extern int utc_webkit2_ewk_view_back_n(void); extern int utc_webkit2_ewk_view_evaluate_javascript_p(void); extern int utc_webkit2_ewk_view_evaluate_javascript_n(void); +extern int utc_webkit2_ewk_view_focus_get_p(void); +extern int utc_webkit2_ewk_view_focus_get_p1(void); +extern int utc_webkit2_ewk_view_focus_get_n(void); +extern int utc_webkit2_ewk_view_focus_set_p(void); +extern int utc_webkit2_ewk_view_focus_set_p1(void); +extern int utc_webkit2_ewk_view_focus_set_n(void); extern int utc_webkit2_ewk_view_forward_possible_p(void); extern int utc_webkit2_ewk_view_forward_possible_p1(void); extern int utc_webkit2_ewk_view_forward_possible_p2(void); @@ -703,6 +713,12 @@ testcase tc_array[] = { {"utc_webkit2_ewk_view_back_n", utc_webkit2_ewk_view_back_n, utc_webkit2_ewk_view_back_startup, utc_webkit2_ewk_view_back_cleanup}, {"utc_webkit2_ewk_view_evaluate_javascript_p", utc_webkit2_ewk_view_evaluate_javascript_p, utc_webkit2_ewk_view_evaluate_javascript_startup, utc_webkit2_ewk_view_evaluate_javascript_cleanup}, {"utc_webkit2_ewk_view_evaluate_javascript_n", utc_webkit2_ewk_view_evaluate_javascript_n, utc_webkit2_ewk_view_evaluate_javascript_startup, utc_webkit2_ewk_view_evaluate_javascript_cleanup}, + {"utc_webkit2_ewk_view_focus_get_p", utc_webkit2_ewk_view_focus_get_p, utc_webkit2_ewk_view_focus_get_startup, utc_webkit2_ewk_view_focus_get_cleanup}, + {"utc_webkit2_ewk_view_focus_get_p1", utc_webkit2_ewk_view_focus_get_p1, utc_webkit2_ewk_view_focus_get_startup, utc_webkit2_ewk_view_focus_get_cleanup}, + {"utc_webkit2_ewk_view_focus_get_n", utc_webkit2_ewk_view_focus_get_n, utc_webkit2_ewk_view_focus_get_startup, utc_webkit2_ewk_view_focus_get_cleanup}, + {"utc_webkit2_ewk_view_focus_set_p", utc_webkit2_ewk_view_focus_set_p, utc_webkit2_ewk_view_focus_set_startup, utc_webkit2_ewk_view_focus_set_cleanup}, + {"utc_webkit2_ewk_view_focus_set_p1", utc_webkit2_ewk_view_focus_set_p1, utc_webkit2_ewk_view_focus_set_startup, utc_webkit2_ewk_view_focus_set_cleanup}, + {"utc_webkit2_ewk_view_focus_set_n", utc_webkit2_ewk_view_focus_set_n, utc_webkit2_ewk_view_focus_set_startup, utc_webkit2_ewk_view_focus_set_cleanup}, {"utc_webkit2_ewk_view_forward_possible_p", utc_webkit2_ewk_view_forward_possible_p, utc_webkit2_ewk_view_forward_possible_func_startup, utc_webkit2_ewk_view_forward_possible_func_cleanup}, {"utc_webkit2_ewk_view_forward_possible_p1", utc_webkit2_ewk_view_forward_possible_p1, utc_webkit2_ewk_view_forward_possible_func_startup, utc_webkit2_ewk_view_forward_possible_func_cleanup}, {"utc_webkit2_ewk_view_forward_possible_p2", utc_webkit2_ewk_view_forward_possible_p2, utc_webkit2_ewk_view_forward_possible_func_startup, utc_webkit2_ewk_view_forward_possible_func_cleanup}, diff --git a/src/utc/webkit2/utc_webkit2_ewk_view_focus_get_func.c b/src/utc/webkit2/utc_webkit2_ewk_view_focus_get_func.c new file mode 100644 index 000000000..d637c1361 --- /dev/null +++ b/src/utc/webkit2/utc_webkit2_ewk_view_focus_get_func.c @@ -0,0 +1,135 @@ +// +// Copyright (c) 2016 Samsung Electronics Co., Ltd. +// +// Licensed under the Apache License, Version 2.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +#include "assert.h" +#include "utc_webkit2_ewk.h" + +static Eina_Bool isLoadSucceed = EINA_TRUE; + +/* Callback for load finished */ +static void loadFinished(void* data, Evas_Object* webview, void* event_info) +{ + isLoadSucceed = EINA_TRUE; + utc_webkit2_main_loop_quit(); +} + +/* Callback for load error */ +static void loadError(void* data, Evas_Object* webview, void* event_info) +{ + isLoadSucceed = EINA_FALSE; + utc_webkit2_main_loop_quit(); +} + +/* Function called when timer expires */ +static Eina_Bool mainLoopQuit(void* data) +{ + utc_webkit2_main_loop_quit(); + return EINA_FALSE; +} + +/* Startup function */ +/** + * @function utc_webkit2_ewk_view_focus_get_startup + * @description Called before each test + * @parameter NA + * @return NA + */ +void utc_webkit2_ewk_view_focus_get_startup(void) +{ + utc_webkit2_ewk_test_init(); + evas_object_smart_callback_add(test_view.webview, "load,finished", loadFinished, NULL); + evas_object_smart_callback_add(test_view.webview, "load,error", loadError, NULL); +} + +/* Cleanup function */ +/** + * @function utc_webkit2_ewk_view_focus_get_cleanup + * @description Called after each test + * @parameter NA + * @return NA + */ +void utc_webkit2_ewk_view_focus_get_cleanup(void) +{ + evas_object_smart_callback_del(test_view.webview, "load,finished", loadFinished); + evas_object_smart_callback_del(test_view.webview, "load,error", loadError); + utc_webkit2_ewk_test_end(); +} + +/** + * @testcase utc_webkit2_ewk_view_focus_get_p + * @since_tizen 3.0 + * @description Gets ewk view focus + * @scenario Create ewk view\n + * load url\n + * set EINA_TRUE value\n + * retrieve value\n + * validate the set and get values + */ +int utc_webkit2_ewk_view_focus_get_p(void) +{ + Eina_Bool result = ewk_view_url_set(test_view.webview, + COMMON_SAMPLE_HTML_FILE); + assert_eq(result, EINA_TRUE); + utc_webkit2_main_loop_begin(); + assert_eq(isLoadSucceed, EINA_TRUE); + + result = ewk_view_focus_set(test_view.webview, EINA_TRUE); + assert_eq(result, EINA_TRUE); + ecore_timer_add(2.0f, mainLoopQuit, 0); + utc_webkit2_main_loop_begin(); + Eina_Bool focus = ewk_view_focus_get(test_view.webview); + assert_eq(focus, EINA_TRUE); + return 0; +} + +/** + * @testcase utc_webkit2_ewk_view_focus_get_p1 + * @since_tizen 3.0 + * @description Gets ewk view focus + * @scenario Create ewk view\n + * load url\n + * set EINA_FALSE value\n + * retrieve value\n + * validate the set and get values + */ +int utc_webkit2_ewk_view_focus_get_p1(void) +{ + Eina_Bool result = ewk_view_url_set(test_view.webview, + COMMON_SAMPLE_HTML_FILE); + assert_eq(result, EINA_TRUE); + utc_webkit2_main_loop_begin(); + assert_eq(isLoadSucceed, EINA_TRUE); + + result = ewk_view_focus_set(test_view.webview, EINA_FALSE); + assert_eq(result, EINA_TRUE); + ecore_timer_add(2.0f, mainLoopQuit, 0); + utc_webkit2_main_loop_begin(); + Eina_Bool focus = ewk_view_focus_get(test_view.webview); + assert_eq(focus, EINA_FALSE); + return 0; +} + +/** + * @testcase utc_webkit2_ewk_view_focus_get_n + * @since_tizen 3.0 + * @description Gets ewk view focus + * @scenario Check operation with incorrect parameter returns propoerly + */ +int utc_webkit2_ewk_view_focus_get_n(void) +{ + Eina_Bool focus = ewk_view_focus_get(NULL); + assert_eq(focus, EINA_FALSE); + return 0; +} diff --git a/src/utc/webkit2/utc_webkit2_ewk_view_focus_set_func.c b/src/utc/webkit2/utc_webkit2_ewk_view_focus_set_func.c new file mode 100644 index 000000000..3e5424d60 --- /dev/null +++ b/src/utc/webkit2/utc_webkit2_ewk_view_focus_set_func.c @@ -0,0 +1,135 @@ +// +// Copyright (c) 2016 Samsung Electronics Co., Ltd. +// +// Licensed under the Apache License, Version 2.0 (the License); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +#include "assert.h" +#include "utc_webkit2_ewk.h" + +static Eina_Bool isLoadSucceed = EINA_TRUE; + +/* Callback for load finished */ +static void loadFinished(void* data, Evas_Object* webview, void* event_info) +{ + isLoadSucceed = EINA_TRUE; + utc_webkit2_main_loop_quit(); +} + +/* Callback for load error */ +static void loadError(void* data, Evas_Object* webview, void* event_info) +{ + isLoadSucceed = EINA_FALSE; + utc_webkit2_main_loop_quit(); +} + +/* Function called when timer expires */ +static Eina_Bool mainLoopQuit(void* data) +{ + utc_webkit2_main_loop_quit(); + return EINA_FALSE; +} + +/* Startup function */ +/** + * @function utc_webkit2_ewk_view_focus_set_startup + * @description Called before each test + * @parameter NA + * @return NA + */ +void utc_webkit2_ewk_view_focus_set_startup(void) +{ + utc_webkit2_ewk_test_init(); + evas_object_smart_callback_add(test_view.webview, "load,finished", loadFinished, NULL); + evas_object_smart_callback_add(test_view.webview, "load,error", loadError, NULL); +} + +/* Cleanup function */ +/** + * @function utc_webkit2_ewk_view_focus_set_cleanup + * @description Called after each test + * @parameter NA + * @return NA + */ +void utc_webkit2_ewk_view_focus_set_cleanup(void) +{ + evas_object_smart_callback_del(test_view.webview, "load,finished", loadFinished); + evas_object_smart_callback_del(test_view.webview, "load,error", loadError); + utc_webkit2_ewk_test_end(); +} + +/** + * @testcase utc_webkit2_ewk_view_focus_set_p + * @since_tizen 3.0 + * @description Gets ewk view focus + * @scenario Create ewk view\n + * load url\n + * set EINA_TRUE value\n + * retrieve value\n + * validate the set and get values + */ +int utc_webkit2_ewk_view_focus_set_p(void) +{ + Eina_Bool result = ewk_view_url_set(test_view.webview, + COMMON_SAMPLE_HTML_FILE); + assert_eq(result, EINA_TRUE); + utc_webkit2_main_loop_begin(); + assert_eq(isLoadSucceed, EINA_TRUE); + + result = ewk_view_focus_set(test_view.webview, EINA_TRUE); + assert_eq(result, EINA_TRUE); + ecore_timer_add(2.0f, mainLoopQuit, 0); + utc_webkit2_main_loop_begin(); + Eina_Bool focus = ewk_view_focus_get(test_view.webview); + assert_eq(focus, EINA_TRUE); + return 0; +} + +/** + * @testcase utc_webkit2_ewk_view_focus_set_p1 + * @since_tizen 3.0 + * @description Gets ewk view focus + * @scenario Create ewk view\n + * load url\n + * set EINA_FALSE value\n + * retrieve value\n + * validate the set and get values + */ +int utc_webkit2_ewk_view_focus_set_p1(void) +{ + Eina_Bool result = ewk_view_url_set(test_view.webview, + COMMON_SAMPLE_HTML_FILE); + assert_eq(result, EINA_TRUE); + utc_webkit2_main_loop_begin(); + assert_eq(isLoadSucceed, EINA_TRUE); + + result = ewk_view_focus_set(test_view.webview, EINA_FALSE); + assert_eq(result, EINA_TRUE); + ecore_timer_add(2.0f, mainLoopQuit, 0); + utc_webkit2_main_loop_begin(); + Eina_Bool focus = ewk_view_focus_get(test_view.webview); + assert_eq(focus, EINA_FALSE); + return 0; +} + +/** + * @testcase utc_webkit2_ewk_view_focus_set_n + * @since_tizen 3.0 + * @description Gets ewk view focus + * @scenario Check operation with incorrect parameter returns propoerly + */ +int utc_webkit2_ewk_view_focus_set_n(void) +{ + Eina_Bool result = ewk_view_focus_set(NULL, EINA_TRUE); + assert_eq(result, EINA_FALSE); + return 0; +}