2022-07-04 19:52:20 +00:00
|
|
|
#include <stdlib.h>
|
|
|
|
#include <string.h>
|
|
|
|
#include <stdio.h>
|
|
|
|
#include "vger.h"
|
|
|
|
|
|
|
|
// to test
|
|
|
|
void test_status(void);
|
|
|
|
void test_status_error(void);
|
|
|
|
void test_uridecode(char*, const int);
|
|
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
test_uridecode(char *str, const int result)
|
|
|
|
{
|
|
|
|
char reference[GEMINI_REQUEST_MAX] = {'\0'};
|
|
|
|
strlcpy(reference, str, sizeof(reference));
|
|
|
|
uridecode(str);
|
|
|
|
if (strncmp(reference, str, strlen(str)) != result)
|
|
|
|
{
|
|
|
|
printf("uridecode error\n");
|
|
|
|
printf("Strings should be %s\n", (result == 0) ? "identical" : "different");
|
|
|
|
printf("passed %s\n", reference);
|
|
|
|
printf("got %s\n", str);
|
|
|
|
exit(1);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
void
|
|
|
|
test_status(void)
|
|
|
|
{
|
|
|
|
status(20, "text/gemini");
|
|
|
|
}
|
|
|
|
|
|
|
|
void
|
|
|
|
test_status_error(void)
|
|
|
|
{
|
2022-08-08 20:57:03 +00:00
|
|
|
status(51, "file not found");
|
|
|
|
status(50, "Forbidden path");
|
|
|
|
status(50, "Internal server error");
|
2022-07-04 19:52:20 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
int
|
|
|
|
main(void)
|
|
|
|
{
|
|
|
|
test_status_error();
|
|
|
|
test_status();
|
|
|
|
//test_uridecode("host.name", 0);
|
|
|
|
//test_uridecode("host.name/percent%25-encode%3.gmi", 1);
|
|
|
|
return(0);
|
|
|
|
}
|