X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fnet%2Fhttp_test.c;h=1636cf904d4d5ecdb3d5d84783d9874d9e7d44b3;hb=04145828dccb10843ca8fdc3b9d1951933362c92;hp=e57ced9aa4310a8e8d181863c76db620a542bc99;hpb=5acb892fda4e0c95b806231a9fa77d19d4c1d97a;p=bertos.git diff --git a/bertos/net/http_test.c b/bertos/net/http_test.c index e57ced9a..1636cf90 100644 --- a/bertos/net/http_test.c +++ b/bertos/net/http_test.c @@ -66,6 +66,14 @@ Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 \ Accept-Encoding: gzip,deflate,sdch Accept-Language: it-IT,it;q=0.8,en-US;\ q=0.6,en;q=0.4 Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3"; + +static const char uri[] = "test%5B%5D!@;'%22%5C.%20"; +static const char uri_check[] = "test[]!@;'\"\\. "; + +static const char uri1[] = "!*'();:@&=%2B%24%2C/?#%5B%5D%3C%3E%7E.%22%7B%7D%7C%5C-%60_%5E%25"; +static const char uri_check1[] = "!*'();:@&=+$,/?#[]<>~.\"{}|\\-`_^%"; + + int http_testSetup(void) { kdbg_init(); @@ -78,26 +86,56 @@ int http_testRun(void) memset(name, 0, sizeof(name)); http_getPageName(get_str, sizeof(get_str), name, sizeof(name)); - if (!strcmp("/test/page1", name)) + if (strcmp("test/page1", name)) + { + kprintf("error 0 %s\n", name); goto error; + } http_getPageName(get_str1, sizeof(get_str1), name, sizeof(name)); - kprintf("1 name %s\n", name); - if (!strcmp("/test/page1", name)) + if (strcmp("test/page1", name)) + { + kprintf("error 1 %s\n", name); goto error; + } + http_getPageName(get_str2, sizeof(get_str2), name, sizeof(name)); - kprintf("2 name %s\n", name); if (name[0] != '\0') + { + kprintf("error 2 %s\n", name); goto error; + } + http_getPageName(get_str2, sizeof(get_str2), name, sizeof(name)); - kprintf("3 name %s\n", name); if (name[0] != '\0') + { + kprintf("error 3 %s\n", name); + goto error; + } + + + char decoded[sizeof(uri)]; + http_decodeUri(uri,sizeof(uri), decoded, sizeof(uri)); + + if (strcmp(decoded, uri_check)) + { + kprintf("error 4 %s\n", decoded); + goto error; + } + + char decoded1[sizeof(uri1)]; + http_decodeUri(uri1,sizeof(uri1), decoded1, sizeof(uri1)); + + if (strcmp(decoded1, uri_check1)) + { + kprintf("error 5 %s\n", decoded1); goto error; + } return 0;