From 6499dd847ca8889ea0aa4a2fe934bcfff9466e60 Mon Sep 17 00:00:00 2001 From: Garrett D'Amore Date: Mon, 18 Nov 2024 20:36:59 -0800 Subject: Add new nni_url_parse_inline, and add more test cases for coverage. The inline parsing will be used internally to avoid some allocations. --- src/core/url_test.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'src/core/url_test.c') diff --git a/src/core/url_test.c b/src/core/url_test.c index 4de9d4c2..0e30c29e 100644 --- a/src/core/url_test.c +++ b/src/core/url_test.c @@ -384,6 +384,30 @@ test_url_good_utf8(void) nng_url_free(url); } +void +test_url_missing_port(void) +{ + nng_url *url = NULL; + NUTS_FAIL( + nng_url_parse(&url, "http://www.x.com:/something"), NNG_EINVAL); +} + +void +test_url_unknown_service(void) +{ + nng_url *url = NULL; + NUTS_FAIL( + nng_url_parse(&url, "http://www.x.com:nosuchservice"), NNG_EINVAL); +} + +void +test_url_duplicate_userinfo(void) +{ + nng_url *url = NULL; + NUTS_FAIL( + nng_url_parse(&url, "http://user@@user@www.x.com"), NNG_EINVAL); +} + void test_url_decode(void) { @@ -463,6 +487,9 @@ NUTS_TESTS = { { "url canonify", test_url_canonify }, { "url path resolve", test_url_path_resolve }, { "url query info pass", test_url_query_info_pass }, + { "url missing port", test_url_missing_port }, + { "url unknown service", test_url_unknown_service }, + { "url duplicate userinfo", test_url_duplicate_userinfo }, { "url bad utf8", test_url_bad_utf8 }, { "url good utf8", test_url_good_utf8 }, { "url decode", test_url_decode }, -- cgit v1.2.3-70-g09d2