ref: 2be78fb328da9e2e6714d73c9b0c90e6751aaa80
dir: /tests/testurl.c/
#include <u.h> #include <libc.h> #include <castor.h> static void assertstreql(char *a, char *b){ int r; r = strcmp(a, b); assert(r == 0); } static void geminiabs(void){ Url *u; u = urlparse(nil, "gemini://host:port/path"); assert(u != nil); assertstreql(u->host, "host"); assertstreql(u->port, "port"); assertstreql(u->scheme, "gemini"); freeurl(u); } static void geminirel(void){ Url *base, *u; base = urlparse(nil, "gemini://host/"); u = urlparse(base, "/path"); assert(u != nil); assertstreql(u->host, "host"); assertstreql(u->scheme, "gemini"); assertstreql(u->path, "/path"); freeurl(u); } static void mailto(void){ Url *u; u = urlparse(nil, "mailto:[email protected]"); assert(u != nil); assertstreql(u->scheme, "mailto"); assertstreql(u->path, "[email protected]"); freeurl(u); } void main(void) { print("testurl: "); geminiabs(); geminirel(); mailto(); print("PASS\n"); exits(0); }