Adapt tests to new assemblers and add string lenght checks

This commit is contained in:
Alex D. 2021-02-15 15:23:29 +00:00
parent fd49e10b9a
commit fd6dc5e0ea
Signed by: caskd
GPG Key ID: F92BA85F61F4C173
6 changed files with 31 additions and 10 deletions

View File

@ -50,8 +50,13 @@ main(void)
char buf[513];
signed long ret;
for (unsigned long i = 0; i < sizeof(str) / sizeof(*str); i++) {
if ((ret = uirc_assembler_message(buf, &m[i], sizeof(buf) / sizeof(char))) <= 0) {
printf("Failed to convert IRC_User struct to a string. %li\n", ret);
if ((ret = uirc_assembler_message(buf, &m[i], sizeof(buf) / sizeof(char))) < 0) {
printf("Failed to convert IRC_Message struct to a string. %li\n", ret);
return EXIT_FAILURE;
}
size_t len = strlen(str[i]);
if ((size_t) ret != len) {
printf("String lenght doesn't match with amount of bytes printed. Expected %li but got %li\n", len, ret);
return EXIT_FAILURE;
}
expect(buf, str[i]);

View File

@ -39,7 +39,13 @@ main(void)
printf("Failed to convert tag %lu to \"%s\". Error %li\n", i, str[i], ret);
return EXIT_FAILURE;
}
size_t len = strlen(str[i]);
if ((size_t) ret != len) {
printf("String lenght doesn't match with amount of bytes printed. Expected %li but got %li\n", len, ret);
return EXIT_FAILURE;
}
expect(buf, str[i]);
print_irc_tag(&tag[i]);
}
return EXIT_SUCCESS;
}

View File

@ -37,6 +37,11 @@ main(void)
printf("Failed to convert IRC_User struct to a string. %li\n", ret);
return EXIT_FAILURE;
}
size_t len = strlen(str[i]);
if ((size_t) ret != len) {
printf("String lenght doesn't match with amount of bytes printed. Expected %li but got %li\n", len, ret);
return EXIT_FAILURE;
}
expect(buf, str[i]);
print_irc_user(&u[i]);
}

View File

@ -37,7 +37,7 @@ expect(const char* var, const char* exp)
}
void
print_irc_message(IRC_Message* ptr)
print_irc_message(const IRC_Message* ptr)
{
#ifdef UIRC_FEATURE_IRCV3
printf(DELIMITER);
@ -57,7 +57,7 @@ print_irc_message(IRC_Message* ptr)
#ifdef UIRC_FEATURE_IRCV3
void
print_irc_tag(IRC_Tag* tag)
print_irc_tag(const IRC_Tag* tag)
{
printf(DELIMITER "tn: %s\n"
"tv: %s\n"
@ -69,7 +69,7 @@ print_irc_tag(IRC_Tag* tag)
#endif /* UIRC_FEATURE_IRCV3 */
void
print_irc_user(IRC_User* user)
print_irc_user(const IRC_User* user)
{
printf(DELIMITER "un: %s\n"
"uu: %s\n"

View File

@ -30,11 +30,11 @@
void expect(const char* var, const char* exp);
void print_irc_message(IRC_Message* ptr);
void print_irc_message(const IRC_Message* ptr);
#ifdef UIRC_FEATURE_IRCV3
void print_irc_tag(IRC_Tag* tag);
void print_irc_tag(const IRC_Tag* tag);
#endif /* UIRC_FEATURE_IRCV3 */
void print_irc_user(IRC_User* user);
void print_irc_user(const IRC_User* user);
#endif /* UIRC_GUARD_PRIVATE_COMMONTESTS */

View File

@ -38,12 +38,17 @@ main(void)
printf("Failed to convert string to IRC_Message struct.\n");
return EXIT_FAILURE;
}
signed long ret;
char buf[513];
ssize_t ret;
char buf[513];
if ((ret = uirc_assembler_message(buf, m, sizeof(buf) / sizeof(char))) <= 0) {
printf("Failed to convert IRC_Message struct to a string. (%li)\n", ret);
return EXIT_FAILURE;
}
size_t s1 = strlen(str[i]), s2 = strlen(buf);
if (s1 != s2) {
printf("String lenght doesn't match after parsing and assembly. Expected %li but got %li\n", s1, s2);
return EXIT_FAILURE;
}
expect(buf, str[i]);
print_irc_message(m);
}