tests: improve

This commit is contained in:
0x1eef 2023-08-25 18:20:49 -03:00
parent 2ba1f062a8
commit ae64ca4671

View file

@ -3,21 +3,44 @@
#include <stdlib.h>
#include <stdio.h>
const char *valid[] = {
"192.168.1.1",
"0.0.0.0",
"255.255.255.255",
"123.45.67.89"
};
const char *invalid[] = {
"192.168.500.1",
".192.168.1.1",
"192..168.1.1",
"192.168.1.1.",
"192.168.1.1..",
"192.168.1.1a",
"555555555555555555555555555555555",
""
};
int
main(void) {
/* Assertions */
assert(isinetaddr("192.168.1.1") == 1);
assert(isinetaddr("0.0.0.0") == 1);
assert(isinetaddr("255.255.255.255") == 1);
assert(isinetaddr("123.45.67.89") == 1);
assert(isinetaddr("192.168.500.1") == 0);
assert(isinetaddr(".192.168.1.1") == 0);
assert(isinetaddr("192..168.1.1") == 0);
assert(isinetaddr("192.168.1.1.") == 0);
assert(isinetaddr("192.168.1.1..") == 0);
assert(isinetaddr("192.168.1.1a") == 0);
assert(isinetaddr("") == 0);
/* Record success */
size_t len;
/* IPv4: valid */
len = sizeof(valid) / sizeof(valid[0]);
for(size_t i = 0; i < len; i++) {
if (isinetaddr(valid[i]) != 1) {
fprintf(stderr, "assertion failed: '%s' should be valid\n", valid[i]);
abort();
}
}
/* IPv4: invalid */
len = sizeof(invalid) / sizeof(invalid[0]);
for(size_t i = 0; i < len; i++) {
if (isinetaddr(invalid[i]) != 0) {
fprintf(stderr, "assertion failed: '%s' should NOT be valid\n", invalid[i]);
abort();
}
}
/* Done */
printf("OK\n");
return EXIT_SUCCESS;
}