mirror of
https://github.com/curl/curl.git
synced 2026-07-24 16:17:15 +03:00
cmake: fix clang-tidy builds to verify tests, fix fallouts
- cmake: disable test bundles for clang-tidy builds. clang-tidy ignores #included .c sources, and incompatible with unity and bundles. It caused clang-tidy ignoring all test sources. It also means this is the first time tests sources are checked with clang-tidy. (autotools doesn't run it on tests.) - cmake: update description for `CURL_TEST_BUNDLES` option. - fix tests using special `CURLE_*` enums that were missing from `curl/curl.h`. Add them as reserved codes. - fix about ~50 other issues detected by clang-tidy: unchecked results, NULL derefs, memory leaks, casts to enums, unused assigments, uninitialized `errno` uses, unchecked `open`, indent, and more. - drop unnecessary casts (lib1533, lib3207). - suppress a few impossible cases with detailed `NOLINT`s. - lib/escape.c: drop `NOLINT` no longer necessary. Follow-up to72abf7c13a#13862 (possibly) - extend two existing `NOLINT` comments with details. Follow-up tofabfa8e402#15825 Closes #16756
This commit is contained in:
parent
efa65b24ae
commit
9465327084
52 changed files with 257 additions and 179 deletions
|
|
@ -60,7 +60,7 @@ UNITTEST_START
|
|||
struct Curl_llist_node *element_next;
|
||||
struct Curl_llist_node *element_prev;
|
||||
struct Curl_llist_node *to_remove;
|
||||
size_t llist_size = Curl_llist_count(&llist);
|
||||
size_t llist_size;
|
||||
|
||||
/**
|
||||
* testing llist_init
|
||||
|
|
|
|||
|
|
@ -58,11 +58,14 @@ static void test_parse(
|
|||
fail_unless(!!exp_options == !!options, "options expectation failed");
|
||||
|
||||
if(!unitfail) {
|
||||
fail_unless(!exp_username || strcmp(userstr, exp_username) == 0,
|
||||
fail_unless(!userstr || !exp_username ||
|
||||
strcmp(userstr, exp_username) == 0,
|
||||
"userstr should be equal to exp_username");
|
||||
fail_unless(!exp_password || strcmp(passwdstr, exp_password) == 0,
|
||||
fail_unless(!passwdstr || !exp_password ||
|
||||
strcmp(passwdstr, exp_password) == 0,
|
||||
"passwdstr should be equal to exp_password");
|
||||
fail_unless(!exp_options || strcmp(options, exp_options) == 0,
|
||||
fail_unless(!options || !exp_options ||
|
||||
strcmp(options, exp_options) == 0,
|
||||
"options should be equal to exp_options");
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -88,7 +88,7 @@ UNITTEST_START
|
|||
result = Curl_altsvc_parse(curl, asi,
|
||||
"h2=\"example.net:443\"; ma=\"180\";\r\n",
|
||||
ALPN_h2, "example.net", 80);
|
||||
fail_if(result, "Curl_altsvc_parse(4) failed!");
|
||||
fail_if(result, "Curl_altsvc_parse(5) failed!");
|
||||
fail_unless(Curl_llist_count(&asi->list) == 10, "wrong number of entries");
|
||||
|
||||
result =
|
||||
|
|
@ -96,34 +96,38 @@ UNITTEST_START
|
|||
"h2=\":443\", h3=\":443\"; "
|
||||
"persist = \"1\"; ma = 120;\r\n",
|
||||
ALPN_h1, "curl.se", 80);
|
||||
fail_if(result, "Curl_altsvc_parse(5) failed!");
|
||||
fail_if(result, "Curl_altsvc_parse(6) failed!");
|
||||
fail_unless(Curl_llist_count(&asi->list) == 12, "wrong number of entries");
|
||||
|
||||
/* clear that one again and decrease the counter */
|
||||
result = Curl_altsvc_parse(curl, asi, "clear;\r\n",
|
||||
ALPN_h1, "curl.se", 80);
|
||||
fail_if(result, "Curl_altsvc_parse(6) failed!");
|
||||
fail_if(result, "Curl_altsvc_parse(7) failed!");
|
||||
fail_unless(Curl_llist_count(&asi->list) == 10, "wrong number of entries");
|
||||
|
||||
/* only a non-existing alpn */
|
||||
result = Curl_altsvc_parse(curl, asi,
|
||||
"h6=\"example.net:443\"; ma=\"180\";\r\n",
|
||||
ALPN_h2, "5.example.net", 80);
|
||||
fail_if(result, "Curl_altsvc_parse(8) failed!");
|
||||
|
||||
/* missing quote in alpn host */
|
||||
result = Curl_altsvc_parse(curl, asi,
|
||||
"h2=\"example.net:443,; ma=\"180\";\r\n",
|
||||
ALPN_h2, "6.example.net", 80);
|
||||
fail_if(result, "Curl_altsvc_parse(9) failed!");
|
||||
|
||||
/* missing port in host name */
|
||||
result = Curl_altsvc_parse(curl, asi,
|
||||
"h2=\"example.net\"; ma=\"180\";\r\n",
|
||||
ALPN_h2, "7.example.net", 80);
|
||||
fail_if(result, "Curl_altsvc_parse(10) failed!");
|
||||
|
||||
/* illegal port in host name */
|
||||
result = Curl_altsvc_parse(curl, asi,
|
||||
"h2=\"example.net:70000\"; ma=\"180\";\r\n",
|
||||
ALPN_h2, "8.example.net", 80);
|
||||
fail_if(result, "Curl_altsvc_parse(11) failed!");
|
||||
|
||||
Curl_altsvc_save(curl, asi, outname);
|
||||
|
||||
|
|
|
|||
|
|
@ -100,8 +100,10 @@ UNITTEST_START
|
|||
buffer = (const char *)Curl_bufref_ptr(&bufref);
|
||||
fail_unless(buffer, "Allocated pointer is NULL");
|
||||
fail_unless(bufref.len == 3, "Wrong data size stored");
|
||||
fail_unless(!buffer[3], "Duplicated data should have been truncated");
|
||||
fail_unless(!strcmp(buffer, "166"), "Bad duplicated data");
|
||||
if(buffer) {
|
||||
fail_unless(!buffer[3], "Duplicated data should have been truncated");
|
||||
fail_unless(!strcmp(buffer, "166"), "Bad duplicated data");
|
||||
}
|
||||
|
||||
/**
|
||||
* testing Curl_bufref_free
|
||||
|
|
|
|||
|
|
@ -66,11 +66,11 @@ static void test_parse(
|
|||
fail_unless(!!exp_host == !!host, "host expectation failed");
|
||||
|
||||
if(!unitfail) {
|
||||
fail_unless(!exp_dev || strcmp(dev, exp_dev) == 0,
|
||||
fail_unless(!dev || !exp_dev || strcmp(dev, exp_dev) == 0,
|
||||
"dev should be equal to exp_dev");
|
||||
fail_unless(!exp_iface || strcmp(iface, exp_iface) == 0,
|
||||
fail_unless(!iface || !exp_iface || strcmp(iface, exp_iface) == 0,
|
||||
"iface should be equal to exp_iface");
|
||||
fail_unless(!exp_host || strcmp(host, exp_host) == 0,
|
||||
fail_unless(!host || !exp_host || strcmp(host, exp_host) == 0,
|
||||
"host should be equal to exp_host");
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -108,11 +108,11 @@ UNITTEST_START
|
|||
case 0:
|
||||
rc = Curl_get_line(&buf, fp);
|
||||
line = Curl_dyn_ptr(&buf);
|
||||
fail_unless(line && !strcmp("LINE1\n", line),
|
||||
fail_unless(rc && line && !strcmp("LINE1\n", line),
|
||||
"First line failed (1)");
|
||||
rc = Curl_get_line(&buf, fp);
|
||||
line = Curl_dyn_ptr(&buf);
|
||||
fail_unless(line && !strcmp("LINE2 NEWLINE\n", line),
|
||||
fail_unless(rc && line && !strcmp("LINE2 NEWLINE\n", line),
|
||||
"Second line failed (1)");
|
||||
rc = Curl_get_line(&buf, fp);
|
||||
abort_unless(!Curl_dyn_len(&buf), "Missed EOF (1)");
|
||||
|
|
@ -120,11 +120,11 @@ UNITTEST_START
|
|||
case 1:
|
||||
rc = Curl_get_line(&buf, fp);
|
||||
line = Curl_dyn_ptr(&buf);
|
||||
fail_unless(line && !strcmp("LINE1\n", line),
|
||||
fail_unless(rc && line && !strcmp("LINE1\n", line),
|
||||
"First line failed (2)");
|
||||
rc = Curl_get_line(&buf, fp);
|
||||
line = Curl_dyn_ptr(&buf);
|
||||
fail_unless(line && !strcmp("LINE2 NONEWLINE\n", line),
|
||||
fail_unless(rc && line && !strcmp("LINE2 NONEWLINE\n", line),
|
||||
"Second line failed (2)");
|
||||
rc = Curl_get_line(&buf, fp);
|
||||
abort_unless(!Curl_dyn_len(&buf), "Missed EOF (2)");
|
||||
|
|
@ -132,7 +132,7 @@ UNITTEST_START
|
|||
case 2:
|
||||
rc = Curl_get_line(&buf, fp);
|
||||
line = Curl_dyn_ptr(&buf);
|
||||
fail_unless(line && !strcmp("LINE1\n", line),
|
||||
fail_unless(rc && line && !strcmp("LINE1\n", line),
|
||||
"First line failed (3)");
|
||||
rc = Curl_get_line(&buf, fp);
|
||||
fail_unless(!Curl_dyn_len(&buf),
|
||||
|
|
@ -141,7 +141,7 @@ UNITTEST_START
|
|||
case 3:
|
||||
rc = Curl_get_line(&buf, fp);
|
||||
line = Curl_dyn_ptr(&buf);
|
||||
fail_unless(line && !strcmp("LINE1\n", line),
|
||||
fail_unless(rc && line && !strcmp("LINE1\n", line),
|
||||
"First line failed (4)");
|
||||
rc = Curl_get_line(&buf, fp);
|
||||
fail_unless(!Curl_dyn_len(&buf),
|
||||
|
|
@ -150,7 +150,7 @@ UNITTEST_START
|
|||
case 4:
|
||||
rc = Curl_get_line(&buf, fp);
|
||||
line = Curl_dyn_ptr(&buf);
|
||||
fail_unless(line && !strcmp("LINE1\n", line),
|
||||
fail_unless(rc && line && !strcmp("LINE1\n", line),
|
||||
"First line failed (5)");
|
||||
rc = Curl_get_line(&buf, fp);
|
||||
fail_unless(!Curl_dyn_len(&buf),
|
||||
|
|
@ -159,7 +159,7 @@ UNITTEST_START
|
|||
case 5:
|
||||
rc = Curl_get_line(&buf, fp);
|
||||
line = Curl_dyn_ptr(&buf);
|
||||
fail_unless(line && !strcmp("LINE1\x1aTEST\n", line),
|
||||
fail_unless(rc && line && !strcmp("LINE1\x1aTEST\n", line),
|
||||
"Missed/Misinterpreted ^Z (6)");
|
||||
rc = Curl_get_line(&buf, fp);
|
||||
abort_unless(!Curl_dyn_len(&buf), "Missed EOF (6)");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue