Added unit test for mg_get_var

This commit is contained in:
Sergey Lyubka committed 2012-09-22 12:22:30 +01:00
1 parent 6f9901b65c
commit ff0c2d3f91
1 file changed
+21
+21
View File
@@ -207,6 +207,26 @@ static void test_base64_encode(void) {
}
}
static void test_mg_get_var(void) {
static const char *post[] = {"a=1&&b=2&d&=&c=3%20&e=", NULL};
char buf[20];
ASSERT(mg_get_var(post[0], strlen(post[0]), "a", buf, sizeof(buf)) == 1);
ASSERT(buf[0] == '1' && buf[1] == '\0');
ASSERT(mg_get_var(post[0], strlen(post[0]), "b", buf, sizeof(buf)) == 1);
ASSERT(buf[0] == '2' && buf[1] == '\0');
ASSERT(mg_get_var(post[0], strlen(post[0]), "c", buf, sizeof(buf)) == 2);
ASSERT(buf[0] == '3' && buf[1] == ' ' && buf[2] == '\0');
ASSERT(mg_get_var(post[0], strlen(post[0]), "e", buf, sizeof(buf)) == 0);
ASSERT(buf[0] == '\0');
ASSERT(mg_get_var(post[0], strlen(post[0]), "d", buf, sizeof(buf)) == -1);
ASSERT(mg_get_var(post[0], strlen(post[0]), "c", buf, 2) == -1);
ASSERT(mg_get_var(post[0], strlen(post[0]), "x", NULL, 10) == -2);
ASSERT(mg_get_var(post[0], strlen(post[0]), "x", buf, 0) == -2);
}
int main(void) {
test_base64_encode();
test_match_prefix();
@@ -214,5 +234,6 @@ int main(void) {
test_should_keep_alive();
test_parse_http_request();
test_mg_fetch();
test_mg_get_var();
return 0;
}