Nirbheek Chauhan
5195ad9126
gsturi: Add new API for storing unmodified userinfo / fragment
...
New API: gst_uri_from_string_escaped()
Identical to gst_uri_from_string() except that the userinfo and
fragment components of the URI will not be unescaped while parsing.
This is needed for correctly parsing usernames or passwords with `:`
in them such as reported at:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/831
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/583 >
2020-08-03 16:07:45 +00:00
Nirbheek Chauhan
5f4723d842
tests: Add more tests for gsturi
...
Add tests that exercise unescaping of userinfo and fragments.
Also convert to a modular macro-based definition so that we can reuse
the list of tests in the next commit.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/583 >
2020-08-03 16:07:44 +00:00
Hosang Lee
411d255154
gsturi: unescape '=' in http query
...
Don't use percent-encoding for '=' in http queries.
'=' in the following kind of http query should be maintained.
example:
?token=exp=123~acl=/QualityLevels(*~hmac=0cb ...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/580 >
2020-07-29 09:06:12 +00:00
Edward Hervey
67df099241
check: uri: Check return value
...
CID #1455381
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/472 >
2020-05-08 12:11:20 +02:00
Jordan Petridis
84512152c1
Run gst-indent through the files
...
This is required before we enabled an indent test in the CI.
https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/33
2018-11-28 05:58:53 +02:00
Havard Graff
1335110409
tests: fix tests when compiling with glib_checks=disabled
...
We won't be able to do ASSERT_CRITICAL, but the main body of the tests
are still valid, and given we ship GStreamer with this configuration, it
is important to be able to run some tests against it.
2018-11-10 15:37:36 +00:00
Havard Graff
4a7739f4b6
tests/uri: fix test after GHashTable changes in GLib 2.59
...
Maybe the implementation should not be dependent on a "random" hash-table
ordering, but at least this shows the problem clearly.
2018-11-10 15:37:36 +00:00
Tim-Philipp Müller
dd78aa27a4
tests: uri: fix build without -DGST_DISABLE_DEPRECATED
...
Must undefine it before including gst headers, since the test
tests deprecated API.
2018-02-15 12:11:55 +00:00
Tim-Philipp Müller
3b54dace2d
tests: include config.h and don't include unix headers
...
In many cases the unistd.h includes weren't actually needed.
Preparation for making tests work on Windows with MSVC.
2017-11-24 13:41:20 +01:00
Tim-Philipp Müller
25bf82a187
meson: fix tests build with --werror
...
Need to pass -DGST_DISABLE_DEPRECATED to avoid warnings when
testing deprecated API such as gst_uri_construct().
Also remove #ifndef GST_DISABLE_DEPRECATED guard from header
file, we don't use those any more for functions, the
GST_DEPRECATED_FOR macro is enough.
2017-06-15 10:53:11 +01:00
Dimitrios Katsaros
688d79033f
gsturi: Fixed incorrect escaping of path as a generic string
...
The gst_uri_construct function was escaping the location string
as a generic uri string. This is incorrect since the slash('/')
characters are reserved for use in this exact case. The patch
changes the escape_string function mode to handle the path correctly.
I have deleted the escape_string function since it is no longer being
used and have created a unit test for the function. I have also
deprecated this function in favour of the GstUri API.
https://bugzilla.gnome.org/show_bug.cgi?id=783787
2017-06-15 11:39:00 +03:00
Seungha Yang
0494c173e0
uri: Add new uri API to get media fragments URI as table
...
As an usecase of URI fragment, it can indicate temporal or spatial
dimension of a media stream. To easily parse key-value pair,
newly added gst_uri_get_media_fragment_table () API will provide
the table of key-value pair likewise URI query.
See also https://www.w3.org/TR/media-frags/
https://bugzilla.gnome.org/show_bug.cgi?id=774830
2016-12-06 20:28:55 +00:00
Florin Apostol
63fa09fc4d
uri: tests: added unit test for streams ending in .. without following /
...
https://bugzilla.gnome.org/show_bug.cgi?id=757065
2015-10-24 20:32:53 +03:00
Sebastian Dröge
697093c7d4
uri: Add test for correct absolute URI handling in gst_uri_from_string_with_base()
...
If the second parameter is an absolute URI, the base should have no effect and
the second parameter should be returned again.
https://bugzilla.gnome.org/show_bug.cgi?id=755134
2015-09-25 23:54:27 +02:00
Sebastian Dröge
40a0275298
uri: Fix indention
2015-01-22 23:10:06 +02:00
David Waring
d20fa132c1
uri: Fix new URI parsing tests based on GNet's
...
https://bugzilla.gnome.org/show_bug.cgi?id=743195
2015-01-22 22:08:12 +01:00
Sebastian Dröge
0637703fe7
uri: Add parsing unit test based on GNet's
...
Plus some new URIs to parse.
https://git.gnome.org/browse/archive/gnet/plain/tests/check/gnet/gneturi.c
https://bugzilla.gnome.org/show_bug.cgi?id=743195
2015-01-22 22:07:46 +01:00
David Waring
54c5f1855c
GstUri: Add GstUri miniobject to handle URIs in an RFC 3986 compliant fashion
...
https://bugzilla.gnome.org/show_bug.cgi?id=725221
2014-09-29 12:19:05 +03:00
Tim-Philipp Müller
666c8c11c6
Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-03 20:44:48 +00:00
Tim-Philipp Müller
3329f3f4e4
uri: there are valid URI protocols with only two letters, like fd://
...
We added a minimum length of three letters originally so we would
fail to recognise DOS/Windows-style filenames as valid URIs (as we
should). Two should be just fine as well.
2012-07-04 17:39:52 +01:00
Tim-Philipp Müller
e4b6bcb7b9
tests: add unit test for gst_element_make_from_uri()
...
https://bugzilla.gnome.org/show_bug.cgi?id=645467
2012-06-23 14:43:26 +01:00
Tim-Philipp Müller
d35487e50c
uri: require URI protocol bit to be at least 3 characters to be valid
...
We want to return FALSE when run on a windows-style file path.
https://bugzilla.gnome.org/show_bug.cgi?id=674296
2012-05-01 19:50:36 +01:00
Tim-Philipp Müller
362d7872dd
tests/check/gst/gsturi.c: Also check for the other file URI variant on win32.
...
Original commit message from CVS:
* tests/check/gst/gsturi.c:
Also check for the other file URI variant on win32.
2007-09-12 16:35:48 +00:00
Tim-Philipp Müller
3f967a8b04
gst/gsturi.c: If there's no hostname, we want to return 'c:/foo/bar.txt' and not '/c:/foo/bar.txt' on Windows. Fixes ...
...
Original commit message from CVS:
* gst/gsturi.c: (gst_uri_get_location):
If there's no hostname, we want to return 'c:/foo/bar.txt'
and not '/c:/foo/bar.txt' on Windows. Fixes #469402 .
* tests/check/gst/gsturi.c:
Unit test for the above and a few more things.
2007-09-12 12:36:51 +00:00
Tim-Philipp Müller
7f1acfb0c8
gst/gsturi.c: Don't leak plugin feature.
...
Original commit message from CVS:
* gst/gsturi.c: (gst_element_make_from_uri):
Don't leak plugin feature.
* tests/check/Makefile.am:
* tests/check/gst/.cvsignore:
* tests/check/gst/gsturi.c: (GST_START_TEST), (gst_uri_suite):
Add brain-dead unit test.
2007-05-11 14:46:10 +00:00