Fix tst-filters (use latest API).
authorFlorent Bruneau <florent.bruneau@polytechnique.org>
Sun, 12 Oct 2008 08:19:39 +0000 (10:19 +0200)
committerFlorent Bruneau <florent.bruneau@polytechnique.org>
Sun, 12 Oct 2008 08:19:39 +0000 (10:19 +0200)
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
postlicyd/filter.h
postlicyd/tst-filters.c

index f4511dd..10effbc 100644 (file)
@@ -262,7 +262,7 @@ bool filter_test(const filter_t *filter, const query_t *query,
 /* Filter context
  */
 
-__attribute__((nonnull))
+__attribute__((nonnull(1)))
 void filter_context_prepare(filter_context_t *context, void* qctx);
 
 __attribute__((nonnull))
index 9de410c..63ca7e6 100644 (file)
@@ -87,6 +87,9 @@ static bool run_testcase(const config_t *config, const char *basepath,
     }
 
     bool ok = true;
+    filter_context_t context;
+    filter_context_prepare(&context, NULL);
+
     while (eol < end) {
         char *neol = memchr(eol, '\n', end - eol);
         if (neol == NULL) {
@@ -122,9 +125,11 @@ static bool run_testcase(const config_t *config, const char *basepath,
           printf("  test %s: %s\n", Name, __test ? "SUCCESS" : "FAILED");      \
           ok = ok && __test;                                                   \
         } while (0)
-        TEST(filter->name, filter_test(filter, &query, result));
+        TEST(filter->name, filter_test(filter, &query, &context, result));
         eol = neol + 1;
+
     }
+    filter_context_wipe(&context);
     return ok;
 }
 
@@ -162,20 +167,24 @@ static bool run_greylisttest(const config_t *config, const char *basepath)
 //    FILTER(greylist2);
 #undef FILTER
 
+    filter_context_t context;
+    filter_context_prepare(&context, NULL);
+
     /* Test greylist */
-    TEST("greylisted", filter_test(greylist1, &q1, HTK_GREYLIST));
-    TEST("too_fast", filter_test(greylist1, &q1, HTK_GREYLIST));
+    TEST("greylisted", filter_test(greylist1, &q1, &context, HTK_GREYLIST));
+    TEST("too_fast", filter_test(greylist1, &q1, &context, HTK_GREYLIST));
     sleep(5);
-    TEST("too_slow", filter_test(greylist1, &q1, HTK_GREYLIST));
+    TEST("too_slow", filter_test(greylist1, &q1, &context, HTK_GREYLIST));
     sleep(2);
-    TEST("whitelisted", filter_test(greylist1, &q1, HTK_WHITELIST));
-    TEST("other_greylisted", filter_test(greylist1, &q2, HTK_GREYLIST));
-    TEST("auto_whitelisted", filter_test(greylist1, &q1, HTK_WHITELIST));
-    TEST("other_auto_whitelisted", filter_test(greylist1, &q2, HTK_WHITELIST));
-    TEST("greylisted", filter_test(greylist1, &q3, HTK_GREYLIST));
+    TEST("whitelisted", filter_test(greylist1, &q1, &context, HTK_WHITELIST));
+    TEST("other_greylisted", filter_test(greylist1, &q2, &context, HTK_GREYLIST));
+    TEST("auto_whitelisted", filter_test(greylist1, &q1, &context, HTK_WHITELIST));
+    TEST("other_auto_whitelisted", filter_test(greylist1, &q2, &context, HTK_WHITELIST));
+    TEST("greylisted", filter_test(greylist1, &q3, &context, HTK_GREYLIST));
     sleep(10);
-    TEST("cleanup", filter_test(greylist1, &q1, HTK_GREYLIST));
+    TEST("cleanup", filter_test(greylist1, &q1, &context, HTK_GREYLIST));
 
+    filter_context_wipe(&context);
     return ok;
 }