forked from enlightenment/efl
ecore_con: add test cases related to cookies.
Summary: Added test cases related to ecore_con_url cookies. Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com> Reviewers: cedric Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2298 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
This commit is contained in:
parent
398378bf90
commit
2f4dee02e4
|
@ -10,6 +10,9 @@
|
||||||
#include <Eina.h>
|
#include <Eina.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
|
||||||
|
#define COOKIEJAR "testcookieXXXXXX.jar"
|
||||||
|
#define DEFAULT_LINK "www.google.com"
|
||||||
|
|
||||||
typedef struct _url_test
|
typedef struct _url_test
|
||||||
{
|
{
|
||||||
const char *_test_file;
|
const char *_test_file;
|
||||||
|
@ -155,7 +158,7 @@ error_user:
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef ECORE_CON_FTP_TEST_URL
|
#ifdef ECORE_CON_FTP_TEST_URL
|
||||||
START_TEST(ecore_test_ecore_con_url_ftp_upload)
|
START_TEST(ecore_con_test_ecore_con_url_ftp_upload)
|
||||||
{
|
{
|
||||||
Ecore_Con_Url *ec_url;
|
Ecore_Con_Url *ec_url;
|
||||||
url_test *info;
|
url_test *info;
|
||||||
|
@ -193,7 +196,7 @@ END_TEST
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef ECORE_CON_HTTP_TEST_URL
|
#ifdef ECORE_CON_HTTP_TEST_URL
|
||||||
START_TEST(ecore_test_ecore_con_url_post)
|
START_TEST(ecore_con_test_ecore_con_url_post)
|
||||||
{
|
{
|
||||||
Ecore_Con_Url *ec_url;
|
Ecore_Con_Url *ec_url;
|
||||||
url_test *info;
|
url_test *info;
|
||||||
|
@ -236,7 +239,7 @@ START_TEST(ecore_test_ecore_con_url_post)
|
||||||
END_TEST
|
END_TEST
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
START_TEST(ecore_test_ecore_con_url_download)
|
START_TEST(ecore_con_test_ecore_con_url_download)
|
||||||
{
|
{
|
||||||
Ecore_Con_Url *url;
|
Ecore_Con_Url *url;
|
||||||
url_test *info;
|
url_test *info;
|
||||||
|
@ -244,7 +247,7 @@ START_TEST(ecore_test_ecore_con_url_download)
|
||||||
#ifdef ECORE_CON_HTTP_TEST_URL
|
#ifdef ECORE_CON_HTTP_TEST_URL
|
||||||
const char link[] = ECORE_CON_HTTP_TEST_URL;
|
const char link[] = ECORE_CON_HTTP_TEST_URL;
|
||||||
#else
|
#else
|
||||||
const char link[] = "www.google.com";
|
const char link[] = DEFAULT_LINK;
|
||||||
#endif
|
#endif
|
||||||
char url_data[] = "test";
|
char url_data[] = "test";
|
||||||
|
|
||||||
|
@ -285,7 +288,7 @@ START_TEST(ecore_test_ecore_con_url_download)
|
||||||
}
|
}
|
||||||
END_TEST
|
END_TEST
|
||||||
|
|
||||||
START_TEST(ecore_test_ecore_con_url_create)
|
START_TEST(ecore_con_test_ecore_con_url_create)
|
||||||
{
|
{
|
||||||
Ecore_Con_Url *url;
|
Ecore_Con_Url *url;
|
||||||
int ret;
|
int ret;
|
||||||
|
@ -306,7 +309,7 @@ START_TEST(ecore_test_ecore_con_url_create)
|
||||||
}
|
}
|
||||||
END_TEST
|
END_TEST
|
||||||
|
|
||||||
START_TEST(ecore_test_ecore_con_url_init)
|
START_TEST(ecore_con_test_ecore_con_url_init)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
@ -318,15 +321,139 @@ START_TEST(ecore_test_ecore_con_url_init)
|
||||||
}
|
}
|
||||||
END_TEST
|
END_TEST
|
||||||
|
|
||||||
|
static Eina_Bool
|
||||||
|
_url_cookies_compl_cb(void *data EINA_UNUSED, int type EINA_UNUSED, void *event_info)
|
||||||
|
{
|
||||||
|
Ecore_Con_Event_Url_Complete *url_complete = event_info;
|
||||||
|
const Eina_List *headers, *l;
|
||||||
|
char *str;
|
||||||
|
|
||||||
|
headers = ecore_con_url_response_headers_get(url_complete->url_con);
|
||||||
|
|
||||||
|
fail_unless(headers);
|
||||||
|
|
||||||
|
printf("response headers:\n");
|
||||||
|
EINA_LIST_FOREACH(headers, l, str)
|
||||||
|
printf("header: %s", str);
|
||||||
|
|
||||||
|
ecore_con_url_cookies_jar_write(url_complete->url_con);
|
||||||
|
|
||||||
|
ecore_main_loop_quit();
|
||||||
|
|
||||||
|
return EINA_TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
static Ecore_Con_Url *
|
||||||
|
_ecore_con_url_cookies_test_init()
|
||||||
|
{
|
||||||
|
Ecore_Con_Url *ec_url = NULL;
|
||||||
|
#ifdef ECORE_CON_HTTP_TEST_URL
|
||||||
|
const char link[] = ECORE_CON_HTTP_TEST_URL;
|
||||||
|
#else
|
||||||
|
const char link[] = DEFAULT_LINK;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
eina_init();
|
||||||
|
ecore_con_init();
|
||||||
|
ecore_con_url_init();
|
||||||
|
|
||||||
|
ec_url = ecore_con_url_new(link);
|
||||||
|
fail_unless(ec_url);
|
||||||
|
|
||||||
|
ecore_event_handler_add(ECORE_CON_EVENT_URL_COMPLETE,
|
||||||
|
_url_cookies_compl_cb, NULL);
|
||||||
|
|
||||||
|
ecore_con_url_additional_header_add(ec_url, "User-Agent",
|
||||||
|
"Ecore_Con client");
|
||||||
|
|
||||||
|
ecore_con_url_cookies_init(ec_url);
|
||||||
|
|
||||||
|
return ec_url;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_ecore_con_url_cookies_test_shutdown(Ecore_Con_Url *ec_url, int tmpfd, Eina_Tmpstr **path)
|
||||||
|
{
|
||||||
|
close(tmpfd);
|
||||||
|
unlink(*path);
|
||||||
|
eina_tmpstr_del(*path);
|
||||||
|
ecore_con_url_free(ec_url);
|
||||||
|
ecore_con_url_shutdown();
|
||||||
|
ecore_con_shutdown();
|
||||||
|
eina_shutdown();
|
||||||
|
}
|
||||||
|
|
||||||
|
START_TEST(ecore_con_test_ecore_con_url_cookies_clear)
|
||||||
|
{
|
||||||
|
Ecore_Con_Url *ec_url = _ecore_con_url_cookies_test_init();
|
||||||
|
Eina_Tmpstr *path;
|
||||||
|
int tmpfd;
|
||||||
|
|
||||||
|
tmpfd = eina_file_mkstemp(COOKIEJAR, &path);
|
||||||
|
|
||||||
|
ecore_con_url_cookies_file_add(ec_url, path);
|
||||||
|
fail_unless(ecore_con_url_cookies_jar_file_set(ec_url, path));
|
||||||
|
ecore_con_url_cookies_clear(ec_url);
|
||||||
|
|
||||||
|
fail_unless(ecore_con_url_get(ec_url));
|
||||||
|
|
||||||
|
ecore_main_loop_begin();
|
||||||
|
|
||||||
|
_ecore_con_url_cookies_test_shutdown(ec_url, tmpfd, &path);
|
||||||
|
}
|
||||||
|
END_TEST
|
||||||
|
|
||||||
|
START_TEST(ecore_con_test_ecore_con_url_cookies_clear_session)
|
||||||
|
{
|
||||||
|
Ecore_Con_Url *ec_url = _ecore_con_url_cookies_test_init();
|
||||||
|
Eina_Tmpstr *path;
|
||||||
|
int tmpfd;
|
||||||
|
|
||||||
|
tmpfd = eina_file_mkstemp(COOKIEJAR, &path);
|
||||||
|
|
||||||
|
ecore_con_url_cookies_file_add(ec_url, path);
|
||||||
|
fail_unless(ecore_con_url_cookies_jar_file_set(ec_url, path));
|
||||||
|
ecore_con_url_cookies_session_clear(ec_url);
|
||||||
|
|
||||||
|
fail_unless(ecore_con_url_get(ec_url));
|
||||||
|
|
||||||
|
ecore_main_loop_begin();
|
||||||
|
|
||||||
|
_ecore_con_url_cookies_test_shutdown(ec_url, tmpfd, &path);
|
||||||
|
}
|
||||||
|
END_TEST
|
||||||
|
|
||||||
|
START_TEST(ecore_con_test_ecore_con_url_cookies_ignore_session)
|
||||||
|
{
|
||||||
|
Ecore_Con_Url *ec_url = _ecore_con_url_cookies_test_init();
|
||||||
|
Eina_Tmpstr *path;
|
||||||
|
int tmpfd;
|
||||||
|
|
||||||
|
tmpfd = eina_file_mkstemp(COOKIEJAR, &path);
|
||||||
|
|
||||||
|
fail_unless(ecore_con_url_cookies_jar_file_set(ec_url, path));
|
||||||
|
ecore_con_url_cookies_ignore_old_session_set(ec_url,EINA_TRUE);
|
||||||
|
|
||||||
|
fail_unless(ecore_con_url_get(ec_url));
|
||||||
|
|
||||||
|
ecore_main_loop_begin();
|
||||||
|
|
||||||
|
_ecore_con_url_cookies_test_shutdown(ec_url, tmpfd, &path);
|
||||||
|
}
|
||||||
|
END_TEST
|
||||||
|
|
||||||
void ecore_con_test_ecore_con_url(TCase *tc)
|
void ecore_con_test_ecore_con_url(TCase *tc)
|
||||||
{
|
{
|
||||||
tcase_add_test(tc, ecore_test_ecore_con_url_init);
|
tcase_add_test(tc, ecore_con_test_ecore_con_url_init);
|
||||||
tcase_add_test(tc, ecore_test_ecore_con_url_create);
|
tcase_add_test(tc, ecore_con_test_ecore_con_url_create);
|
||||||
tcase_add_test(tc, ecore_test_ecore_con_url_download);
|
tcase_add_test(tc, ecore_con_test_ecore_con_url_download);
|
||||||
|
tcase_add_test(tc, ecore_con_test_ecore_con_url_cookies_clear);
|
||||||
|
tcase_add_test(tc, ecore_con_test_ecore_con_url_cookies_clear_session);
|
||||||
|
tcase_add_test(tc, ecore_con_test_ecore_con_url_cookies_ignore_session);
|
||||||
#ifdef ECORE_CON_HTTP_TEST_URL
|
#ifdef ECORE_CON_HTTP_TEST_URL
|
||||||
tcase_add_test(tc, ecore_test_ecore_con_url_post);
|
tcase_add_test(tc, ecore_con_test_ecore_con_url_post);
|
||||||
#endif
|
#endif
|
||||||
#ifdef ECORE_CON_FTP_TEST_URL
|
#ifdef ECORE_CON_FTP_TEST_URL
|
||||||
tcase_add_test(tc, ecore_test_ecore_con_url_ftp_upload);
|
tcase_add_test(tc, ecore_con_test_ecore_con_url_ftp_upload);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue