diff options
author | Daniel Gustafsson <daniel@yesql.se> | 2018-12-11 15:02:24 +0100 |
---|---|---|
committer | Daniel Gustafsson <daniel@yesql.se> | 2018-12-11 15:02:24 +0100 |
commit | e1be2ecba485e49c740286b7bc431592507aa8f0 (patch) | |
tree | d7f5342e4609a8d39eae81df1bb6d2e709921a64 /lib | |
parent | 63533cbde279ce91ed9e9c92d47b6297235d1d02 (diff) |
tests: add urlapi unittest
This adds a new unittest intended to cover the internal functions in
the urlapi code, starting with parse_port(). In order to avoid name
collisions in debug builds, parse_port() is renamed Curl_parse_port()
since it will be exported.
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Reviewed-by: Marcel Raad <Marcel.Raad@teamviewer.com>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/urlapi-int.h | 5 | ||||
-rw-r--r-- | lib/urlapi.c | 10 |
2 files changed, 13 insertions, 2 deletions
diff --git a/lib/urlapi-int.h b/lib/urlapi-int.h index a57d2e22b..75a360542 100644 --- a/lib/urlapi-int.h +++ b/lib/urlapi-int.h @@ -30,4 +30,9 @@ bool Curl_is_absolute_url(const char *url, char *scheme, size_t buflen); char *Curl_concat_url(const char *base, const char *relurl); size_t Curl_strlen_url(const char *url, bool relative); void Curl_strcpy_url(char *output, const char *url, bool relative); + +#ifdef DEBUGBUILD +CURLUcode Curl_parse_port(struct Curl_URL *u, char *hostname); +#endif + #endif /* HEADER_CURL_URLAPI_INT_H */ diff --git a/lib/urlapi.c b/lib/urlapi.c index 21942ebad..5cbda6a98 100644 --- a/lib/urlapi.c +++ b/lib/urlapi.c @@ -67,6 +67,12 @@ struct Curl_URL { #define DEFAULT_SCHEME "https" +#ifdef DEBUGBUILD +#define UNITTEST +#else +#define UNITTEST static +#endif + static void free_urlhandle(struct Curl_URL *u) { free(u->scheme); @@ -488,7 +494,7 @@ static CURLUcode parse_hostname_login(struct Curl_URL *u, return result; } -static CURLUcode parse_port(struct Curl_URL *u, char *hostname) +UNITTEST CURLUcode Curl_parse_port(struct Curl_URL *u, char *hostname) { char *portptr = NULL; char endbracket; @@ -845,7 +851,7 @@ static CURLUcode seturl(const char *url, CURLU *u, unsigned int flags) if(result) return result; - result = parse_port(u, hostname); + result = Curl_parse_port(u, hostname); if(result) return result; |