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_hit_test_request: public utc_blink_ewk_base
10 utc_blink_ewk_view_hit_test_request()
17 void LoadFinished(Evas_Object* webview) override {
18 EventLoopStop(utc_blink_ewk_base::Success);
21 static void hit_test_result(Evas_Object* o, int x, int y, int mode, Ewk_Hit_Test* hit_test, void* user_data)
23 utc_message("I'm here");
24 utc_blink_ewk_view_hit_test_request* owner = NULL;
25 OwnerFromVoid(user_data, &owner);
28 EXPECT_EQ(owner->req_x, x);
29 EXPECT_EQ(owner->req_y, y);
30 EXPECT_EQ(owner->req_mode, mode);
31 EXPECT_TRUE(hit_test);
32 owner->EventLoopStop(Success);
35 void PostSetUp() override {
36 ASSERT_EQ(EINA_TRUE, ewk_view_url_set(GetEwkWebView(), url));
37 ASSERT_EQ(Success, EventLoopStart());
40 void StartHitTest(int x, int y, int mode)
46 ASSERT_EQ(EINA_TRUE, ewk_view_hit_test_request(GetEwkWebView(), req_x, req_y, req_mode, hit_test_result, this));
47 ASSERT_EQ(Success, EventLoopStart());
51 static const char*const url;
57 const char*const utc_blink_ewk_view_hit_test_request::url="http://m.naver.com";
60 * @brief Checking whether hit test instance is created properly by hit test mode.
62 TEST_F(utc_blink_ewk_view_hit_test_request, POS_TEST1)
64 StartHitTest(100, 150, EWK_HIT_TEST_MODE_DEFAULT);
65 StartHitTest(120, 170, EWK_HIT_TEST_MODE_NODE_DATA);
66 StartHitTest(140, 190, EWK_HIT_TEST_MODE_IMAGE_DATA);
67 StartHitTest(160, 210, EWK_HIT_TEST_MODE_ALL);
68 StartHitTest(180, 230, EWK_HIT_TEST_MODE_IMAGE_DATA|EWK_HIT_TEST_MODE_NODE_DATA);
72 * @brief Checking whether function works properly in case of NULL of a webview.
74 TEST_F(utc_blink_ewk_view_hit_test_request, NEG_TEST1)
76 EXPECT_EQ(EINA_FALSE, ewk_view_hit_test_request(NULL, 100, 150, EWK_HIT_TEST_MODE_DEFAULT, hit_test_result, this));
77 EXPECT_EQ(EINA_FALSE, ewk_view_hit_test_request(NULL, 120, 170, EWK_HIT_TEST_MODE_NODE_DATA, hit_test_result, this));
78 EXPECT_EQ(EINA_FALSE, ewk_view_hit_test_request(NULL, 140, 190, EWK_HIT_TEST_MODE_IMAGE_DATA, hit_test_result, this));
79 EXPECT_EQ(EINA_FALSE, ewk_view_hit_test_request(NULL, 160, 210, EWK_HIT_TEST_MODE_ALL, hit_test_result, this));
80 EXPECT_EQ(EINA_FALSE, ewk_view_hit_test_request(NULL, 180, 230, EWK_HIT_TEST_MODE_IMAGE_DATA|EWK_HIT_TEST_MODE_NODE_DATA, hit_test_result, this));