diff options
author | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2012-05-14 15:58:47 +0200 |
---|---|---|
committer | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2012-05-14 15:58:47 +0200 |
commit | b136a28f377ea667faed44e939ad0434d419bb8a (patch) | |
tree | d5d00969a6dbebe1e98e25733ef6d87d8e60d1ba /lib/experiment-reader/tests/unit-tests.c | |
parent | c647ca77debd65f1c4f1cf9fd5ef54e6ec7791a1 (diff) | |
download | gtk-vlc-player-b136a28f377ea667faed44e939ad0434d419bb8a.tar.gz |
added test suite for libexperiment-reader using GTester
* automatically generate test reports
* does not abort when gtester tools are missing (as test suite programs can be built nevertheless)
Diffstat (limited to 'lib/experiment-reader/tests/unit-tests.c')
-rw-r--r-- | lib/experiment-reader/tests/unit-tests.c | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/lib/experiment-reader/tests/unit-tests.c b/lib/experiment-reader/tests/unit-tests.c new file mode 100644 index 0000000..6ccb84e --- /dev/null +++ b/lib/experiment-reader/tests/unit-tests.c @@ -0,0 +1,77 @@ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include <inttypes.h> + +#include <glib.h> +#include <glib/gprintf.h> + +#include <experiment-reader.h> + +#define TEST_EXPERIMENT_VALID "test-experiment-valid.xml" +/* #define TEST_EXPERIMENT_INVALID "test-experiment-invalid.xml" */ + +static void +test_new_valid(void) +{ + ExperimentReader *reader; + + reader = experiment_reader_new(TEST_EXPERIMENT_VALID); + g_assert(reader != NULL); + + g_object_unref(reader); +} + +static void +test_foreach_greeting_topic_values_cb(ExperimentReader *reader, + const gchar *topic_id, + gint64 start_time, + gpointer data) +{ + gint *i = (gint *)data; + + g_assert(reader != NULL); + g_assert(data != NULL); + + switch (*i) { + case 0: + g_assert_cmpstr(topic_id, ==, "bz_2"); + g_assert_cmpint(start_time, ==, 13648); + break; + default: + g_assert_not_reached(); + } + + ++*i; +} + +static void +test_foreach_greeting_topic_values(void) +{ + ExperimentReader *reader; + gint cb_iter = 0; + + reader = experiment_reader_new(TEST_EXPERIMENT_VALID); + g_assert(reader != NULL); + + experiment_reader_foreach_greeting_topic(reader, + test_foreach_greeting_topic_values_cb, + &cb_iter); + + g_object_unref(reader); +} + +int +main(int argc, char **argv) +{ + g_type_init(); + g_test_init(&argc, &argv, NULL); + + g_test_add_func("/api/new/test_valid", test_new_valid); + + g_test_add_func("/api/foreach_greeting_topic/test_values", + test_foreach_greeting_topic_values); + + g_test_run_suite(g_test_get_root()); +} |