2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
* check/Makefile.am:
+ set GST_TOOLS_DIR
+ * gst/check/gstcheck.c: (gst_check_message_error):
+ * gst/check/gstcheck.h:
+ add a fail_unless_equals_int
+ add fail_unless for error messages
+
+2005-08-20 Thomas Vander Stichele <thomas at apestaart dot org>
+
+ * check/Makefile.am:
* check/gst.supp:
* common/Makefile.am:
* common/check.mak:
CHECK_REGISTRY=$(top_builddir)/check/test-registry.xml
+GST_TOOLS_DIR = $(top_builddir)/tools
+
TESTS_ENVIRONMENT=\
GST_PLUGIN_PATH_ONLY=yes \
GST_PLUGIN_PATH=$(top_builddir)/gst \
-Subproject commit b7d5fb659c1720aecd039effd1d87813e4b8fd92
+Subproject commit 4cc6f465857331531a09aff0a23dc0b133e7f669
g_log_set_handler ("GLib-GObject", G_LOG_LEVEL_CRITICAL | G_LOG_LEVEL_WARNING,
gst_check_log_critical_func, NULL);
}
+
+/* message checking */
+void
+gst_check_message_error (GstMessage * message, GstMessageType type,
+ GQuark domain, gint code)
+{
+ GError *error;
+ gchar *debug;
+
+ fail_unless_equals_int (GST_MESSAGE_TYPE (message), type);
+ gst_message_parse_error (message, &error, &debug);
+ fail_unless_equals_int (error->domain, domain);
+ fail_unless_equals_int (error->code, code);
+ g_error_free (error);
+ g_free (debug);
+}
void gst_check_init (int *argc, char **argv[]);
+void gst_check_message_error (GstMessage *message, GstMessageType type, GQuark domain, gint code);
+
+#define fail_unless_message_error(msg, domain, code) \
+gst_check_message_error (msg, GST_MESSAGE_ERROR, \
+ GST_ ## domain ## _ERROR, GST_ ## domain ## _ERROR_ ## code)
+
/***
* wrappers for START_TEST and END_TEST
*/
#define GST_END_TEST END_TEST
+/* additional fail macros */
+#define fail_unless_equals_int(a, b) \
+G_STMT_START { \
+ int first = a; \
+ int second = b; \
+ fail_unless(first == second, \
+ "'" #a "' (%d) is not equal to '" #b"' (%d)", first, second); \
+} G_STMT_END;
+
/***
* thread test macros and variables
*/
}
}
+/* returns TRUE if the src pad could be configured to accept the given caps */
static gboolean
gst_pad_configure_src (GstPad * pad, GstCaps * caps)
{
g_log_set_handler ("GLib-GObject", G_LOG_LEVEL_CRITICAL | G_LOG_LEVEL_WARNING,
gst_check_log_critical_func, NULL);
}
+
+/* message checking */
+void
+gst_check_message_error (GstMessage * message, GstMessageType type,
+ GQuark domain, gint code)
+{
+ GError *error;
+ gchar *debug;
+
+ fail_unless_equals_int (GST_MESSAGE_TYPE (message), type);
+ gst_message_parse_error (message, &error, &debug);
+ fail_unless_equals_int (error->domain, domain);
+ fail_unless_equals_int (error->code, code);
+ g_error_free (error);
+ g_free (debug);
+}
void gst_check_init (int *argc, char **argv[]);
+void gst_check_message_error (GstMessage *message, GstMessageType type, GQuark domain, gint code);
+
+#define fail_unless_message_error(msg, domain, code) \
+gst_check_message_error (msg, GST_MESSAGE_ERROR, \
+ GST_ ## domain ## _ERROR, GST_ ## domain ## _ERROR_ ## code)
+
/***
* wrappers for START_TEST and END_TEST
*/
#define GST_END_TEST END_TEST
+/* additional fail macros */
+#define fail_unless_equals_int(a, b) \
+G_STMT_START { \
+ int first = a; \
+ int second = b; \
+ fail_unless(first == second, \
+ "'" #a "' (%d) is not equal to '" #b"' (%d)", first, second); \
+} G_STMT_END;
+
/***
* thread test macros and variables
*/
CHECK_REGISTRY=$(top_builddir)/check/test-registry.xml
+GST_TOOLS_DIR = $(top_builddir)/tools
+
TESTS_ENVIRONMENT=\
GST_PLUGIN_PATH_ONLY=yes \
GST_PLUGIN_PATH=$(top_builddir)/gst \