1 // Copyright 2014 Samsung Electronics. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "utc_blink_ewk_base.h"
7 #define SAMPLE_HTML_FILE ("/ewk_view/quota_ask.html")
10 class utc_blink_ewk_view_quota_permission_request_cancel : public utc_blink_ewk_base
13 void PostSetUp() override {
16 evas_object_smart_callback_add(GetEwkWebView(), "title,changed",
17 ToSmartCallback(title_changed), this);
20 void PreTearDown() override {
21 evas_object_smart_callback_del(GetEwkWebView(), "title,changed",
22 ToSmartCallback(title_changed));
25 static void quotaPermission(Evas_Object*, const Ewk_Quota_Permission_Request* request,
26 utc_blink_ewk_view_quota_permission_request_cancel* owner)
28 utc_message("[ %s ]", __PRETTY_FUNCTION__);
31 owner->EventLoopStop(Failure);
34 ewk_view_quota_permission_request_cancel(request);
37 static void title_changed(utc_blink_ewk_view_quota_permission_request_cancel* owner,
38 Evas_Object*, const char* title){
39 utc_message("[ %s ]", __PRETTY_FUNCTION__);
42 owner->isTitleNull = true;
44 owner->EventLoopStop(Failure);
47 owner->isTitleNull = false;
49 // Ignore initial title
50 if (owner->title != "No reply yet")
51 owner->EventLoopStop(Success);
60 * @brief Positive test case of ewk_view_quota_permission_request_cancel()
61 * ewk_view_quota_permission_request_callback should be set if the page content triggers a request callback
63 TEST_F(utc_blink_ewk_view_quota_permission_request_cancel, POS_TEST)
65 ewk_view_quota_permission_request_callback_set(
67 reinterpret_cast<Ewk_Quota_Permission_Request_Callback>(quotaPermission),
69 ASSERT_EQ(EINA_TRUE, ewk_view_url_set(GetEwkWebView(),
70 GetResourceUrl(SAMPLE_HTML_FILE).c_str()));
71 ASSERT_EQ(Success, EventLoopStart());
72 ASSERT_FALSE(isTitleNull);
73 ASSERT_STREQ("0", title.c_str());
77 * @brief Checking whether function works properly in case of NULL of a webview and callback.
79 TEST_F(utc_blink_ewk_view_quota_permission_request_cancel, NEG_TEST)
81 ewk_view_quota_permission_request_cancel(NULL);