test #558 tests internal hash create/destroy
test #559 tests internal hash create/add/destroy
This commit is contained in:
parent
fa8a78ff01
commit
92f3b3895e
@ -59,7 +59,7 @@ EXTRA_DIST = test1 test108 test117 test127 test20 test27 test34 test46 \
|
||||
test1064 test1065 test1066 test1067 test1068 test1069 test1070 test1071 \
|
||||
test1072 test1073 test1074 test1075 test1076 test1077 test1078 test1079 \
|
||||
test1080 test1081 test1082 test1083 test1084 test1085 test633 test634 \
|
||||
test635 test636 test637 test558
|
||||
test635 test636 test637 test558 test559
|
||||
|
||||
filecheck:
|
||||
@mkdir test-place; \
|
||||
|
@ -20,7 +20,7 @@ lib558
|
||||
</precheck>
|
||||
|
||||
<name>
|
||||
internal hash testing
|
||||
internal hash create/destroy testing
|
||||
</name>
|
||||
<command>
|
||||
nothing
|
||||
|
44
tests/data/test559
Normal file
44
tests/data/test559
Normal file
@ -0,0 +1,44 @@
|
||||
<testcase>
|
||||
#
|
||||
# Server-side
|
||||
<reply>
|
||||
</reply>
|
||||
|
||||
# Client-side
|
||||
<client>
|
||||
<server>
|
||||
none
|
||||
</server>
|
||||
# tool is what to use instead of 'curl'
|
||||
<tool>
|
||||
lib559
|
||||
</tool>
|
||||
# precheck is a command line to run before the test,
|
||||
# to see if we can execute the test or not
|
||||
<precheck>
|
||||
./libtest/lib559 check
|
||||
</precheck>
|
||||
|
||||
<name>
|
||||
internal hash create/add/destroy testing
|
||||
</name>
|
||||
<command>
|
||||
nothing
|
||||
</command>
|
||||
</client>
|
||||
|
||||
#
|
||||
# Verify data after the test has been "shot"
|
||||
<verify>
|
||||
<stdout mode="text">
|
||||
easy handle init OK
|
||||
creating hash...
|
||||
hash creation OK
|
||||
destroying hash...
|
||||
hash destruction OK
|
||||
destroying easy handle...
|
||||
easy handle destruction OK
|
||||
</stdout>
|
||||
</verify>
|
||||
|
||||
</testcase>
|
@ -53,7 +53,7 @@ noinst_PROGRAMS = lib500 lib501 lib502 lib503 lib504 lib505 lib506 \
|
||||
lib517 lib518 lib519 lib520 lib521 lib523 lib524 lib525 lib526 lib527 \
|
||||
lib529 lib530 lib532 lib533 lib536 lib537 lib540 lib541 lib542 lib543 \
|
||||
lib544 lib545 lib547 lib548 lib549 lib552 lib553 lib554 lib555 lib556 \
|
||||
lib539 lib557 lib558
|
||||
lib539 lib557 lib558 lib559
|
||||
|
||||
# Dependencies (may need to be overriden)
|
||||
LDADD = $(LIBDIR)/libcurl.la
|
||||
@ -164,3 +164,7 @@ lib556_SOURCES = lib556.c $(SUPPORTFILES)
|
||||
lib557_SOURCES = lib557.c $(SUPPORTFILES)
|
||||
|
||||
lib558_SOURCES = lib558.c $(SUPPORTFILES)
|
||||
lib526_CFLAGS = -DLIB558
|
||||
|
||||
lib559_SOURCES = lib558.c $(SUPPORTFILES)
|
||||
lib526_CFLAGS = -DLIB559
|
||||
|
@ -26,6 +26,7 @@
|
||||
#include "memory.h"
|
||||
#include "memdebug.h"
|
||||
|
||||
/* This source file is used for test # 558 and 559 */
|
||||
|
||||
/*
|
||||
* This hacky test bypasses the library external API,
|
||||
@ -38,7 +39,7 @@
|
||||
|
||||
#if !defined(CURL_HIDDEN_SYMBOLS)
|
||||
|
||||
|
||||
#ifdef LIB559
|
||||
static Curl_addrinfo *fake_ai(void)
|
||||
{
|
||||
Curl_addrinfo *ai;
|
||||
@ -72,16 +73,13 @@ static Curl_addrinfo *fake_ai(void)
|
||||
|
||||
return ai;
|
||||
}
|
||||
#endif /* LIB559 */
|
||||
|
||||
|
||||
int test(char *URL)
|
||||
{
|
||||
CURL *easyh;
|
||||
struct curl_hash *hp;
|
||||
char *data_key;
|
||||
struct Curl_dns_entry *data_node;
|
||||
struct Curl_dns_entry *nodep;
|
||||
size_t key_len;
|
||||
|
||||
if(!strcmp(URL, "check")) {
|
||||
/* test harness script verifying if this test can run */
|
||||
@ -104,34 +102,41 @@ int test(char *URL)
|
||||
fprintf(stdout, "hash creation OK\n");
|
||||
|
||||
/**/
|
||||
#ifdef LIB559
|
||||
{
|
||||
char *data_key;
|
||||
struct Curl_dns_entry *data_node;
|
||||
struct Curl_dns_entry *nodep;
|
||||
size_t key_len;
|
||||
|
||||
data_key = aprintf("%s:%d", "dummy", 0);
|
||||
if(!data_key) {
|
||||
fprintf(stdout, "data key creation failed\n");
|
||||
return TEST_ERR_MAJOR_BAD;
|
||||
data_key = aprintf("%s:%d", "dummy", 0);
|
||||
if(!data_key) {
|
||||
fprintf(stdout, "data key creation failed\n");
|
||||
return TEST_ERR_MAJOR_BAD;
|
||||
}
|
||||
key_len = strlen(data_key);
|
||||
|
||||
data_node = calloc(1, sizeof(struct Curl_dns_entry));
|
||||
if(!data_node) {
|
||||
fprintf(stdout, "data node creation failed\n");
|
||||
return TEST_ERR_MAJOR_BAD;
|
||||
}
|
||||
|
||||
data_node->addr = fake_ai();
|
||||
if(!data_node->addr) {
|
||||
fprintf(stdout, "actual data creation failed\n");
|
||||
return TEST_ERR_MAJOR_BAD;
|
||||
}
|
||||
|
||||
nodep = Curl_hash_add(hp, data_key, key_len+1, (void *)data_node);
|
||||
if(!nodep) {
|
||||
fprintf(stdout, "insertion into hash failed\n");
|
||||
return TEST_ERR_MAJOR_BAD;
|
||||
}
|
||||
|
||||
free(data_key);
|
||||
}
|
||||
key_len = strlen(data_key);
|
||||
|
||||
data_node = calloc(1, sizeof(struct Curl_dns_entry));
|
||||
if(!data_node) {
|
||||
fprintf(stdout, "data node creation failed\n");
|
||||
return TEST_ERR_MAJOR_BAD;
|
||||
}
|
||||
|
||||
data_node->addr = fake_ai();
|
||||
if(!data_node->addr) {
|
||||
fprintf(stdout, "actual data creation failed\n");
|
||||
return TEST_ERR_MAJOR_BAD;
|
||||
}
|
||||
|
||||
nodep = Curl_hash_add(hp, data_key, key_len+1, (void *)data_node);
|
||||
if(!nodep) {
|
||||
fprintf(stdout, "insertion into hash failed\n");
|
||||
return TEST_ERR_MAJOR_BAD;
|
||||
}
|
||||
|
||||
free(data_key);
|
||||
|
||||
#endif /* LIB559 */
|
||||
/**/
|
||||
|
||||
fprintf(stdout, "destroying hash...\n");
|
||||
|
Loading…
x
Reference in New Issue
Block a user