[M120 Migration][MM] Support W3C EME
[platform/framework/web/chromium-efl.git] / tizen_src / ewk / unittest / utc_blink_ewk_view_scroll_size_get_func.cpp
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.
4
5 #include "utc_blink_ewk_base.h"
6
7 class utc_blink_ewk_view_scroll_size_get : public utc_blink_ewk_base
8 {
9  protected:
10   void PostSetUp() override
11   {
12     evas_object_smart_callback_add(GetEwkWebView(), "contents,size,changed", contentsSizeChanged, this);
13   }
14
15   void PreTearDown() override
16   {
17     evas_object_smart_callback_del(GetEwkWebView(), "contents,size,changed", contentsSizeChanged);
18   }
19
20   static void contentsSizeChanged(void* data, Evas_Object* eObject, void* dataFinished)
21   {
22     utc_message("[contentsSizeChanged] :: \n");
23     if(data)
24       static_cast<utc_blink_ewk_view_scroll_size_get*>(data)->EventLoopStop(Success);
25   }
26
27 protected:
28   static const char*const resource;
29 };
30
31 const char*const utc_blink_ewk_view_scroll_size_get::resource="/ewk_view/index_big_red_square.html";
32
33 /**
34  * @brief Positive test case of ewk_view_scroll_size_get(), API should return with true when passing correct arguments.
35  */
36 TEST_F(utc_blink_ewk_view_scroll_size_get, POS_TEST)
37 {
38   ASSERT_TRUE(ewk_view_url_set(GetEwkWebView(),GetResourceUrl(resource).c_str()));
39   ASSERT_EQ(Success, EventLoopStart());
40
41   int xPossibleScrollArea = 0, yPossibleScrollArea = 0;
42   ASSERT_TRUE(ewk_view_scroll_size_get(GetEwkWebView(), &xPossibleScrollArea, &yPossibleScrollArea));
43   ASSERT_GT(xPossibleScrollArea, 0);
44   ASSERT_GT(yPossibleScrollArea, 0);
45 }
46
47 /**
48   * @brief Negative test case of ewk_view_scroll_size_get(), testing for null.
49   */
50 TEST_F(utc_blink_ewk_view_scroll_size_get, NEG_TEST)
51 {
52   ASSERT_TRUE(ewk_view_url_set(GetEwkWebView(),GetResourceUrl(resource).c_str()));
53   ASSERT_EQ(Success, EventLoopStart());
54
55   int xPossibleScrollArea = 0, yPossibleScrollArea = 0;
56   ASSERT_TRUE(ewk_view_scroll_size_get(GetEwkWebView(), NULL, &yPossibleScrollArea));
57   ASSERT_GT(yPossibleScrollArea, 0);
58
59   ASSERT_TRUE(ewk_view_scroll_size_get(GetEwkWebView(), &xPossibleScrollArea, NULL));
60   ASSERT_GT(xPossibleScrollArea, 0);
61
62   ASSERT_TRUE(ewk_view_scroll_size_get(GetEwkWebView(), NULL, NULL));
63
64   ASSERT_FALSE(ewk_view_scroll_size_get(NULL, &xPossibleScrollArea, &yPossibleScrollArea));
65   ASSERT_EQ(0, xPossibleScrollArea);
66   ASSERT_EQ(0, yPossibleScrollArea);
67 }