Beispiel #1
0
Datei: str.c Projekt: dodoma/reef
void test_advance()
{
    char rands[101] = {0}, *s;
    MSTR astr;
    MLIST *alist;
    MERR *err;

    mstr_rand_string(rands, 100);
    MTEST_ASSERT(strlen(rands) < 100);

    mstr_rand_string_fixlen(rands, 100);
    MTEST_ASSERT(strlen(rands) == 100);

    s = "";
    err = mstr_array_split(&alist, s, " ", 100);
    MTEST_ASSERT(err == MERR_OK);
    mlist_destroy(&alist);

    s = "hello";
    err = mstr_array_split(&alist, s, " ", 100);
    MTEST_ASSERT(err == MERR_OK);
    mlist_destroy(&alist);

    s = " he   llo ";
    err = mstr_array_split(&alist, s, " ", 100);
    MTEST_ASSERT(err == MERR_OK);
    mlist_destroy(&alist);

    s = "xxxx hexxxxxllxxxxxoxx";
    err = mstr_array_split(&alist, s, "xx", 100);
    MTEST_ASSERT(err == MERR_OK);
    MTEST_ASSERT(mlist_length(alist) == 3);
    mlist_destroy(&alist);

    s = "hello string array     split  ";
    err = mstr_array_split(&alist, s, " ", 100);
    MTEST_ASSERT(err == MERR_OK);
    MTEST_ASSERT(mlist_length(alist) == 4);
    mlist_destroy(&alist);
}
Beispiel #2
0
char* route(char* clit_name, int rr_flag) {
	
	if (rr_flag) {
		uint32_t size = mlist_length(nodes);
		node_t* node = (node_t*)mlist_getdata(nodes, query_count % size);
		query_count++;
		return node->name;
	} else {
		MList* list = mlist_find_custom(routing_table, clit_name, find_entry_by_name);
		rt_t* entry = (rt_t*)list->data;
		return entry->serv->name;
	}
	return NULL;	
}