[ITC][webkit2][ACR-848, ACR-849][Add View Focus and Cookie Manager Persistent Storage...
authormanu.tiwari <manu.tiwari@samsung.com>
Thu, 29 Dec 2016 09:02:27 +0000 (14:32 +0530)
committermanu.tiwari <manu.tiwari@samsung.com>
Fri, 30 Dec 2016 11:49:46 +0000 (17:19 +0530)
Change-Id: I2a3960f3bd5cfb79c541fc51354597c50c89d126
Signed-off-by: manu.tiwari <manu.tiwari@samsung.com>
src/itc/webkit2/ITs-webkit2-common.h
src/itc/webkit2/ITs-webkit2-cookies.c
src/itc/webkit2/ITs-webkit2-view.c
src/itc/webkit2/tct-webkit2-native_common_iot.h
src/itc/webkit2/tct-webkit2-native_mobile.h
src/itc/webkit2/tct-webkit2-native_tv.h
src/itc/webkit2/tct-webkit2-native_wearable.h

index bd738e7042b285c0a1963587d3c0bd75598d0929..03cc211f6a64aabc310658f68d57387608b56b4b 100755 (executable)
@@ -52,6 +52,7 @@
 #define SAMPLE_HTML_FILE_TITLE         "Testing Sample Page"
 #define SAMPLE_EWK_HTML_FILE           "webkit2_files/res/ewk_view/text_selection.html"
 #define INVALID_FILE_PATH                      "webkit2_files/res/common/InvalidFile.html"
+#define COOKIE_STORAGE_PATH                    "/tmp/mycookiestoragedir"
 #define POLICY_DECISION_URL                    "http://www.google.com"
 #define RESPONSE_STATUS_CODE_SUCCESS 200
 #define SET_DEFAULT_ENCODING           "utf-8"
index 7e5c09fcf5c940d04713d1aed41633ca91bdffc9..74bb8568b3a2f3fa160c02f8f605414951872035 100755 (executable)
@@ -318,5 +318,51 @@ int ITc_ewk_cookie_manager_file_scheme_cookies_allow_set_get_p(void)
        Webkit_EFLDestroyWebKitView();
        return 0;
 }
+//& type: auto
+//& purpose: Checks ITc_ewk_cookie_manager_persistent_storage_set_p
+/**
+* @testcase                    ITc_ewk_cookie_manager_persistent_storage_set_p
+* @since_tizen                 3.0
+* @author                              SRID(manu.tiwari)
+* @reviewer                            SRID(a.pandia1)
+* @type                                auto
+* @description                 Sets the path where non-session cookies are stored persistently
+* @scenario                            Sets the path where non-session cookies are stored persistently
+* @apicovered                  ewk_cookie_manager_persistent_storage_set
+* @passcase                            When ewk_cookie_manager_persistent_storage_set api gets pass
+* @failcase                            If target API fails
+* @precondition                        NA
+* @postcondition               NA
+*/
+int ITc_ewk_cookie_manager_persistent_storage_set_p(void)
+{
+       START_TEST;
+       
+       if ( false == Webkit_EFLCreateWebKitView() )
+       {
+               return 1;
+       }
+       Ewk_Cookie_Manager* pCookieManager = ewk_context_cookie_manager_get(ewk_view_context_get(objWebkit_EFL_view.webview));
+       if ( pCookieManager == NULL )
+       {
+               FPRINTF("[Line : %d][%s] Unable to get cookie manager from ewk_context_cookie_manager_get API call\\n", __LINE__, API_NAMESPACE);
+               Webkit_EFLDestroyWebKitView();
+               return 1;
+       }
+       
+       int CookiePersistentStorage[] = {
+               EWK_COOKIE_PERSISTENT_STORAGE_TEXT,             /**< cookies are stored in text file */
+               EWK_COOKIE_PERSISTENT_STORAGE_SQLITE,           /**< cookies are stored in SQLite file */
+       };
+       int nCookieStorageCount = sizeof(CookiePersistentStorage) / sizeof(CookiePersistentStorage[0]);
+       for ( int nCookieStorage = 0;nCookieStorage < nCookieStorageCount;nCookieStorage++ )
+       {
+               ewk_cookie_manager_persistent_storage_set(pCookieManager, COOKIE_STORAGE_PATH, CookiePersistentStorage[nCookieStorage]);
+       }
+       
+       Webkit_EFLDestroyWebKitView();
+       
+       return 0;
+}
 /** @} */
 /** @} */
\ No newline at end of file
index ef7d643f4182b20b629845b139ec6eae255d01a3..266db736370557b17156c12d790ffbb78f921adf 100755 (executable)
@@ -3048,8 +3048,6 @@ int ITc_ewk_view_javascript_message_handler_add_p(void)
        Webkit_EFLDestroyWebKitView();
        return 0;
 }
-
-
 //& purpose: To test ITc_ewk_context_intercept_request_callback_set_p
 //& type: auto
 /**
@@ -3132,6 +3130,89 @@ int ITc_ewk_context_intercept_request_callback_set_p(void)
        Webkit_EFLDestroyWebKitView();
        return 0;
 }
+//& purpose: To test ITc_ewk_view_focus_set_get_p
+//& type: auto
+/**
+* @testcase                    ITc_ewk_view_focus_set_get_p
+* @since_tizen                 3.0
+* @owner                               SRID(manu.tiwari)
+* @reviewer                            SRID(a.pandia1)
+* @type                                        auto
+* @description                 To test ITc_ewk_view_focus_set_get_p
+* @scenario                            Call ewk_view_focus_set and ewk_view_focus_get api
+* @apicovered                  ewk_view_focus_set and ewk_view_focus_get
+* @passcase                            When ITc_ewk_view_focus_set_get_p is successful
+* @failcase                            If target API fails or return invalid value
+* @precondition                        None
+* @postcondition               None
+*/
+int ITc_ewk_view_focus_set_get_p(void)
+{
+    START_TEST;
+
+       char pPath[PATH_LEN] = {0,};
+       if ( false == Webkit_EFLAppendToDataPathWithFileFormat(SAMPLE_HTML_FILE, pPath) )
+       {
+               FPRINTF("[Line : %d][%s] Unable to get the app data path\\n", __LINE__, API_NAMESPACE);
+               return 1;
+       }
+
+       if ( false == Webkit_EFLCreateWebKitView() )
+       {
+               return 1;
+       }
+
+       evas_object_smart_callback_add(objWebkit_EFL_view.webview, "load,finished", Webkit_EFL_LoadFinished, NULL);
+       evas_object_smart_callback_add(objWebkit_EFL_view.webview, "load,error", Webkit_EFL_LoadError, NULL);
+
+       Eina_Bool bResult = EINA_FALSE;
+       bResult = ewk_view_url_set(objWebkit_EFL_view.webview, pPath);
+       if ( EINA_TRUE != bResult )
+       {
+               FPRINTF("[Line : %d][%s] ewk_view_url_set returned false error value on API call\\n", __LINE__, API_NAMESPACE);
+               evas_object_smart_callback_del(objWebkit_EFL_view.webview, "load,finished", Webkit_EFL_LoadFinished);
+               evas_object_smart_callback_del(objWebkit_EFL_view.webview, "load,error", Webkit_EFL_LoadError);
+               Webkit_EFLDestroyWebKitView();
+               return 1;
+       }
+
+       g_bWebkit_EFL_LoadSuccess = false;
+       Webkit_EFL_main_loop_begin();
+       if ( false == g_bWebkit_EFL_LoadSuccess )
+       {
+               FPRINTF("[Line : %d][%s] ewk_view_url_set returned load error value for %s\\n", __LINE__, API_NAMESPACE, pPath);
+               evas_object_smart_callback_del(objWebkit_EFL_view.webview, "load,finished", Webkit_EFL_LoadFinished);
+               evas_object_smart_callback_del(objWebkit_EFL_view.webview, "load,error", Webkit_EFL_LoadError);
+               Webkit_EFLDestroyWebKitView();
+               return 1;
+       }
+       bResult = ewk_view_focus_set(objWebkit_EFL_view.webview, EINA_TRUE);
+       if (EINA_TRUE != bResult)
+       {
+               FPRINTF("[Line : %d][%s] ewk_view_focus_set returned error value\\n", __LINE__, API_NAMESPACE);
+               evas_object_smart_callback_del(objWebkit_EFL_view.webview, "load,finished", Webkit_EFL_LoadFinished);
+               evas_object_smart_callback_del(objWebkit_EFL_view.webview, "load,error", Webkit_EFL_LoadError);
+               Webkit_EFLDestroyWebKitView();
+               return 1;
+       }
+    ecore_timer_add(2.0f, Webkit_EFL_LoopQuit, 0);
+    Webkit_EFL_main_loop_begin();
+
+    Eina_Bool focus = ewk_view_focus_get(objWebkit_EFL_view.webview);
+       if (EINA_TRUE != focus)
+       {
+               FPRINTF("[Line : %d][%s] ewk_view_focus_get returned mismatched value\\n", __LINE__, API_NAMESPACE);
+               evas_object_smart_callback_del(objWebkit_EFL_view.webview, "load,finished", Webkit_EFL_LoadFinished);
+               evas_object_smart_callback_del(objWebkit_EFL_view.webview, "load,error", Webkit_EFL_LoadError);
+               Webkit_EFLDestroyWebKitView();
+               return 1;
+       }
+       evas_object_smart_callback_del(objWebkit_EFL_view.webview, "load,finished", Webkit_EFL_LoadFinished);
+       evas_object_smart_callback_del(objWebkit_EFL_view.webview, "load,error", Webkit_EFL_LoadError);
+       Webkit_EFLDestroyWebKitView();
+
+    return 0;
+}
 
 /** @} */
 /** @} */
index 444d3d8f86e91f6f5936b2fd6b6b6cea457d378f..5400cbaba6ec810f47c2fda4d6933f6f6cd222f3 100755 (executable)
@@ -147,6 +147,7 @@ extern int ITc_ewk_view_text_selection_clear_p(void);
 extern int ITc_ewk_view_text_selection_text_get_p(void);
 extern int ITc_ewk_view_visibility_set_p(void);
 extern int ITc_ewk_view_html_string_load_p(void);
+extern int ITc_ewk_cookie_manager_file_scheme_cookies_allow_set_get_p(void);
 extern int ITc_ewk_view_evaluate_javascript_p(void);
 extern int ITc_ewk_view_javascript_message_handler_add_p(void);
 extern int ITc_ewk_context_intercept_request_callback_set_p(void);
@@ -161,7 +162,8 @@ extern int ITc_ewk_intercept_request_response_set_p(void);
 extern int ITc_ewk_intercept_request_response_status_set_p(void);
 extern int ITc_ewk_intercept_request_response_write_chunk_p(void);
 extern int ITc_webkit_ewk_view_add_in_incognito_mode_p(void);
-
+extern int ITc_ewk_cookie_manager_persistent_storage_set_p(void);
+extern int ITc_ewk_view_focus_set_get_p(void);
 
 testcase tc_array[] = {
     {"ITc_ewk_autofill_profile_data_set_get_p", ITc_ewk_autofill_profile_data_set_get_p, ITs_webkit_efl_autofill_startup, ITs_webkit_efl_autofill_cleanup},
@@ -267,6 +269,7 @@ testcase tc_array[] = {
     {"ITc_ewk_view_text_selection_text_get_p", ITc_ewk_view_text_selection_text_get_p, ITs_webkit_efl_view_startup, ITs_webkit_efl_view_cleanup},
     {"ITc_ewk_view_visibility_set_p", ITc_ewk_view_visibility_set_p, ITs_webkit_efl_view_startup, ITs_webkit_efl_view_cleanup},
     {"ITc_ewk_view_html_string_load_p", ITc_ewk_view_html_string_load_p, ITs_webkit_efl_view_startup, ITs_webkit_efl_view_cleanup},
+    {"ITc_ewk_cookie_manager_file_scheme_cookies_allow_set_get_p", ITc_ewk_cookie_manager_file_scheme_cookies_allow_set_get_p, ITs_webkit_efl_view_startup, ITs_webkit_efl_view_cleanup},
        {"ITc_ewk_view_evaluate_javascript_p", ITc_ewk_view_evaluate_javascript_p, ITs_webkit_efl_view_startup, ITs_webkit_efl_view_cleanup},
        {"ITc_ewk_view_javascript_message_handler_add_p", ITc_ewk_view_javascript_message_handler_add_p, ITs_webkit_efl_view_startup, ITs_webkit_efl_view_cleanup},
        {"ITc_ewk_context_intercept_request_callback_set_p", ITc_ewk_context_intercept_request_callback_set_p, ITs_webkit_efl_view_startup, ITs_webkit_efl_view_cleanup},
@@ -279,8 +282,10 @@ testcase tc_array[] = {
        {"ITc_ewk_intercept_request_response_header_map_add_p", ITc_ewk_intercept_request_response_header_map_add_p, ITc_ewk_intercept_request_startup, ITc_ewk_intercept_request_cleanup},
        {"ITc_ewk_intercept_request_response_set_p", ITc_ewk_intercept_request_response_set_p, ITc_ewk_intercept_request_startup, ITc_ewk_intercept_request_cleanup},
        {"ITc_ewk_intercept_request_response_status_set_p", ITc_ewk_intercept_request_response_status_set_p, ITc_ewk_intercept_request_startup, ITc_ewk_intercept_request_cleanup},
-       {"ITc_ewk_intercept_request_response_write_chunk_p", ITc_ewk_intercept_request_response_write_chunk_p, ITc_ewk_intercept_request_startup, ITc_ewk_intercept_request_cleanup},    
+       {"ITc_ewk_intercept_request_response_write_chunk_p", ITc_ewk_intercept_request_response_write_chunk_p, ITc_ewk_intercept_request_startup, ITc_ewk_intercept_request_cleanup},
        {"ITc_webkit_ewk_view_add_in_incognito_mode_p", ITc_webkit_ewk_view_add_in_incognito_mode_p, ITs_webkit_view_add_incognito_mode_startup, ITs_webkit_view_add_incognito_mode_cleanup},
+       {"ITc_ewk_cookie_manager_persistent_storage_set_p", ITc_ewk_cookie_manager_persistent_storage_set_p, ITs_webkit_efl_view_startup, ITs_webkit_efl_view_cleanup},
+    {"ITc_ewk_view_focus_set_get_p", ITc_ewk_view_focus_set_get_p, ITs_webkit_efl_view_startup, ITs_webkit_efl_view_cleanup},
        {NULL, NULL}
 };
 
index 49add336bde9d06aeb75e30240b07f891fb5a5ed..5400cbaba6ec810f47c2fda4d6933f6f6cd222f3 100755 (executable)
@@ -162,7 +162,8 @@ extern int ITc_ewk_intercept_request_response_set_p(void);
 extern int ITc_ewk_intercept_request_response_status_set_p(void);
 extern int ITc_ewk_intercept_request_response_write_chunk_p(void);
 extern int ITc_webkit_ewk_view_add_in_incognito_mode_p(void);
-
+extern int ITc_ewk_cookie_manager_persistent_storage_set_p(void);
+extern int ITc_ewk_view_focus_set_get_p(void);
 
 testcase tc_array[] = {
     {"ITc_ewk_autofill_profile_data_set_get_p", ITc_ewk_autofill_profile_data_set_get_p, ITs_webkit_efl_autofill_startup, ITs_webkit_efl_autofill_cleanup},
@@ -283,6 +284,8 @@ testcase tc_array[] = {
        {"ITc_ewk_intercept_request_response_status_set_p", ITc_ewk_intercept_request_response_status_set_p, ITc_ewk_intercept_request_startup, ITc_ewk_intercept_request_cleanup},
        {"ITc_ewk_intercept_request_response_write_chunk_p", ITc_ewk_intercept_request_response_write_chunk_p, ITc_ewk_intercept_request_startup, ITc_ewk_intercept_request_cleanup},
        {"ITc_webkit_ewk_view_add_in_incognito_mode_p", ITc_webkit_ewk_view_add_in_incognito_mode_p, ITs_webkit_view_add_incognito_mode_startup, ITs_webkit_view_add_incognito_mode_cleanup},
+       {"ITc_ewk_cookie_manager_persistent_storage_set_p", ITc_ewk_cookie_manager_persistent_storage_set_p, ITs_webkit_efl_view_startup, ITs_webkit_efl_view_cleanup},
+    {"ITc_ewk_view_focus_set_get_p", ITc_ewk_view_focus_set_get_p, ITs_webkit_efl_view_startup, ITs_webkit_efl_view_cleanup},
        {NULL, NULL}
 };
 
index e10656e30b5579b38e1518a8b901267f9d6567e1..12b38baf937c0967bcc1cd76c57b8c653ca3d16e 100755 (executable)
@@ -137,6 +137,8 @@ extern int ITc_ewk_intercept_request_response_set_p(void);
 extern int ITc_ewk_intercept_request_response_status_set_p(void);
 extern int ITc_ewk_intercept_request_response_write_chunk_p(void);
 extern int ITc_webkit_ewk_view_add_in_incognito_mode_p(void);
+extern int ITc_ewk_cookie_manager_persistent_storage_set_p(void);
+extern int ITc_ewk_view_focus_set_get_p(void);
 
 
 testcase tc_array[] = {
@@ -239,6 +241,8 @@ testcase tc_array[] = {
        {"ITc_ewk_intercept_request_response_status_set_p", ITc_ewk_intercept_request_response_status_set_p, ITc_ewk_intercept_request_startup, ITc_ewk_intercept_request_cleanup},
        {"ITc_ewk_intercept_request_response_write_chunk_p", ITc_ewk_intercept_request_response_write_chunk_p, ITc_ewk_intercept_request_startup, ITc_ewk_intercept_request_cleanup},    
        {"ITc_webkit_ewk_view_add_in_incognito_mode_p", ITc_webkit_ewk_view_add_in_incognito_mode_p, ITs_webkit_view_add_incognito_mode_startup, ITs_webkit_view_add_incognito_mode_cleanup},
+       {"ITc_ewk_cookie_manager_persistent_storage_set_p", ITc_ewk_cookie_manager_persistent_storage_set_p, ITs_webkit_efl_view_startup, ITs_webkit_efl_view_cleanup},
+    {"ITc_ewk_view_focus_set_get_p", ITc_ewk_view_focus_set_get_p, ITs_webkit_efl_view_startup, ITs_webkit_efl_view_cleanup},
        {NULL, NULL}
 };
 
index e17f9e3b7afb666ac1bd775177fa95baf82c5c66..e7cd076542d1aa608c11125cad77c411b0cd73f4 100755 (executable)
@@ -125,6 +125,8 @@ extern int ITc_ewk_intercept_request_response_set_p(void);
 extern int ITc_ewk_intercept_request_response_status_set_p(void);
 extern int ITc_ewk_intercept_request_response_write_chunk_p(void);
 extern int ITc_webkit_ewk_view_add_in_incognito_mode_p(void);
+extern int ITc_ewk_cookie_manager_persistent_storage_set_p(void);
+extern int ITc_ewk_view_focus_set_get_p(void);
 
 
 testcase tc_array[] = {
@@ -216,6 +218,8 @@ testcase tc_array[] = {
        {"ITc_ewk_intercept_request_response_status_set_p", ITc_ewk_intercept_request_response_status_set_p, ITc_ewk_intercept_request_startup, ITc_ewk_intercept_request_cleanup},
        {"ITc_ewk_intercept_request_response_write_chunk_p", ITc_ewk_intercept_request_response_write_chunk_p, ITc_ewk_intercept_request_startup, ITc_ewk_intercept_request_cleanup},    
        {"ITc_webkit_ewk_view_add_in_incognito_mode_p", ITc_webkit_ewk_view_add_in_incognito_mode_p, ITs_webkit_view_add_incognito_mode_startup, ITs_webkit_view_add_incognito_mode_cleanup},
+       {"ITc_ewk_cookie_manager_persistent_storage_set_p", ITc_ewk_cookie_manager_persistent_storage_set_p, ITs_webkit_efl_view_startup, ITs_webkit_efl_view_cleanup},
+    {"ITc_ewk_view_focus_set_get_p", ITc_ewk_view_focus_set_get_p, ITs_webkit_efl_view_startup, ITs_webkit_efl_view_cleanup},
        {NULL, NULL}
 };