]> git.ipfire.org Git - thirdparty/rspamd.git/commitdiff
Restore testing framework.
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Fri, 12 Sep 2014 10:56:42 +0000 (11:56 +0100)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Fri, 12 Sep 2014 10:56:42 +0000 (11:56 +0100)
14 files changed:
test/CMakeLists.txt
test/Makefile.in [deleted file]
test/rspamd_dkim_test.c
test/rspamd_dns_test.c
test/rspamd_expression_test.c
test/rspamd_fuzzy_test.c
test/rspamd_mem_pool_test.c
test/rspamd_memcached_test.c [deleted file]
test/rspamd_rcl_test.c [deleted file]
test/rspamd_rrd_test.c
test/rspamd_statfile_test.c
test/rspamd_test_suite.c
test/rspamd_url_test.c
test/tests.h

index 2877ac8fc7a901f5700a4f2aa62524a9fe217316..0972c506b9b590b6f84811c6b423d4c4cf13caec 100644 (file)
@@ -1,5 +1,4 @@
 SET(TESTSRC            rspamd_expression_test.c
-                               rspamd_memcached_test.c
                                rspamd_mem_pool_test.c
                                rspamd_statfile_test.c
                                rspamd_fuzzy_test.c
@@ -8,8 +7,7 @@ SET(TESTSRC             rspamd_expression_test.c
                                rspamd_dns_test.c
                                rspamd_async_test.c
                                rspamd_dkim_test.c
-                               rspamd_rrd_test.c
-                               rspamd_rcl_test.c)
+                               rspamd_rrd_test.c)
 
 ADD_EXECUTABLE(rspamd-test EXCLUDE_FROM_ALL ${TESTSRC})
 SET_TARGET_PROPERTIES(rspamd-test PROPERTIES LINKER_LANGUAGE C)
@@ -22,7 +20,6 @@ TARGET_LINK_LIBRARIES(rspamd-test ${CMAKE_REQUIRED_LIBRARIES})
 TARGET_LINK_LIBRARIES(rspamd-test rspamd-mime)
 TARGET_LINK_LIBRARIES(rspamd-test rspamd-server)
 TARGET_LINK_LIBRARIES(rspamd-test rspamd-util)
-TARGET_LINK_LIBRARIES(rspamd-test rspamd-rcl)
 TARGET_LINK_LIBRARIES(rspamd-test hiredis)
 IF(HAVE_LIBEVENT2)
        TARGET_LINK_LIBRARIES(rspamd-test event_pthreads)
diff --git a/test/Makefile.in b/test/Makefile.in
deleted file mode 100644 (file)
index 08f041e..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-.PHONY: clean
-
-all: rspamd_test_suite
-
-rspamd_test_suite: $(OBJECTS) $(OBJ_DEPENDS)
-       $(CC) $(PTHREAD_LDFLAGS) $(LDFLAGS) $(OBJECTS) $(OBJ_DEPENDS) $(LIBS) -o rspamd_test_suite
-
-run_test: rspamd_test_suite
-       gtester --verbose -k -o=rspamd_test.xml ./rspamd_test_suite
-       less rspamd_test.xml && rm -f rspamd_test.xml
-
-clean:
-       rm -f *.o rspamd_test_suite *.core rspamd_test.xml
-
-dist-clean: clean
-       rm -f Makefile
index bd2508262bb321c48e66c38a1b0bd6eb7e54db30..b0491de0be146cae0ac05aa7966a2c57091f5a71 100644 (file)
 #include "main.h"
 #include "dkim.h"
 
-static const gchar test_dkim_sig[] = "v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; "
-               "bh=xTpleJNUaXMzaRU2xnfInn4n9hf/UHzWSuYzJ3s2WBc=; "
-        "b=cPya7FKbcJnCqMlCETci4ZlQTI/Tfw8y1/+AUSU+YBaDgLhsZMDPQMO0zzMvQM+c+E"
-        "i/J+BAckB9JRyPr9xXtV0ORSmUkFgeMyURopwdNzKQ9UB/JnGHj6i11ceV3b20UAYiIu"
-        "qrXhJD+YEgHYXVtfzTC4OLTJGjEQguEn2+RtlZV60aWsPizK+mqlVO4G57RGklp0vnqB"
-        "oc2XUGMVmOaCvVpQkJdJud1r5aKLhr9Bs0sM8/MaYugwmdSk2rLJUMfUPRyUmIGv3BAG"
-        "bwdvXghyl7HNOqPYwXvk/B8C7++k0VUUOix5M/XrcBMNyJu2fMZJMD8KSn3udFjp9vZ6"
-        "pRqg==";
+static const gchar test_dkim_sig[] = "v=1; a=rsa-sha256; c=relaxed/relaxed; "
+               "d=highsecure.ru; s=dkim; t=1410516996; "
+               "bh=guFoWYHWVzFRqVyAQebnvPcdm7bUQo7pRHt/uIHD7gs=; "
+               "h=Message-ID:Date:From:MIME-Version:To:Subject:Content-Type:Content-Transfer-Encoding; "
+               "b=PCiECkOaPFb99DW+gApgfmdlTUo6XN6YXjnj52Cxoz2FoA857B0ZHFgeQe4JAKHuhW"
+               "oq3BLHap0GcMTTpSOgfQOKa8Df35Ns11JoOFjdBQ8GpM99kOrJP+vZcT8b7AMfthYm0Kwy"
+               "D9TjlkpScuoY5LjsWVnijh9dSNVLFqLatzg=;";
 
 extern struct event_base *base;
 
@@ -72,12 +71,12 @@ rspamd_dkim_test_func ()
        cfg = (struct rspamd_config *)g_malloc (sizeof (struct rspamd_config));
        bzero (cfg, sizeof (struct rspamd_config));
        cfg->cfg_pool = rspamd_mempool_new (rspamd_mempool_suggest_size ());
-       cfg->dns_retransmits = 10;
-       cfg->dns_timeout = 1000;
+       cfg->dns_retransmits = 2;
+       cfg->dns_timeout = 0.5;
 
        pool = rspamd_mempool_new (rspamd_mempool_suggest_size ());
 
-       resolver = dns_resolver_init (base, cfg);
+       resolver = dns_resolver_init (NULL, base, cfg);
 
        g_assert (resolver != NULL);
 
index 781b39503bd23e7823d1eb5252505e6bacf253e3..5728b5a2d839679c8af5019703957ef6e6626ce0 100644 (file)
 
-#include "../src/config.h"
+#include "config.h"
 #include "tests.h"
-#include "../src/dns.h"
-#include "../src/logger.h"
-#include "../src/main.h"
-#include "../src/events.h"
-#include "../src/cfg_file.h"
+#include "dns.h"
+#include "logger.h"
+#include "main.h"
+#include "events.h"
+#include "cfg_file.h"
 
 static guint requests = 0;
 extern struct event_base *base;
+struct rspamd_dns_resolver *resolver;
 
-static void
-test_dns_cb (struct rspamd_dns_reply *reply, gpointer arg)
+gboolean
+session_fin (gpointer unused)
 {
-       union rspamd_reply_element *elt;
-       GList *cur;
+       struct timeval tv;
+
+       tv.tv_sec = 0;
+       tv.tv_usec = 0;
+       event_loopexit (&tv);
 
-       msg_debug ("got reply with code %s for request %s", dns_strerror (reply->code), reply->request->requested_name);
-       if (reply->code == DNS_RC_NOERROR) {
-               cur = reply->elements;
+       return TRUE;
+}
+
+static void
+test_dns_cb (struct rdns_reply *reply, gpointer arg)
+{
+       struct rdns_reply_entry *cur;
+       const struct rdns_request_name *name =
+                       rdns_request_get_name (reply->request, NULL);
+
+       msg_debug ("got reply with code %s for request %s",
+                       rdns_strerror (reply->code), name->name);
+       if (reply->code == RDNS_RC_NOERROR) {
+               cur = reply->entries;
                while (cur) {
-                       elt = cur->data;
-                       switch (reply->request->type) {
-                       case DNS_REQUEST_A:
-                               msg_debug ("got ip: %s", inet_ntoa (elt->a.addr[0]));
+                       switch (cur->type) {
+                       case RDNS_REQUEST_A:
+                               msg_debug ("got ip: %s", inet_ntoa (cur->content.a.addr));
                                break;
-                       case DNS_REQUEST_PTR:
-                               msg_debug ("got name %s", elt->ptr.name);
+                       case RDNS_REQUEST_PTR:
+                               msg_debug ("got name %s", cur->content.ptr.name);
                                break;
-                       case DNS_REQUEST_TXT:
-                               msg_debug ("got txt %s", elt->txt.data);
+                       case RDNS_REQUEST_TXT:
+                               msg_debug ("got txt %s", cur->content.txt.data);
                                break;
-                       case DNS_REQUEST_SPF:
-                               msg_debug ("got spf %s", elt->spf.data);
+                       case RDNS_REQUEST_SPF:
+                               msg_debug ("got spf %s", cur->content.txt.data);
                                break;
-                       case DNS_REQUEST_SRV:
-                               msg_debug ("got srv pri: %d, weight: %d, port: %d, target: %s", elt->srv.weight,
-                                               elt->srv.priority, elt->srv.port, elt->srv.target);
+                       case RDNS_REQUEST_SRV:
+                               msg_debug ("got srv pri: %d, weight: %d, port: %d, target: %s", cur->content.srv.weight,
+                                               cur->content.srv.priority, cur->content.srv.port, cur->content.srv.target);
                                break;
-                       case DNS_REQUEST_MX:
-                               msg_debug ("got mx %s:%d", elt->mx.name, elt->mx.priority);
+                       case RDNS_REQUEST_MX:
+                               msg_debug ("got mx %s:%d", cur->content.mx.name, cur->content.mx.priority);
                                break;
                        }
-                       cur = g_list_next (cur);
+                       cur = cur->next;
                }
        }
        if (-- requests == 0) {
-               destroy_session (reply->request->session);
+               session_fin (NULL);
        }
 }
 
-gboolean
-session_fin (gpointer unused)
-{
-       struct timeval tv;
-
-       tv.tv_sec = 0;
-       tv.tv_usec = 0;
-       event_loopexit (&tv);
-
-       return TRUE;
-}
-
 void
 rspamd_dns_test_func ()
 {
-       struct rspamd_dns_resolver *resolver;
+
        struct rspamd_config *cfg;
        rspamd_mempool_t *pool;
        struct rspamd_async_session *s;
-       struct in_addr ina;
 
        cfg = (struct rspamd_config *)g_malloc (sizeof (struct rspamd_config));
        bzero (cfg, sizeof (struct rspamd_config));
        cfg->cfg_pool = rspamd_mempool_new (rspamd_mempool_suggest_size ());
-       cfg->dns_retransmits = 10;
-       cfg->dns_timeout = 1000;
+       cfg->dns_retransmits = 2;
+       cfg->dns_timeout = 0.5;
 
        pool = rspamd_mempool_new (rspamd_mempool_suggest_size ());
 
        s = new_async_session (pool, session_fin, NULL, NULL, NULL);
 
-       resolver = dns_resolver_init (base, cfg);
-
-       ina.s_addr = inet_addr ("81.19.70.3");
+       resolver = dns_resolver_init (NULL, base, cfg);
 
        requests ++;
-       g_assert (make_dns_request (resolver, s, pool, test_dns_cb, NULL, DNS_REQUEST_A, "google.com"));
+       g_assert (make_dns_request (resolver, s, pool, test_dns_cb, NULL, RDNS_REQUEST_A, "google.com"));
        requests ++;
-       g_assert (make_dns_request (resolver, s, pool, test_dns_cb, NULL, DNS_REQUEST_PTR, &ina));
+       g_assert (make_dns_request (resolver, s, pool, test_dns_cb, NULL, RDNS_REQUEST_PTR, "81.19.70.3"));
        requests ++;
-       g_assert (make_dns_request (resolver, s, pool, test_dns_cb, NULL, DNS_REQUEST_MX, "rambler.ru"));
+       g_assert (make_dns_request (resolver, s, pool, test_dns_cb, NULL, RDNS_REQUEST_MX, "rambler.ru"));
        requests ++;
-       g_assert (make_dns_request (resolver, s, pool, test_dns_cb, NULL, DNS_REQUEST_TXT, "rambler.ru"));
+       g_assert (make_dns_request (resolver, s, pool, test_dns_cb, NULL, RDNS_REQUEST_TXT, "rambler.ru"));
        requests ++;
-       g_assert (make_dns_request (resolver, s, pool, test_dns_cb, NULL, DNS_REQUEST_TXT, "google.com"));
+       g_assert (make_dns_request (resolver, s, pool, test_dns_cb, NULL, RDNS_REQUEST_TXT, "google.com"));
        requests ++;
-       g_assert (make_dns_request (resolver, s, pool, test_dns_cb, NULL, DNS_REQUEST_SPF, "rambler.ru"));
+       g_assert (make_dns_request (resolver, s, pool, test_dns_cb, NULL, RDNS_REQUEST_SPF, "rambler.ru"));
        requests ++;
-       g_assert (make_dns_request (resolver, s, pool, test_dns_cb, NULL, DNS_REQUEST_SRV, "xmpp-server", "tcp", "jabber.org"));
+       g_assert (make_dns_request (resolver, s, pool, test_dns_cb, NULL, RDNS_REQUEST_SRV, "_xmpp-server._tcp.jabber.org"));
        requests ++;
-       g_assert (make_dns_request (resolver, s, pool, test_dns_cb, NULL, DNS_REQUEST_TXT, "non-existent.arpa"));
+       g_assert (make_dns_request (resolver, s, pool, test_dns_cb, NULL, RDNS_REQUEST_TXT, "non-existent.arpa"));
 
        g_assert (resolver != NULL);
 
-
-
        event_loop (0);
 }
index 2ce9e4f87a56bd707288b87658875db33f614f11..f7939bd02c365f96a30447a3556016c8631ce774 100644 (file)
@@ -1,7 +1,7 @@
-#include "../src/config.h"
-#include "../src/main.h"
-#include "../src/cfg_file.h"
-#include "../src/expressions.h"
+#include "config.h"
+#include "main.h"
+#include "cfg_file.h"
+#include "expressions.h"
 #include "tests.h"
 
 /* Vector of test expressions */
index a5c76cb3481a4e5f43d10b989d20c64202e4b936..7bee03164395041e484b5beb5607c249d0a22500 100644 (file)
@@ -1,6 +1,6 @@
-#include "../src/config.h"
-#include "../src/main.h"
-#include "../src/fuzzy.h"
+#include "config.h"
+#include "main.h"
+#include "fuzzy.h"
 #include "tests.h"
 
 static char *s1 = "This is sample test text.\r\n"
index 22864479980980157f91a7b0c53cc0918317b7de..ba9a87aebf3b89d9c5fe14c0e1f6a4c93be149fa 100644 (file)
@@ -1,7 +1,5 @@
-
-
-#include "../src/config.h"
-#include "../src/mem_pool.h"
+#include "config.h"
+#include "mem_pool.h"
 #include "tests.h"
 
 #define TEST_BUF "test bufffer"
diff --git a/test/rspamd_memcached_test.c b/test/rspamd_memcached_test.c
deleted file mode 100644 (file)
index 0cd42c5..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-#include "../src/config.h"
-#include "../src/main.h"
-#include "../src/cfg_file.h"
-#include "../src/memcached.h"
-#include "tests.h"
-
-static const u_char *buf = "test";
-
-static void 
-memcached_callback (memcached_ctx_t *ctx, memc_error_t error, void *data)
-{
-       struct timeval tv;
-
-       switch (ctx->op) {
-               case CMD_CONNECT:
-                       if (error != OK) {
-                               msg_warn ("Connect failed, skipping test");
-                               memc_close_ctx (ctx);
-                               tv.tv_sec = 0;
-                               tv.tv_usec = 0;
-                               event_loopexit (&tv);
-                       }
-                       msg_debug ("Connect ok");
-                       memc_set (ctx, ctx->param, 60);
-                       break;
-               case CMD_READ:
-                       g_assert (error == OK);
-                       g_assert (!memcmp(ctx->param->buf, buf, ctx->param->bufsize));
-                       msg_debug ("Read ok");
-                       memc_close_ctx (ctx);
-                       tv.tv_sec = 0;
-                       tv.tv_usec = 0;
-                       event_loopexit (&tv);
-                       break;
-               case CMD_WRITE:
-                       if (error != OK) {
-                               msg_warn ("Connect failed, skipping test");
-                               memc_close_ctx (ctx);
-                               tv.tv_sec = 0;
-                               tv.tv_usec = 0;
-                               event_loopexit (&tv);
-                       }
-                       msg_debug ("Write ok");
-                       ctx->param->buf = g_malloc (sizeof (buf));
-                       bzero (ctx->param->buf, sizeof (buf));
-                       memc_get (ctx, ctx->param);
-                       break;
-               default:
-                       return;
-       }
-}
-                       
-void
-rspamd_memcached_test_func ()
-{
-       memcached_ctx_t *ctx;
-       memcached_param_t *param;
-       struct in_addr addr;
-
-       ctx = g_malloc (sizeof (memcached_ctx_t));
-       param = g_malloc (sizeof (memcached_param_t));
-       bzero (ctx, sizeof (memcached_ctx_t));
-       bzero (param, sizeof (memcached_param_t));
-
-       event_init ();
-
-       ctx->callback = memcached_callback;
-       ctx->callback_data = (void *)param;
-       ctx->protocol = TCP_TEXT;
-       inet_aton ("127.0.0.1", &addr);
-       memcpy (&ctx->addr, &addr, sizeof (struct in_addr));
-       ctx->port = htons (11211);
-       ctx->timeout.tv_sec = 1;
-       ctx->timeout.tv_usec = 0;
-       ctx->sock = -1;
-       ctx->options = MEMC_OPT_DEBUG;
-       rspamd_strlcpy (param->key, buf, sizeof (param->key));
-       param->buf = buf;
-       param->bufsize = strlen (buf);
-       ctx->param = param;
-       g_assert (memc_init_ctx (ctx) != -1);
-
-       event_loop (0);
-}
-
diff --git a/test/rspamd_rcl_test.c b/test/rspamd_rcl_test.c
deleted file mode 100644 (file)
index 7783408..0000000
+++ /dev/null
@@ -1,196 +0,0 @@
-/* Copyright (c) 2013, Vsevolod Stakhov
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *       * Redistributions of source code must retain the above copyright
- *         notice, this list of conditions and the following disclaimer.
- *       * Redistributions in binary form must reproduce the above copyright
- *         notice, this list of conditions and the following disclaimer in the
- *         documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED ''AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL AUTHOR BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "rcl/rcl.h"
-#include "main.h"
-#include "json/jansson.h"
-#include "tests.h"
-
-const gchar *rcl_test_valid[] = {
-               /* Json like */
-               "{"
-               "\"key1\": value;"
-               "\"key1\": value2;"
-               "\"key1\": \"value;\""
-               "}\n",
-               /* Nginx like */
-               "section1 { param1 = value; param2 = value, "
-               "section3 {param = value; param2 = value, param3 = [\"value1\", value2, 100500]}}\n"
-               "section2 { param1 = {key = value}, param1 = [\"key\"]}",
-               /* Numbers */
-               "key = 1s\n"
-               "key2 = 1min\n"
-               "key3 = 1kb\n"
-               "key4 = 5M\n"
-               "key5 = 10mS\n"
-               "key6 = 10y\n",
-               /* Strings */
-               "key = \"some string\";"
-               "key1 = /some/path;"
-               "key3 = 111some,"
-               "key4: s1,"
-               "\"key5\": \"\\n\\r123\"",
-               ""
-               "#packagesite http//pkg.freebsd.org/freebsd-9-amd64/latest\n"
-               "#packagesite http//pkg.freebsd.org/freebsd-9-amd64/latest\n"
-               "packagesite: http//pkg.freebsd.org/freebsd-9-amd64/latest\n"
-               "ALIAS             : {\n"
-               "  all-depends: query %dn-%dv,\n"
-               "  annotations: info -A,\n"
-               "  build-depends: info -qd,\n"
-               "  download: fetch,\n"
-               "  iinfo: info -i -g -x,\n"
-               "  isearch: search -i -g -x,\n"
-               "  leaf: query -e '%a == 0' '%n-%v',\n"
-               "  leaf: query -e '%a == 0' '%n-%v',\n"
-               "  list: info -ql,\n"
-               "  origin: info -qo,\n"
-               "  provided-depends: info -qb,\n"
-               "  raw: info -R,\n"
-               "  required-depends: info -qr,\n"
-               "  shared-depends: info -qB,\n"
-               "  show: info -f -k,\n"
-               "  size: info -sq,\n"
-               "  }\n"
-               "\n"
-               "repo_dirs : [\n"
-               "  /home/bapt,\n"
-               "  /usr/local/etc\n"
-               "]\n"
-               "",
-       /* Macros */
-               "section1 {key = value; section {\n"
-               "param = \"value\";\n"
-        "param2 = value\n"
-        "array = [          1, 1mb, test]}\n"
-        ".includes \"./test.cfg\"}",
-               NULL
-};
-
-static const gchar test_pubkey[] = ""
-"-----BEGIN PUBLIC KEY-----\n"
-"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDlhk2u5nbTVgEskmS+qZcAj339\n"
-"bLwEK/TXdd0G3d4BVKpF712frw+YwetRdmRRYL5EdjiF01Bv3s6QmsThAJX/li/c\n"
-"Q15YFxhvq9DZ0qJmL7e1NzORo6m/WLRK9wxWA+PXSvSUKrlZ3kt9ygD4z5QZ3/td\n"
-"qil9VM6Mz7P1HJ0KywIDAQAB\n"
-"-----END PUBLIC KEY-----\n";
-
-void
-rspamd_rcl_test_func (void)
-{
-       struct rspamd_cl_parser *parser, *parser2;
-       rspamd_cl_object_t *obj;
-       const gchar **cur;
-       guchar *emitted;
-       GError *err = NULL;
-       struct timespec start, end;
-       gdouble seconds;
-       json_t *json;
-       json_error_t jerr;
-
-       cur = rcl_test_valid;
-       while (*cur != NULL) {
-               parser = rspamd_cl_parser_new (RSPAMD_CL_FLAG_KEY_LOWERCASE);
-               rspamd_cl_pubkey_add (parser, test_pubkey, sizeof (test_pubkey) - 1, &err);
-               g_assert_no_error (err);
-               g_assert (parser != NULL);
-               rspamd_cl_parser_add_chunk (parser, *cur, strlen (*cur), &err);
-               g_assert_no_error (err);
-               obj = rspamd_cl_parser_get_object (parser, &err);
-               g_assert_no_error (err);
-               /* Test config emitting */
-               emitted = rspamd_cl_object_emit (obj, RSPAMD_CL_EMIT_CONFIG);
-               g_assert (emitted != NULL);
-               msg_debug ("got config output: %s", emitted);
-               parser2 = rspamd_cl_parser_new (RSPAMD_CL_FLAG_KEY_LOWERCASE);
-               g_assert (parser2 != NULL);
-               rspamd_cl_parser_add_chunk (parser2, emitted, strlen (emitted), &err);
-               g_assert_no_error (err);
-               rspamd_cl_parser_free (parser2);
-               g_free (emitted);
-               /* Test json emitted */
-               emitted = rspamd_cl_object_emit (obj, RSPAMD_CL_EMIT_JSON);
-               g_assert (emitted != NULL);
-               msg_debug ("got json output: %s", emitted);
-               parser2 = rspamd_cl_parser_new (RSPAMD_CL_FLAG_KEY_LOWERCASE);
-               g_assert (parser2 != NULL);
-               rspamd_cl_parser_add_chunk (parser2, emitted, strlen (emitted), &err);
-               g_assert_no_error (err);
-               rspamd_cl_parser_free (parser2);
-               g_free (emitted);
-               /* Compact json */
-               emitted = rspamd_cl_object_emit (obj, RSPAMD_CL_EMIT_JSON_COMPACT);
-               g_assert (emitted != NULL);
-               msg_debug ("got json compacted output: %s", emitted);
-               parser2 = rspamd_cl_parser_new (RSPAMD_CL_FLAG_KEY_LOWERCASE);
-               g_assert (parser2 != NULL);
-               rspamd_cl_parser_add_chunk (parser2, emitted, strlen (emitted), &err);
-               g_assert_no_error (err);
-               rspamd_cl_parser_free (parser2);
-               g_free (emitted);
-
-               /* Cleanup */
-               rspamd_cl_parser_free (parser);
-               rspamd_cl_obj_unref (obj);
-               cur ++;
-       }
-
-       /* Load a big json */
-       parser = rspamd_cl_parser_new (RSPAMD_CL_FLAG_KEY_LOWERCASE);
-       clock_gettime (CLOCK_MONOTONIC, &start);
-       rspamd_cl_parser_add_file (parser, "./rcl_test.json", &err);
-       g_assert_no_error (err);
-       obj = rspamd_cl_parser_get_object (parser, &err);
-       g_assert_no_error (err);
-       clock_gettime (CLOCK_MONOTONIC, &end);
-       seconds = (end.tv_sec - start.tv_sec) + (end.tv_nsec - start.tv_nsec) / 1000000000.;
-       msg_info ("rcl: parsed json in %.4f seconds", seconds);
-       /* Test config emitting */
-       clock_gettime (CLOCK_MONOTONIC, &start);
-       emitted = rspamd_cl_object_emit (obj, RSPAMD_CL_EMIT_CONFIG);
-       g_assert (emitted != NULL);
-       clock_gettime (CLOCK_MONOTONIC, &end);
-       seconds = (end.tv_sec - start.tv_sec) + (end.tv_nsec - start.tv_nsec) / 1000000000.;
-       msg_info ("rcl: emitted object in %.4f seconds", seconds);
-       rspamd_cl_parser_free (parser);
-       rspamd_cl_obj_unref (obj);
-       g_free (emitted);
-
-       clock_gettime (CLOCK_MONOTONIC, &start);
-       json = json_load_file ("./rcl_test.json", &jerr);
-       g_assert (json != NULL);
-       clock_gettime (CLOCK_MONOTONIC, &end);
-       seconds = (end.tv_sec - start.tv_sec) + (end.tv_nsec - start.tv_nsec) / 1000000000.;
-       msg_info ("jansson: parsed json in %.4f seconds", seconds);
-
-       clock_gettime (CLOCK_MONOTONIC, &start);
-       emitted = json_dumps (json, 0);
-       g_assert (emitted != NULL);
-       clock_gettime (CLOCK_MONOTONIC, &end);
-       seconds = (end.tv_sec - start.tv_sec) + (end.tv_nsec - start.tv_nsec) / 1000000000.;
-       msg_info ("jansson: emitted object in %.4f seconds", seconds);
-
-       //json_decref (json);
-       g_free (emitted);
-}
index 02996bdd93766932f5618655bd47fdecef47fbb3..3c81713c0065931ac6316e324b0c1870fb66ce31 100644 (file)
@@ -60,7 +60,7 @@ rspamd_rrd_test_func ()
        /* Reopen */
        g_assert ((rrd = rspamd_rrd_open (tmpfile, &err)) != NULL);
        /* Add some points */
-       for (i = 0; i < 100; i += 10) {
+       for (i = 0; i < 20; i += 10) {
                sleep (1);
                t = i;
                ar.data = &t;
index 870a827fa23f4cb66606b7a47fc6349215177e1f..753782c9c11b17e3e11a54bae4c4cfb9a9bef36d 100644 (file)
@@ -1,7 +1,8 @@
-#include "../src/config.h"
-#include "../src/main.h"
-#include "../src/statfile.h"
+#include "config.h"
+#include "main.h"
+#include "statfile.h"
 #include "tests.h"
+#include "ottery.h"
 
 #define TEST_FILENAME "/tmp/rspamd_test.stat"
 #define HASHES_NUM 256
@@ -13,17 +14,14 @@ rspamd_statfile_test_func ()
        rspamd_mempool_t *p;
        stat_file_t *st;
        uint32_t random_hashes[HASHES_NUM], i, v;
-       time_t now;
+       time_t now = time (NULL);
        
        p = rspamd_mempool_new (rspamd_mempool_suggest_size ());
        umask (S_IWGRP | S_IWOTH);
-       pool = statfile_pool_new (p, 10 * 1024 * 1024, TRUE);
+       pool = statfile_pool_new (p, TRUE);
 
-       now = time (NULL);
-       /* Fill random array */
-       srand (now);
        for (i = 0; i < HASHES_NUM; i ++) {
-               random_hashes[i] = rand ();
+               random_hashes[i] = ottery_rand_uint32 ();
        }
 
        /* Create new file */
index 7bd86d4835f714c0b331ee89e1c743aa97a09295..73580a9981f99010ce1a8543188e52584e0110c3 100644 (file)
@@ -1,6 +1,6 @@
-#include "../src/config.h"
-#include "../src/main.h"
-#include "../src/cfg_file.h"
+#include "config.h"
+#include "main.h"
+#include "cfg_file.h"
 #include "tests.h"
 
 struct rspamd_main             *rspamd_main = NULL;
@@ -38,15 +38,12 @@ main (int argc, char **argv)
        else {
                cfg->log_level = G_LOG_LEVEL_INFO;
        }
+       cfg->log_type = RSPAMD_LOG_CONSOLE;
        /* First set logger to console logger */
-       rspamd_set_logger (RSPAMD_LOG_CONSOLE, g_quark_from_static_string("rspamd-test"), rspamd_main);
+       rspamd_set_logger (cfg, g_quark_from_static_string("rspamd-test"), rspamd_main);
        (void)open_log (rspamd_main->logger);
        g_log_set_default_handler (rspamd_glib_log_function, rspamd_main->logger);
 
-#if 0
-       g_test_add_func ("/rspamd/memcached", rspamd_memcached_test_func);
-#endif
-       g_test_add_func ("/rspamd/rcl", rspamd_rcl_test_func);
        g_test_add_func ("/rspamd/mem_pool", rspamd_mem_pool_test_func);
        g_test_add_func ("/rspamd/fuzzy", rspamd_fuzzy_test_func);
        g_test_add_func ("/rspamd/url", rspamd_url_test_func);
index 92dc5a0d496f7d2ca34e6ac1b6887bd98c33da5d..8acc6b3247144f98497e7a983774800ee86766d7 100644 (file)
@@ -1,7 +1,7 @@
-#include "../src/config.h"
-#include "../src/main.h"
-#include "../src/cfg_file.h"
-#include "../src/url.h"
+#include "config.h"
+#include "main.h"
+#include "cfg_file.h"
+#include "url.h"
 #include "tests.h"
 
 const char *test_text =
index dc484dbfffde12962feb1c155c92e807bc345fc1..a6779f21ad777fe73c36e3ca0f6ae35a790bf5f3 100644 (file)
@@ -8,9 +8,6 @@
 /* URL parser test */
 void rspamd_url_test_func (void);
 
-/* Memcached library test */
-void rspamd_memcached_test_func (void);
-
 /* Memory pools */
 void rspamd_mem_pool_test_func (void);
 
@@ -35,7 +32,4 @@ void rspamd_dkim_test_func (void);
 /* RRD test */
 void rspamd_rrd_test_func (void);
 
-/* RCL test */
-void rspamd_rcl_test_func (void);
-
 #endif