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 /* Define those macros _before_ you include the utc_blink_ewk.h header file. */
7 #include "utc_blink_ewk_base.h"
9 #define URL "https://www.pcwebshop.co.uk"
11 class utc_blink_ewk_certificate_policy_decision_certificate_pem_get : public utc_blink_ewk_base
14 void PostSetUp() override {
16 evas_object_smart_callback_add(
17 GetEwkWebView(), "request,certificate,confirm", policy_decision, this);
20 void PreTearDown() override {
21 evas_object_smart_callback_del(GetEwkWebView(), "request,certificate,confirm", policy_decision);
22 eina_stringshare_del(pem);
25 void LoadFinished(Evas_Object* webview) override {
26 EventLoopStop(utc_blink_ewk_base::Failure); // will noop if EventLoopStop was alraedy called
29 static void policy_decision(void* data, Evas_Object* webview, void* event_info)
31 utc_message("[policy decision] :: \n");
32 utc_blink_ewk_certificate_policy_decision_certificate_pem_get *owner =
33 static_cast<utc_blink_ewk_certificate_policy_decision_certificate_pem_get*>(data);
35 Ewk_Certificate_Policy_Decision* policy = (Ewk_Certificate_Policy_Decision*)event_info;
37 owner->pem = eina_stringshare_add(ewk_certificate_policy_decision_certificate_pem_get(policy));
38 if (policy && owner->pem) {
39 utc_message("[policy decision] :: pem: %s\n", owner->pem);
40 owner->EventLoopStop(utc_blink_ewk_base::Success);
45 Eina_Stringshare* pem;
49 * @brief Checking whether ewk_certificate_policy_decision_certificate_pem_get
50 * returns not empty string.
52 TEST_F(utc_blink_ewk_certificate_policy_decision_certificate_pem_get, POS_TEST)
54 ASSERT_EQ(EINA_TRUE, ewk_view_url_set(GetEwkWebView(), URL));
55 ASSERT_EQ(Success, EventLoopStart());
56 ASSERT_STRNE("", pem);
60 * @brief Checking whether function works properly in case of NULL argument.
62 TEST_F(utc_blink_ewk_certificate_policy_decision_certificate_pem_get, NEG_TEST)
64 ASSERT_STREQ("", ewk_certificate_policy_decision_certificate_pem_get(NULL));