Minor reorg of the lib1156 code and it works fine for hyper.

Closes #8127
This commit is contained in:
Daniel Stenberg 2021-12-09 15:46:32 +01:00
Родитель fde1f1bfe9
Коммит 6f73e68d18
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 5CC908FDB71E12C2
3 изменённых файлов: 35 добавлений и 29 удалений

Просмотреть файл

@ -56,7 +56,6 @@
673
718
1021
1156
1417
1525
1526

Просмотреть файл

@ -64,9 +64,8 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER
# Verify data after the test has been "shot"
<verify>
<stderr mode="text">
URL: http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER
<stdout mode="text">
0
</stderr>
</stdout>
</verify>
</testcase>

Просмотреть файл

@ -93,6 +93,7 @@ static int onetest(CURL *curl, const char *url, const struct testparams *p,
replyselector += 2;
msnprintf(urlbuf, sizeof(urlbuf), "%s%04u", url, replyselector);
test_setopt(curl, CURLOPT_URL, urlbuf);
test_setopt(curl, CURLOPT_VERBOSE, 1L);
test_setopt(curl, CURLOPT_RESUME_FROM, (p->flags & F_RESUME)? 3: 0);
test_setopt(curl, CURLOPT_RANGE, !(p->flags & F_RESUME)?
"3-1000000": (char *) NULL);
@ -100,22 +101,22 @@ static int onetest(CURL *curl, const char *url, const struct testparams *p,
hasbody = 0;
res = curl_easy_perform(curl);
if(res != p->result) {
fprintf(stderr, "%d: bad error code (%d): resume=%s, fail=%s, http416=%s, "
"content-range=%s, expected=%d\n", num, res,
(p->flags & F_RESUME)? "yes": "no",
(p->flags & F_FAIL)? "yes": "no",
(p->flags & F_HTTP416)? "yes": "no",
(p->flags & F_CONTENTRANGE)? "yes": "no",
p->result);
printf("%d: bad error code (%d): resume=%s, fail=%s, http416=%s, "
"content-range=%s, expected=%d\n", num, res,
(p->flags & F_RESUME)? "yes": "no",
(p->flags & F_FAIL)? "yes": "no",
(p->flags & F_HTTP416)? "yes": "no",
(p->flags & F_CONTENTRANGE)? "yes": "no",
p->result);
return 1;
}
if(hasbody && (p->flags & F_IGNOREBODY)) {
fprintf(stderr, "body should be ignored and is not: resume=%s, fail=%s, "
"http416=%s, content-range=%s\n",
(p->flags & F_RESUME)? "yes": "no",
(p->flags & F_FAIL)? "yes": "no",
(p->flags & F_HTTP416)? "yes": "no",
(p->flags & F_CONTENTRANGE)? "yes": "no");
printf("body should be ignored and is not: resume=%s, fail=%s, "
"http416=%s, content-range=%s\n",
(p->flags & F_RESUME)? "yes": "no",
(p->flags & F_FAIL)? "yes": "no",
(p->flags & F_HTTP416)? "yes": "no",
(p->flags & F_CONTENTRANGE)? "yes": "no");
return 1;
}
return 0;
@ -125,6 +126,9 @@ static int onetest(CURL *curl, const char *url, const struct testparams *p,
return 1;
}
/* for debugging: */
/*#define SINGLETEST 9*/
int test(char *URL)
{
CURLcode res;
@ -137,21 +141,25 @@ int test(char *URL)
return TEST_ERR_MAJOR_BAD;
}
curl = curl_easy_init();
if(!curl) {
fprintf(stderr, "curl_easy_init() failed\n");
curl_global_cleanup();
return TEST_ERR_MAJOR_BAD;
for(i = 0; i < sizeof(params) / sizeof(params[0]); i++) {
curl = curl_easy_init();
if(!curl) {
fprintf(stderr, "curl_easy_init() failed\n");
curl_global_cleanup();
return TEST_ERR_MAJOR_BAD;
}
test_setopt(curl, CURLOPT_WRITEFUNCTION, writedata);
#ifdef SINGLETEST
if(SINGLETEST == i)
#endif
status |= onetest(curl, URL, params + i, i);
curl_easy_cleanup(curl);
}
test_setopt(curl, CURLOPT_WRITEFUNCTION, writedata);
for(i = 0; i < sizeof(params) / sizeof(params[0]); i++)
status |= onetest(curl, URL, params + i, i);
curl_easy_cleanup(curl);
curl_global_cleanup();
fprintf(stderr, "%d\n", status);
printf("%d\n", status);
return status;
test_cleanup: