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 class utc_blink_ewk_view_scale_set : public utc_blink_ewk_base
10 /* Callback for load finished */
11 void LoadFinished(Evas_Object* webview) override { EventLoopStop(Success); }
13 /* Function called when timer expires */
14 static Eina_Bool mainLoopQuit(void* data)
17 static_cast<utc_blink_ewk_view_scale_set*>(data)->EventLoopStop(Success);
18 return ECORE_CALLBACK_DONE;
22 static const char*const sample;
25 const char* const utc_blink_ewk_view_scale_set::sample =
26 "/common/sample_2.html";
29 * @brief Positive test case of ewk_view_scale_set(). Page is loaded, APIs for setting scale and retrieving its value are called.
31 TEST_F(utc_blink_ewk_view_scale_set, POS_TEST)
33 if(!ewk_view_url_set(GetEwkWebView(),GetResourceUrl(sample).c_str()))
35 if(Success!=EventLoopStart())
38 const double scaleFactor = 1.0;
39 const Evas_Coord centerX = 5;
40 const Evas_Coord centerY = 5;
42 Eina_Bool result = ewk_view_scale_set(GetEwkWebView(), scaleFactor, centerX, centerY);
43 ecore_timer_add(0.5f, mainLoopQuit, this);
44 if(Success!=EventLoopStart())
47 const double getScaleFactor = ewk_view_scale_get(GetEwkWebView());
49 Evas_Coord getCenterX = 0, getCenterY = 0;
50 ewk_view_scroll_pos_get(GetEwkWebView(), &getCenterX, &getCenterY);
52 if (scaleFactor != getScaleFactor || centerX != getCenterX ||
53 centerY != getCenterY)
56 utc_check_eq(result, EINA_TRUE);
60 * @brief Checking whether function works properly in case of NULL of a webview.
62 TEST_F(utc_blink_ewk_view_scale_set, NEG_TEST)
64 const Eina_Bool result = ewk_view_scale_set(NULL, 1, 0, 0);
65 utc_check_eq(result, EINA_FALSE);