{
EventLoopStop(utc_blink_ewk_base::Failure); // won't fail the test if EventLoopStop was already called
}
-
- void PostSetUp()
- {
- evas_object_smart_callback_add(GetEwkWebView(), "title,changed", title_changed, this);
- }
-
- void PreTearDown()
- {
- evas_object_smart_callback_del(GetEwkWebView(), "title,changed", title_changed);
- }
-
- static void title_changed(void* data, Evas_Object* webview, void* event_info)
- {
- utc_message("[title changed] ::");
- if(data == NULL)
- FAIL();
-
- utc_blink_ewk_view_user_agent_set* owner = static_cast<utc_blink_ewk_view_user_agent_set*>(data);
-
- char* title = strdup(ewk_view_title_get(owner->GetEwkWebView()));
-
- if(strcmp(title, USER_AGENT_STRING))
- owner->EventLoopStop(utc_blink_ewk_base::Success);
- free(title);
- title = NULL;
- }
};
/**
*/
TEST_F(utc_blink_ewk_view_user_agent_set, POS_TEST)
{
- const char textStyleHTML[] =
- "<html>"
- "<head>"
- "<title>User Agent Test</title>"
- "<script>"
- "document.title=navigator.userAgent;"
- "</script>"
- "</head>"
- "<body></body>"
- "</html>";
-
- Eina_Bool result = ewk_view_html_string_load(GetEwkWebView(), textStyleHTML, 0, 0);
- if (!result)
- FAIL();
+ const char* defaultUA = ewk_view_user_agent_get(GetEwkWebView());
+ ASSERT_TRUE(defaultUA);
+ defaultUA = strdup(defaultUA);
+ ASSERT_TRUE(defaultUA);
+ ASSERT_STRNE(defaultUA, USER_AGENT_STRING);
+
+ EXPECT_TRUE(ewk_view_user_agent_set(GetEwkWebView(), USER_AGENT_STRING));
+ const char* ua = ewk_view_user_agent_get(GetEwkWebView());
+ ASSERT_TRUE(ua);
+ ua = strdup(ua);
+ ASSERT_TRUE(ua);
+ EXPECT_STREQ(USER_AGENT_STRING, ua);
+
+ free(ua);
+ free(defaultUA);
+}
- utc_blink_ewk_base::MainLoopResult main_result = EventLoopStart();
+/**
+ * @brief Positive test case of ewk_view_user_agent_set() with empty string
+ */
+TEST_F(utc_blink_ewk_view_user_agent_set, EmptyString)
+{
+ const char* defaultUA = ewk_view_user_agent_get(GetEwkWebView());
+ ASSERT_TRUE(defaultUA);
+ defaultUA = strdup(defaultUA);
+ ASSERT_TRUE(defaultUA);
+ ASSERT_STRNE(defaultUA, USER_AGENT_STRING);
+
+ EXPECT_TRUE(ewk_view_user_agent_set(GetEwkWebView(), USER_AGENT_STRING));
+ const char* ua = ewk_view_user_agent_get(GetEwkWebView());
+ ASSERT_TRUE(ua);
+ ua = strdup(ua);
+ ASSERT_TRUE(ua);
+ EXPECT_STREQ(USER_AGENT_STRING, ua);
+
+ const char* emptyString = "";
+ EXPECT_TRUE(ewk_view_user_agent_set(GetEwkWebView(), emptyString));
+ free(ua);
+ ua = ewk_view_user_agent_get(GetEwkWebView());
+ ASSERT_TRUE(ua);
+ ua = strdup(ua);
+ ASSERT_TRUE(ua);
+ EXPECT_STREQ(defaultUA, ua);
+
+ free(ua);
+ free(defaultUA);
+}
- if (main_result != utc_blink_ewk_base::Success)
- FAIL();
+/**
+ * @brief Positive test case of ewk_view_user_agent_set() with Null string
+ */
+TEST_F(utc_blink_ewk_view_user_agent_set, NullString)
+{
+ const char* defaultUA = ewk_view_user_agent_get(GetEwkWebView());
+ ASSERT_TRUE(defaultUA);
+ defaultUA = strdup(defaultUA);
+ ASSERT_TRUE(defaultUA);
+ ASSERT_STRNE(defaultUA, USER_AGENT_STRING);
+
+ EXPECT_TRUE(ewk_view_user_agent_set(GetEwkWebView(), USER_AGENT_STRING));
+ const char* ua = ewk_view_user_agent_get(GetEwkWebView());
+ ASSERT_TRUE(ua);
+ ua = strdup(ua);
+ ASSERT_TRUE(ua);
+ EXPECT_STREQ(USER_AGENT_STRING, ua);
+
+ EXPECT_TRUE(ewk_view_user_agent_set(GetEwkWebView(), NULL));
+ free(ua);
+ ua = ewk_view_user_agent_get(GetEwkWebView());
+ ASSERT_TRUE(ua);
+ ua = strdup(ua);
+ ASSERT_TRUE(ua);
+ EXPECT_STREQ(defaultUA, ua);
+
+ free(ua);
+ free(defaultUA);
}
/**
*/
TEST_F(utc_blink_ewk_view_user_agent_set, NEG_TEST)
{
- char* userAgent = strdup(ewk_view_user_agent_get(GetEwkWebView()));
-
- Eina_Bool value = ewk_view_user_agent_set(NULL, "");
-
- if (EINA_TRUE == value)
- FAIL();
-
- char* newUserAgent = strdup(ewk_view_user_agent_get(GetEwkWebView()));
-
- if(strcmp(newUserAgent, userAgent) != 0) {
- free(userAgent);
- free(newUserAgent);
- userAgent = NULL;
- newUserAgent = NULL;
- FAIL();
- }
- free(userAgent);
- free(newUserAgent);
- userAgent = NULL;
- newUserAgent = NULL;
-}
\ No newline at end of file
+ EXPECT_FALSE(ewk_view_user_agent_set(NULL, ""));
+}