From d746225b9829bd1b1d506d4d7da89a8652262389 Mon Sep 17 00:00:00 2001 From: Deng Zhengrong Date: Sat, 28 Jul 2012 21:22:05 +0800 Subject: [PATCH] tests: modify asyncq-test to use 'check' framework --- src/Makefile.am | 4 ++-- src/tests/asyncq-test.c | 35 +++++++++++++++++++++++++++++------ 2 files changed, 31 insertions(+), 8 deletions(-) diff --git a/src/Makefile.am b/src/Makefile.am index 62b4670..63b83fb 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -365,9 +365,9 @@ flist_test_LDADD = $(AM_LDADD) libpulsecore-@PA_MAJORMINOR@.la libpulse.la libpu flist_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) asyncq_test_SOURCES = tests/asyncq-test.c -asyncq_test_CFLAGS = $(AM_CFLAGS) +asyncq_test_CFLAGS = $(AM_CFLAGS) $(LIBCHECK_CFLAGS) asyncq_test_LDADD = $(AM_LDADD) libpulsecore-@PA_MAJORMINOR@.la libpulse.la libpulsecommon-@PA_MAJORMINOR@.la -asyncq_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) +asyncq_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) $(LIBCHECK_LIBS) asyncmsgq_test_SOURCES = tests/asyncmsgq-test.c asyncmsgq_test_CFLAGS = $(AM_CFLAGS) $(LIBCHECK_CFLAGS) diff --git a/src/tests/asyncq-test.c b/src/tests/asyncq-test.c index 6ac8cba..7abfb89 100644 --- a/src/tests/asyncq-test.c +++ b/src/tests/asyncq-test.c @@ -25,6 +25,8 @@ #include #include +#include + #include #include #include @@ -57,7 +59,7 @@ static void consumer(void *_q) { if (p == PA_UINT_TO_PTR(-1)) break; - pa_assert(p == PA_UINT_TO_PTR(i+1)); + fail_unless(p == PA_UINT_TO_PTR(i+1)); pa_log_debug("popped %i", i); } @@ -65,22 +67,43 @@ static void consumer(void *_q) { pa_log_debug("popped end"); } -int main(int argc, char *argv[]) { +START_TEST (asyncq_test) { pa_asyncq *q; pa_thread *t1, *t2; if (!getenv("MAKE_CHECK")) pa_log_set_level(PA_LOG_DEBUG); - pa_assert_se(q = pa_asyncq_new(0)); + q = pa_asyncq_new(0); + fail_unless(q != NULL); - pa_assert_se(t1 = pa_thread_new("producer", producer, q)); - pa_assert_se(t2 = pa_thread_new("consumer", consumer, q)); + t1 = pa_thread_new("producer", producer, q); + fail_unless(t1 != NULL); + t2 = pa_thread_new("consumer", consumer, q); + fail_unless(t2 != NULL); pa_thread_free(t1); pa_thread_free(t2); pa_asyncq_free(q, NULL); +} +END_TEST - return 0; +int main(int argc, char *argv[]) { + int failed = 0; + Suite *s; + TCase *tc; + SRunner *sr; + + s = suite_create("Async Queue"); + tc = tcase_create("asyncq"); + tcase_add_test(tc, asyncq_test); + suite_add_tcase(s, tc); + + sr = srunner_create(s); + srunner_run_all(sr, CK_NORMAL); + failed = srunner_ntests_failed(sr); + srunner_free(sr); + + return (failed == 0) ? EXIT_SUCCESS : EXIT_FAILURE; } -- 2.7.4