4 * Copyright (c) 2012 Samsung Electronics Co., Ltd.
6 * This library is free software; you can redistribute it and/or modify it under
7 * the terms of the GNU Lesser General Public License as published by the
8 * Free Software Foundation; either version 2.1 of the License, or (at your option)
11 * This library is distributed in the hope that it will be useful, but WITHOUT ANY
12 * WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
14 * License for more details.
16 * You should have received a copy of the GNU Lesser General Public License
17 * along with this library; if not, write to the Free Software Foundation, Inc., 51
18 * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
23 * @file utc_webkit2_ewk_policy_decision_response_mime_get_func.c
24 * @author Yuni Jeong <yhnet.jung@samsung.com>
26 * @brief Tests EWK function ewk_policy_decision_response_mime_get()
29 /* Define those macros _before_ you include the utc_webkit2_ewk.h header file. */
30 #define TESTED_FUN_NAME ewk_policy_decision_response_mime_get
31 #define POSITIVE_TEST_FUN_NUM 1
32 #define NEGATIVE_TEST_FUN_NUM 1
34 #include "utc_webkit2_ewk.h"
36 static Eina_Bool g_result = EINA_FALSE;
38 static void load_finished(void* data, Evas_Object* webview, void* event_info)
40 utc_message("[load_finished] :: \n");
42 utc_webkit2_main_loop_quit();
45 static void load_error(void* data, Evas_Object* webview, void* event_info)
47 utc_message("[load_error] :: \n");
48 g_result = EINA_FALSE;
49 utc_webkit2_main_loop_quit();
52 static void policy_navigation_decide(void* data, Evas_Object* webview, void* event_info)
54 utc_message("[policy_navigation_decide] :: \n");
57 static void policy_newwindow_decide(void* data, Evas_Object* webview, void* event_info)
59 utc_message("[policy_newwindow_decide] :: \n");
62 static void policy_response_decide(void* data, Evas_Object* webview, void* event_info)
64 utc_message("[policy_response_decide] :: \n");
66 Ewk_Policy_Decision* policy_decision = (Ewk_Policy_Decision*)event_info;
68 if (ewk_policy_decision_response_mime_get(policy_decision))
71 g_result = EINA_FALSE;
73 utc_webkit2_main_loop_quit();
76 /* Startup and cleanup functions */
77 static void startup(void)
79 utc_webkit2_ewk_test_init();
81 evas_object_smart_callback_add(test_view.webview, "load,finished", load_finished, NULL);
82 evas_object_smart_callback_add(test_view.webview, "load,error", load_error, NULL);
83 evas_object_smart_callback_add(test_view.webview, "policy,response,decide", policy_response_decide, NULL);
86 static void cleanup(void)
88 evas_object_smart_callback_del(test_view.webview, "load,finished", load_finished);
89 evas_object_smart_callback_del(test_view.webview, "load,error", load_error);
90 evas_object_smart_callback_del(test_view.webview, "policy,response,decide", policy_response_decide);
92 utc_webkit2_ewk_test_end();
96 * @brief Tests if the mimetype for policy decision is returned properly.
100 if (!ewk_view_url_set(test_view.webview, "http://www.google.com")) {
101 utc_message("[ewk_view_url_set error] :: \n");
105 utc_webkit2_main_loop_begin();
107 utc_check_eq(g_result, EINA_TRUE);
111 * @brief Tests if function works properly in case of NULL of a webview
115 utc_check_eq(ewk_policy_decision_response_mime_get(0), 0);