diff options
author | Philip Withnall <philip@tecnocode.co.uk> | 2015-07-05 14:00:12 +0100 |
---|---|---|
committer | Philip Withnall <philip@tecnocode.co.uk> | 2015-07-05 14:10:02 +0100 |
commit | 33a76e0c55bc012ec1ed3fda62ea13075bdc437e (patch) | |
tree | c454c8442692b977fb1fa753b89d1a374104bf04 | |
parent | 718513ef649b7af7d15e76432eef72180012c08b (diff) | |
download | libgdata-33a76e0c55bc012ec1ed3fda62ea13075bdc437e.tar.gz |
tests: Port and re-enable the YouTube query URI tests
https://bugzilla.gnome.org/show_bug.cgi?id=750914
-rw-r--r-- | gdata/tests/youtube.c | 48 |
1 files changed, 39 insertions, 9 deletions
diff --git a/gdata/tests/youtube.c b/gdata/tests/youtube.c index 700538af..b13bb464 100644 --- a/gdata/tests/youtube.c +++ b/gdata/tests/youtube.c @@ -1957,6 +1957,18 @@ test_comment_properties_parent_comment_uri (void) g_object_unref (comment_); } +static gchar * +build_this_week_date_str (void) +{ + GTimeVal tv; + + g_get_current_time (&tv); + tv.tv_sec -= 7 * 24 * 60 * 60; /* this week */ + tv.tv_usec = 0; /* pointless accuracy */ + + return g_time_val_to_iso8601 (&tv); +} + static void test_query_uri (void) { @@ -1964,9 +1976,11 @@ test_query_uri (void) gboolean has_location; gchar *query_uri; GDataYouTubeQuery *query = gdata_youtube_query_new ("q"); + gchar *this_week_date_str, *expected_uri; G_GNUC_BEGIN_IGNORE_DEPRECATIONS + /* This should not appear in the query because it is deprecated. */ gdata_youtube_query_set_format (query, GDATA_YOUTUBE_FORMAT_RTSP_H263_AMR); g_assert_cmpuint (gdata_youtube_query_get_format (query), ==, 1); @@ -1980,22 +1994,26 @@ test_query_uri (void) g_assert (has_location == TRUE); query_uri = gdata_query_get_query_uri (GDATA_QUERY (query), "http://example.com"); - g_assert_cmpstr (query_uri, ==, "http://example.com?q=q&time=all_time&safeSearch=none&format=1&location=45.013640000000002,-97.123559999999998!&location-radius=112.5m"); + g_assert_cmpstr (query_uri, ==, "http://example.com?q=q&safeSearch=none&location=45.013640000000002,-97.123559999999998&locationRadius=112.5m"); g_free (query_uri); + /* This used to set the has-location parameter in the query, but that’s + * no longer supported by Google, so it should be the same as the + * following query. */ gdata_youtube_query_set_location (query, G_MAXDOUBLE, 0.6672, 52.8, TRUE); query_uri = gdata_query_get_query_uri (GDATA_QUERY (query), "http://example.com"); - g_assert_cmpstr (query_uri, ==, "http://example.com?q=q&time=all_time&safeSearch=none&format=1&location=!"); + g_assert_cmpstr (query_uri, ==, "http://example.com?q=q&safeSearch=none"); g_free (query_uri); gdata_youtube_query_set_location (query, G_MAXDOUBLE, G_MAXDOUBLE, 0.0, FALSE); query_uri = gdata_query_get_query_uri (GDATA_QUERY (query), "http://example.com"); - g_assert_cmpstr (query_uri, ==, "http://example.com?q=q&time=all_time&safeSearch=none&format=1"); + g_assert_cmpstr (query_uri, ==, "http://example.com?q=q&safeSearch=none"); g_free (query_uri); - /* Language */ + /* Language; this should not appear in the query as it is no longer + * supported. */ gdata_youtube_query_set_language (query, "fr"); g_assert_cmpstr (gdata_youtube_query_get_language (query), ==, "fr"); @@ -2006,22 +2024,24 @@ test_query_uri (void) g_assert_cmpstr (gdata_youtube_query_get_restriction (query), ==, "192.168.0.1"); query_uri = gdata_query_get_query_uri (GDATA_QUERY (query), "http://example.com"); - g_assert_cmpstr (query_uri, ==, "http://example.com?q=q&time=all_time&safeSearch=none&format=1&lr=fr&orderby=relevance_lang_fr&restriction=192.168.0.1"); + g_assert_cmpstr (query_uri, ==, "http://example.com?q=q&safeSearch=none&order=relevance®ionCode=192.168.0.1"); g_free (query_uri); gdata_youtube_query_set_safe_search (query, GDATA_YOUTUBE_SAFE_SEARCH_STRICT); g_assert_cmpuint (gdata_youtube_query_get_safe_search (query), ==, GDATA_YOUTUBE_SAFE_SEARCH_STRICT); query_uri = gdata_query_get_query_uri (GDATA_QUERY (query), "http://example.com"); - g_assert_cmpstr (query_uri, ==, "http://example.com?q=q&time=all_time&safeSearch=strict&format=1&lr=fr&orderby=relevance_lang_fr&restriction=192.168.0.1"); + g_assert_cmpstr (query_uri, ==, "http://example.com?q=q&safeSearch=strict&order=relevance®ionCode=192.168.0.1"); g_free (query_uri); + /* Deprecated and unused: */ gdata_youtube_query_set_sort_order (query, GDATA_YOUTUBE_SORT_ASCENDING); g_assert_cmpuint (gdata_youtube_query_get_sort_order (query), ==, GDATA_YOUTUBE_SORT_ASCENDING); gdata_youtube_query_set_age (query, GDATA_YOUTUBE_AGE_THIS_WEEK); g_assert_cmpuint (gdata_youtube_query_get_age (query), ==, GDATA_YOUTUBE_AGE_THIS_WEEK); + /* Deprecated and unused: */ gdata_youtube_query_set_uploader (query, GDATA_YOUTUBE_UPLOADER_PARTNER); g_assert_cmpuint (gdata_youtube_query_get_uploader (query), ==, GDATA_YOUTUBE_UPLOADER_PARTNER); @@ -2030,12 +2050,22 @@ test_query_uri (void) /* Check the built URI with a normal feed URI */ query_uri = gdata_query_get_query_uri (GDATA_QUERY (query), "http://example.com"); - g_assert_cmpstr (query_uri, ==, "http://example.com?q=q&time=this_week&safeSearch=strict&format=1&lr=fr&orderby=relevance_lang_fr&restriction=192.168.0.1&sortorder=ascending&uploader=partner&license=cc"); + this_week_date_str = build_this_week_date_str (); + expected_uri = g_strdup_printf ("http://example.com?q=q&publishedAfter=%s&safeSearch=strict&order=relevance®ionCode=192.168.0.1&videoLicense=creativeCommon", this_week_date_str); + g_assert_cmpstr (query_uri, ==, expected_uri); + + g_free (this_week_date_str); + g_free (expected_uri); g_free (query_uri); /* …and with a feed URI with pre-existing arguments */ query_uri = gdata_query_get_query_uri (GDATA_QUERY (query), "http://example.com?foobar=shizzle"); - g_assert_cmpstr (query_uri, ==, "http://example.com?foobar=shizzle&q=q&time=this_week&safeSearch=strict&format=1&lr=fr&orderby=relevance_lang_fr&restriction=192.168.0.1&sortorder=ascending&uploader=partner&license=cc"); + this_week_date_str = build_this_week_date_str (); + expected_uri = g_strdup_printf ("http://example.com?foobar=shizzle&q=q&publishedAfter=%s&safeSearch=strict&order=relevance®ionCode=192.168.0.1&videoLicense=creativeCommon", this_week_date_str); + g_assert_cmpstr (query_uri, ==, expected_uri); + + g_free (this_week_date_str); + g_free (expected_uri); g_free (query_uri); g_object_unref (query); @@ -2883,10 +2913,10 @@ FIXME: Port and re-enable these tests #if 0 g_test_add_func ("/youtube/comment/get_xml", test_comment_get_xml); g_test_add_func ("/youtube/comment/properties/parent-comment-id", test_comment_properties_parent_comment_uri); +#endif g_test_add_func ("/youtube/query/uri", test_query_uri); g_test_add_func ("/youtube/query/etag", test_query_etag); -#endif retval = g_test_run (); |