tests: make individual test sources compile cleanly

Tidy up headers and includes to ensure all individual test source
compile cleanly (but not link). To allow running clang-tidy (and
possibly other static analyzers) on them. It also improves readability
and allows to verify them locally, without the bundle logic.

clang-tidy ignores #included C files, so it's blind to bundle C files
the include these tests. The current workaround of embedding has
a couple of downsides:. meaningless filenames and line numbers,
missing issues, messing up self header paths. Thus, running it on
individual sources would be beneficial.

Also:
- de-duplicate includes.
- untangle some includes.
- formatting/indentation fixes.
- merge `getpart.h` into `first.h`.

Ref: https://github.com/curl/curl/pull/17680#issuecomment-2991730158

Closes #17703
This commit is contained in:
Viktor Szakats 2025-06-22 01:10:59 +02:00
parent 4d4d09eb7f
commit 6a0cd4feb7
No known key found for this signature in database
GPG key ID: B5ABD165E2AEF201
259 changed files with 440 additions and 570 deletions

View file

@ -21,6 +21,8 @@
* SPDX-License-Identifier: curl
*
***************************************************************************/
#include "first.h"
#include <stdio.h>
#include <string.h>
@ -37,7 +39,7 @@ int main(int argc, char **argv)
entry_name = argv[1];
entry_func = NULL;
for(tmp = 0; tmp < CURL_ARRAYSIZE(s_entries); ++tmp) {
for(tmp = 0; s_entries[tmp].ptr; ++tmp) {
if(strcmp(entry_name, s_entries[tmp].name) == 0) {
entry_func = s_entries[tmp].ptr;
break;