[UTC][webkit2][ACR-848][Add TC for ewk_view_focus_get/set API]
authorMarcin Niesluchowski <m.niesluchow@samsung.com>
Thu, 24 Nov 2016 13:03:55 +0000 (14:03 +0100)
committerMarcin Niesluchowski <marcin.niesluchowski@gmail.com>
Sat, 10 Dec 2016 20:00:45 +0000 (21:00 +0100)
Change-Id: Ieefc4a1514982d7437ed711b339cb390ec3f222b

src/utc/webkit2/CMakeLists.txt
src/utc/webkit2/tct-webkit2-core_mobile.h
src/utc/webkit2/tct-webkit2-core_wearable.h
src/utc/webkit2/utc_webkit2_ewk_view_focus_get_func.c [new file with mode: 0644]
src/utc/webkit2/utc_webkit2_ewk_view_focus_set_func.c [new file with mode: 0644]

index 70253513ecff77595e83ec49f263f591eadd1afc..eb1b9b94201bd3d2a069094e5aac352c0e33467f 100755 (executable)
@@ -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
index 06b7832ec9da8f63501e268d2f17ff498749c5f3..307f731265aadf9d2116e56bbed05d417d03cfc5 100755 (executable)
@@ -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},
index a82d3c82a3dce714de84a0bf203f5f161b1309bc..f9cdd80a6925447c7b2260dabe5552e56250e3df 100755 (executable)
@@ -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 (file)
index 0000000..d637c13
--- /dev/null
@@ -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 (file)
index 0000000..3e5424d
--- /dev/null
@@ -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;
+}