*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
*/
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
-#include "../gstcheck.h"
+#include <gst/check/gstcheck.h>
+#include <gst/gstversion.h>
-START_TEST (test_init)
+GST_START_TEST (test_init)
{
/* don't segfault with NULL, NULL */
gst_init (NULL, NULL);
- /* allow calling twice */
+ /* allow calling twice. well, actually, thrice. */
gst_init (NULL, NULL);
}
-END_TEST;
+GST_END_TEST;
-Suite *
-gst_suite (void)
+GST_START_TEST (test_deinit)
{
- Suite *s = suite_create ("Gst");
- TCase *tc_chain = tcase_create ("gst tests");
+ gst_init (NULL, NULL);
- suite_add_tcase (s, tc_chain);
- tcase_add_test (tc_chain, test_init);
+ gst_deinit ();
+}
- return s;
+GST_END_TEST;
+
+GST_START_TEST (test_deinit_sysclock)
+{
+ GstClock *clock;
+
+ gst_init (NULL, NULL);
+
+ clock = gst_system_clock_obtain ();
+ gst_object_unref (clock);
+
+ gst_deinit ();
+}
+
+GST_END_TEST;
+
+/* tests if we can create an element from a compiled-in plugin */
+GST_START_TEST (test_new_pipeline)
+{
+ GstElement *pipeline;
+
+ pipeline = gst_pipeline_new ("pipeline");
+ gst_object_unref (pipeline);
}
-int
-main (int argc, char **argv)
+GST_END_TEST;
+
+/* tests if we can load an element from a plugin */
+GST_START_TEST (test_new_fakesrc)
{
- int nf;
+ GstElement *element;
+
+ element = gst_element_factory_make ("fakesrc", NULL);
+ gst_object_unref (element);
+}
+
+GST_END_TEST;
+
+GST_START_TEST (test_version)
+{
+ guint major, minor, micro, nano;
+ gchar *version;
+
+ gst_version (&major, &minor, µ, &nano);
+ assert_equals_int (major, GST_VERSION_MAJOR);
+
+ version = gst_version_string ();
+ fail_if (version == NULL);
+ g_free (version);
+}
- Suite *s = gst_suite ();
- SRunner *sr = srunner_create (s);
+GST_END_TEST;
- gst_check_init (&argc, &argv);
+static Suite *
+gst_suite (void)
+{
+ Suite *s = suite_create ("Gst");
+ TCase *tc_chain = tcase_create ("gst tests");
- srunner_run_all (sr, CK_NORMAL);
- nf = srunner_ntests_failed (sr);
- srunner_free (sr);
+ suite_add_tcase (s, tc_chain);
+ tcase_add_test (tc_chain, test_init);
+ tcase_add_test (tc_chain, test_new_pipeline);
+ tcase_add_test (tc_chain, test_new_fakesrc);
+ tcase_add_test (tc_chain, test_version);
+ /* run these last so the others don't fail if CK_FORK=no is being used */
+ tcase_add_test (tc_chain, test_deinit_sysclock);
+ tcase_add_test (tc_chain, test_deinit);
- return nf;
+ return s;
}
+
+GST_CHECK_MAIN (gst);