1
0
mirror of https://github.com/irssi/irssi.git synced 2024-12-04 14:46:39 -05:00

move fixtures to outer scope

This commit is contained in:
ailin-nemui 2017-11-26 21:10:07 +01:00
parent c20eddeb38
commit 43d06369bf
2 changed files with 190 additions and 198 deletions

View File

@ -1,5 +1,7 @@
include $(top_srcdir)/utils/glib-tap.mk
PACKAGE_STRING=irc/core
AM_CPPFLAGS = \
-I$(top_srcdir)/src \
-I$(top_srcdir)/src/core \
@ -17,21 +19,11 @@ test_irc_DEPENDENCIES = \
../../../src/lib-config/libirssi_config.a
test_irc_LDADD = \
../../../src/irc/core/libirc_core.a \
../../../src/core/libcore.a \
../../../src/lib-config/libirssi_config.a \
@GLIB_LIBS@ \
@OPENSSL_LIBS@
test_irc_SOURCES = \
test-irc.c \
../../../src/irc/core/irc-cap.c \
../../../src/irc/core/irc-nicklist.c \
../../../src/irc/core/irc-queries.c \
../../../src/irc/core/irc-servers-reconnect.c \
../../../src/irc/core/irc-servers-setup.c \
../../../src/irc/core/irc-servers.c \
../../../src/irc/core/irc.c \
../../../src/irc/core/mode-lists.c \
../../../src/irc/core/modes.c \
../../../src/irc/core/servers-idle.c \
../../../src/irc/core/servers-redirect.c
test-irc.c

View File

@ -22,30 +22,14 @@
#include <irc.h>
#include <string.h>
static void test_event_get_param(void);
static void test_event_get_params(void);
int main(int argc, char **argv)
{
g_test_init(&argc, &argv, NULL);
g_test_add_func("/test/event_get_param", test_event_get_param);
g_test_add_func("/test/event_get_params", test_event_get_params);
g_test_set_nonfatal_assertions();
return g_test_run();
}
static void test_event_get_param(void)
{
struct test_case {
typedef struct {
char const *const description;
char const *const input;
char const *const input_after;
char const *const output;
};
} event_get_param_test_case;
struct test_case const tests[] = {
event_get_param_test_case const event_get_param_fixtures[] = {
{
.description = "Zero parameters",
.input = "",
@ -110,34 +94,16 @@ static void test_event_get_param(void)
},
};
char *buf = g_malloc0(1024);
static void test_event_get_param(const event_get_param_test_case *test);
int i = 0;
for (i = 0; i < sizeof(tests)/sizeof(tests[0]); i++) {
struct test_case const test = tests[i];
memcpy(buf, test.input, strlen(test.input)+1);
char *input = buf;
char *const output = event_get_param(&input);
g_assert_cmpstr(input, ==, test.input_after);
g_assert_cmpstr(output, ==, test.output);
}
g_free(buf);
}
static void test_event_get_params(void)
{
struct test_case {
typedef struct {
char const *const description;
char const *const input;
char const *const output0;
char const *const output1;
};
} event_get_params_test_case;
struct test_case const tests[] = {
event_get_params_test_case const event_get_params_fixtures[] = {
{
.description = "Only a channel",
.input = "#test",
@ -212,20 +178,54 @@ static void test_event_get_params(void)
},
};
int i = 0;
for (i = 0; i < sizeof(tests)/sizeof(tests[0]); i++) {
struct test_case const test = tests[i];
static void test_event_get_params(const event_get_params_test_case *test);
char *output0 = NULL;
char *output1 = NULL;
char *const params = event_get_params(test.input, 2 | PARAM_FLAG_GETREST,
int main(int argc, char **argv)
{
int i;
g_test_init(&argc, &argv, NULL);
for (i = 0; i < G_N_ELEMENTS(event_get_param_fixtures); i++) {
char *name = g_strdup_printf("/test/event_get_params/%d", i);
g_test_add_data_func(name, &event_get_params_fixtures[i], (GTestDataFunc)test_event_get_params);
g_free(name);
}
for (i = 0; i < G_N_ELEMENTS(event_get_param_fixtures); i++) {
char *name = g_strdup_printf("/test/event_get_param/%d", i);
g_test_add_data_func(name, &event_get_param_fixtures[i], (GTestDataFunc)test_event_get_param);
g_free(name);
}
g_test_set_nonfatal_assertions();
return g_test_run();
}
static void test_event_get_param(const event_get_param_test_case *test)
{
char *buf, *input, *output;
input = buf = g_strdup(test->input);
output = event_get_param(&input);
g_assert_cmpstr(input, ==, test->input_after);
g_assert_cmpstr(output, ==, test->output);
g_free(buf);
}
static void test_event_get_params(const event_get_params_test_case *test)
{
char *output0, *output1, *params;
output0 = NULL;
output1 = NULL;
params = event_get_params(test->input, 2 | PARAM_FLAG_GETREST,
&output0, &output1);
/* params happens to always point at the first output */
g_assert_cmpstr(params, ==, test.output0);
g_assert_cmpstr(output0, ==, test.output0);
g_assert_cmpstr(output1, ==, test.output1);
g_assert_cmpstr(params, ==, test->output0);
g_assert_cmpstr(output0, ==, test->output0);
g_assert_cmpstr(output1, ==, test->output1);
g_free(params);
}
}