]> sigrok.org Git - libsigrokdecode.git/blobdiff - tests/check_decoder.c
tests/check_session.c: Fix compiler warning.
[libsigrokdecode.git] / tests / check_decoder.c
index 0b46348b70dc60419ebb50bea10d3a6469cf5876..527845f9ae4e9406693041174554349ee38cec5f 100644 (file)
@@ -21,6 +21,7 @@
 #include "../libsigrokdecode.h" /* First, to avoid compiler warning. */
 #include <stdlib.h>
 #include <check.h>
+#include "lib.h"
 
 static void setup(void)
 {
@@ -40,7 +41,7 @@ START_TEST(test_load_all)
 {
        int ret;
 
-       srd_init(NULL);
+       srd_init(DECODERS_DIR);
        ret = srd_decoder_load_all();
        fail_unless(ret == SRD_OK, "srd_decoder_load_all() failed: %d.", ret);
        srd_exit();
@@ -57,7 +58,7 @@ START_TEST(test_load_all_no_init)
        int ret;
 
        ret = srd_decoder_load_all();
-       fail_unless(ret == SRD_OK, "srd_decoder_load_all() failed: %d.", ret);
+       fail_unless(ret != SRD_OK, "srd_decoder_load_all() didn't fail properly.");
 }
 END_TEST
 
@@ -69,7 +70,7 @@ START_TEST(test_load)
 {
        int ret;
 
-       srd_init(NULL);
+       srd_init(DECODERS_DIR);
        ret = srd_decoder_load("uart");
        fail_unless(ret == SRD_OK, "srd_decoder_load(uart) failed: %d.", ret);
        ret = srd_decoder_load("spi");
@@ -86,7 +87,7 @@ END_TEST
  */
 START_TEST(test_load_bogus)
 {
-       srd_init(NULL);
+       srd_init(DECODERS_DIR);
        /* http://sigrok.org/bugzilla/show_bug.cgi?id=176 */
        fail_unless(srd_decoder_load(NULL) != SRD_OK);
        fail_unless(srd_decoder_load("") != SRD_OK);
@@ -109,7 +110,7 @@ END_TEST
  */
 START_TEST(test_load_valid_and_bogus)
 {
-       srd_init(NULL);
+       srd_init(DECODERS_DIR);
        fail_unless(srd_decoder_load("") != SRD_OK);
        fail_unless(srd_decoder_load("uart") == SRD_OK);
        fail_unless(srd_decoder_load("") != SRD_OK);
@@ -130,8 +131,7 @@ START_TEST(test_load_multiple)
 {
        int ret;
 
-       srd_init(NULL);
-       srd_log_loglevel_set(SRD_LOG_SPEW);
+       srd_init(DECODERS_DIR);
        ret = srd_decoder_load("uart");
        fail_unless(ret == SRD_OK, "Loading uart PD 1x failed: %d", ret);
        ret = srd_decoder_load("uart");
@@ -164,7 +164,7 @@ END_TEST
  */
 START_TEST(test_decoder_list)
 {
-       srd_init(NULL);
+       srd_init(DECODERS_DIR);
        srd_decoder_load_all();
        fail_unless(srd_decoder_list() != NULL);
        srd_exit();
@@ -178,7 +178,7 @@ END_TEST
  */
 START_TEST(test_decoder_list_no_load)
 {
-       srd_init(NULL);
+       srd_init(DECODERS_DIR);
        fail_unless(srd_decoder_list() == NULL);
        srd_exit();
 }
@@ -214,7 +214,7 @@ END_TEST
  */
 START_TEST(test_decoder_list_correct_numbers)
 {
-       srd_init(NULL);
+       srd_init(DECODERS_DIR);
        fail_unless(g_slist_length((GSList *)srd_decoder_list()) == 0);
        srd_decoder_load("spi");
        fail_unless(g_slist_length((GSList *)srd_decoder_list()) == 1);
@@ -234,7 +234,7 @@ END_TEST
  */
 START_TEST(test_get_by_id)
 {
-       srd_init(NULL);
+       srd_init(DECODERS_DIR);
        srd_decoder_load("uart");
        fail_unless(srd_decoder_get_by_id("uart") != NULL);
        fail_unless(srd_decoder_get_by_id("can") == NULL);
@@ -251,7 +251,7 @@ END_TEST
  */
 START_TEST(test_get_by_id_multiple)
 {
-       srd_init(NULL);
+       srd_init(DECODERS_DIR);
        srd_decoder_load("uart");
        fail_unless(srd_decoder_get_by_id("uart") != NULL);
        fail_unless(srd_decoder_get_by_id("uart") != NULL);
@@ -267,7 +267,7 @@ END_TEST
  */
 START_TEST(test_get_by_id_bogus)
 {
-       srd_init(NULL);
+       srd_init(DECODERS_DIR);
        fail_unless(srd_decoder_get_by_id(NULL) == NULL);
        fail_unless(srd_decoder_get_by_id("") == NULL);
        fail_unless(srd_decoder_get_by_id(" ") == NULL);
@@ -291,7 +291,7 @@ START_TEST(test_doc_get)
 {
        struct srd_decoder *dec;
 
-       srd_init(NULL);
+       srd_init(DECODERS_DIR);
        srd_decoder_load("uart");
        dec = srd_decoder_get_by_id("uart");
        fail_unless(srd_decoder_doc_get(dec) != NULL);
@@ -306,26 +306,8 @@ END_TEST
  */
 START_TEST(test_doc_get_null)
 {
-       srd_init(NULL);
-       fail_unless(srd_decoder_doc_get(NULL) != NULL);
-       srd_exit();
-}
-END_TEST
-
-/*
- * Check whether srd_decoder_doc_get() fails with an "empty" argument.
- * If it returns a value != NULL (or segfaults) this test will fail.
- * See also: http://sigrok.org/bugzilla/show_bug.cgi?id=180
- */
-START_TEST(test_doc_get_empty)
-{
-       struct srd_decoder dec;
-
-       srd_init(NULL);
-
-       memset(&dec, 0, sizeof(struct srd_decoder));
-       fail_unless(srd_decoder_doc_get(&dec) == NULL);
-
+       srd_init(DECODERS_DIR);
+       fail_unless(srd_decoder_doc_get(NULL) == NULL);
        srd_exit();
 }
 END_TEST
@@ -366,7 +348,6 @@ Suite *suite_decoder(void)
        tc = tcase_create("doc_get");
        tcase_add_test(tc, test_doc_get);
        tcase_add_test(tc, test_doc_get_null);
-       tcase_add_test(tc, test_doc_get_empty);
        suite_add_tcase(s, tc);
 
        return s;