GNU bug report logs - #39096
[PATCH] gnu: bitlbee: Update to 3.6.

Previous Next

Package: guix-patches;

Reported by: Timotej Lazar <timotej.lazar <at> araneo.si>

Date: Sun, 12 Jan 2020 12:26:01 UTC

Severity: normal

Tags: patch

Done: Marius Bakke <mbakke <at> fastmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 39096 in the body.
You can then email your comments to 39096 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#39096; Package guix-patches. (Sun, 12 Jan 2020 12:26:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Timotej Lazar <timotej.lazar <at> araneo.si>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Sun, 12 Jan 2020 12:26:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Timotej Lazar <timotej.lazar <at> araneo.si>
To: guix-patches <at> gnu.org
Cc: Timotej Lazar <timotej.lazar <at> araneo.si>
Subject: [PATCH] gnu: bitlbee: Update to 3.6.
Date: Sun, 12 Jan 2020 13:24:58 +0100
* gnu/packages/messaging.scm (bitlbee): Update to 3.6.
[source]: Add patch from master to fix test failures with libcheck≥0.13.
* gnu/packages/patches/bitlbee-fix-tests.patch: New file.
---
 gnu/packages/messaging.scm                   |   5 +-
 gnu/packages/patches/bitlbee-fix-tests.patch | 665 +++++++++++++++++++
 2 files changed, 668 insertions(+), 2 deletions(-)
 create mode 100644 gnu/packages/patches/bitlbee-fix-tests.patch

diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index b524388853..cdd63c9048 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -173,13 +173,14 @@ end-to-end encryption.")
 (define-public bitlbee
   (package
     (name "bitlbee")
-    (version "3.5.1")
+    (version "3.6")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://get.bitlbee.org/src/bitlbee-"
                                   version ".tar.gz"))
               (sha256
-               (base32 "0sgsn0fv41rga46mih3fyv65cvfa6rvki8x92dn7bczbi7yxfdln"))))
+               (base32 "0zhhcbcr59sx9h4maf8zamzv2waya7sbsl7w74gbyilvy93dw5cz"))
+              (patches (search-patches "bitlbee-fix-tests.patch"))))
     (build-system gnu-build-system)
     (native-inputs `(("pkg-config" ,pkg-config)
                      ("check" ,check)))
diff --git a/gnu/packages/patches/bitlbee-fix-tests.patch b/gnu/packages/patches/bitlbee-fix-tests.patch
new file mode 100644
index 0000000000..7bab4554e3
--- /dev/null
+++ b/gnu/packages/patches/bitlbee-fix-tests.patch
@@ -0,0 +1,665 @@
+From 6ff651b3ec93e5fd74f80766d5e9714d963137bc Mon Sep 17 00:00:00 2001
+From: Dima <dgoldin+github <at> protonmail.ch>
+Date: Tue, 19 Nov 2019 13:51:39 +0100
+Subject: [PATCH] Fixing tests for libcheck 0.13.0
+
+Since libcheck 0.13 it's mandatory to wrap the unit-test code
+in a block. This updates the tests to comply with this.
+
+This fix is backwards compatible with libcheck 0.12.
+---
+ tests/check_arc.c         |   6 +-
+ tests/check_help.c        |  24 +++---
+ tests/check_irc.c         |  60 +++++++-------
+ tests/check_jabber_sasl.c |   3 +-
+ tests/check_jabber_util.c |   9 ++-
+ tests/check_md5.c         |   3 +-
+ tests/check_set.c         | 136 +++++++++++++++++++-------------
+ tests/check_util.c        | 159 +++++++++++++++++++++-----------------
+ 8 files changed, 229 insertions(+), 171 deletions(-)
+
+diff --git a/tests/check_arc.c b/tests/check_arc.c
+index 9fcd4b25..c7e1dfef 100644
+--- a/tests/check_arc.c
++++ b/tests/check_arc.c
+@@ -17,7 +17,7 @@ char *clear_tests[] =
+ 	NULL
+ };
+ 
+-static void check_codec(int l)
++START_TEST(check_codec)
+ {
+ 	int i;
+ 
+@@ -37,6 +37,7 @@ static void check_codec(int l)
+ 		g_free(decrypted);
+ 	}
+ }
++END_TEST
+ 
+ struct {
+ 	unsigned char crypted[30];
+@@ -72,7 +73,7 @@ struct {
+ 	{ "", 0, NULL }
+ };
+ 
+-static void check_decod(int l)
++START_TEST(check_decod)
+ {
+ 	int i;
+ 
+@@ -92,6 +93,7 @@ static void check_decod(int l)
+ 		g_free(decrypted);
+ 	}
+ }
++END_TEST
+ 
+ Suite *arc_suite(void)
+ {
+diff --git a/tests/check_help.c b/tests/check_help.c
+index 92d7c28f..ccf136a4 100644
+--- a/tests/check_help.c
++++ b/tests/check_help.c
+@@ -7,20 +7,24 @@
+ #include "help.h"
+ 
+ START_TEST(test_help_initfree)
+-help_t * h, *r;
+-r = help_init(&h, "/dev/null");
+-fail_if(r == NULL);
+-fail_if(r != h);
++{
++    help_t * h, *r;
++    r = help_init(&h, "/dev/null");
++    fail_if(r == NULL);
++    fail_if(r != h);
+ 
+-help_free(&h);
+-fail_if(h != NULL);
++    help_free(&h);
++    fail_if(h != NULL);
++}
+ END_TEST
+ 
+ START_TEST(test_help_nonexistent)
+-help_t * h, *r;
+-r = help_init(&h, "/dev/null");
+-fail_unless(help_get(&h, "nonexistent") == NULL);
+-fail_if(r == NULL);
++{
++    help_t * h, *r;
++    r = help_init(&h, "/dev/null");
++    fail_unless(help_get(&h, "nonexistent") == NULL);
++    fail_if(r == NULL);
++}
+ END_TEST
+ 
+ Suite *help_suite(void)
+diff --git a/tests/check_irc.c b/tests/check_irc.c
+index 5c940729..e2054106 100644
+--- a/tests/check_irc.c
++++ b/tests/check_irc.c
+@@ -8,49 +8,53 @@
+ #include "testsuite.h"
+ 
+ START_TEST(test_connect)
+-GIOChannel * ch1, *ch2;
+-irc_t *irc;
+-char *raw;
+-fail_unless(g_io_channel_pair(&ch1, &ch2));
++{
++    GIOChannel * ch1, *ch2;
++    irc_t *irc;
++    char *raw;
++    fail_unless(g_io_channel_pair(&ch1, &ch2));
+ 
+-irc = irc_new(g_io_channel_unix_get_fd(ch1));
++    irc = irc_new(g_io_channel_unix_get_fd(ch1));
+ 
+-irc_free(irc);
++    irc_free(irc);
+ 
+-fail_unless(g_io_channel_read_to_end(ch2, &raw, NULL, NULL) == G_IO_STATUS_NORMAL);
++    fail_unless(g_io_channel_read_to_end(ch2, &raw, NULL, NULL) == G_IO_STATUS_NORMAL);
+ 
+-fail_if(strcmp(raw, "") != 0);
++    fail_if(strcmp(raw, "") != 0);
+ 
+-g_free(raw);
++    g_free(raw);
++}
+ END_TEST
+ 
+ START_TEST(test_login)
+-GIOChannel * ch1, *ch2;
+-irc_t *irc;
+-char *raw;
+-fail_unless(g_io_channel_pair(&ch1, &ch2));
++{
++    GIOChannel * ch1, *ch2;
++    irc_t *irc;
++    char *raw;
++    fail_unless(g_io_channel_pair(&ch1, &ch2));
+ 
+-g_io_channel_set_flags(ch1, G_IO_FLAG_NONBLOCK, NULL);
+-g_io_channel_set_flags(ch2, G_IO_FLAG_NONBLOCK, NULL);
++    g_io_channel_set_flags(ch1, G_IO_FLAG_NONBLOCK, NULL);
++    g_io_channel_set_flags(ch2, G_IO_FLAG_NONBLOCK, NULL);
+ 
+-irc = irc_new(g_io_channel_unix_get_fd(ch1));
++    irc = irc_new(g_io_channel_unix_get_fd(ch1));
+ 
+-fail_unless(g_io_channel_write_chars(ch2, "NICK bla\r\r\n"
+-                                     "USER a a a a\n", -1, NULL, NULL) == G_IO_STATUS_NORMAL);
+-fail_unless(g_io_channel_flush(ch2, NULL) == G_IO_STATUS_NORMAL);
++    fail_unless(g_io_channel_write_chars(ch2, "NICK bla\r\r\n"
++                "USER a a a a\n", -1, NULL, NULL) == G_IO_STATUS_NORMAL);
++    fail_unless(g_io_channel_flush(ch2, NULL) == G_IO_STATUS_NORMAL);
+ 
+-g_main_iteration(FALSE);
+-irc_free(irc);
++    g_main_iteration(FALSE);
++    irc_free(irc);
+ 
+-fail_unless(g_io_channel_read_to_end(ch2, &raw, NULL, NULL) == G_IO_STATUS_NORMAL);
++    fail_unless(g_io_channel_read_to_end(ch2, &raw, NULL, NULL) == G_IO_STATUS_NORMAL);
+ 
+-fail_unless(strstr(raw, "001") != NULL);
+-fail_unless(strstr(raw, "002") != NULL);
+-fail_unless(strstr(raw, "003") != NULL);
+-fail_unless(strstr(raw, "004") != NULL);
+-fail_unless(strstr(raw, "005") != NULL);
++    fail_unless(strstr(raw, "001") != NULL);
++    fail_unless(strstr(raw, "002") != NULL);
++    fail_unless(strstr(raw, "003") != NULL);
++    fail_unless(strstr(raw, "004") != NULL);
++    fail_unless(strstr(raw, "005") != NULL);
+ 
+-g_free(raw);
++    g_free(raw);
++}
+ END_TEST
+ 
+ Suite *irc_suite(void)
+diff --git a/tests/check_jabber_sasl.c b/tests/check_jabber_sasl.c
+index e7ea8a75..b6c34bb8 100644
+--- a/tests/check_jabber_sasl.c
++++ b/tests/check_jabber_sasl.c
+@@ -77,7 +77,7 @@ struct {
+ 	{ NULL, NULL, NULL }
+ };
+ 
+-static void check_get_part(int l)
++START_TEST(check_get_part)
+ {
+ 	int i;
+ 
+@@ -103,6 +103,7 @@ static void check_get_part(int l)
+ 		g_free(res);
+ 	}
+ }
++END_TEST
+ 
+ Suite *jabber_sasl_suite(void)
+ {
+diff --git a/tests/check_jabber_util.c b/tests/check_jabber_util.c
+index e4d4533a..411f58b1 100644
+--- a/tests/check_jabber_util.c
++++ b/tests/check_jabber_util.c
+@@ -8,7 +8,7 @@
+ 
+ static struct im_connection *ic;
+ 
+-static void check_buddy_add(int l)
++START_TEST(check_buddy_add)
+ {
+ 	struct jabber_buddy *budw1, *budw2, *budw3, *budn, *bud;
+ 
+@@ -93,8 +93,9 @@ static void check_buddy_add(int l)
+ 	fail_unless(jabber_buddy_remove(ic, "bugtest <at> google.com/B"));
+ 	fail_unless(jabber_buddy_remove(ic, "bugtest <at> google.com/C"));
+ }
++END_TEST
+ 
+-static void check_compareJID(int l)
++START_TEST(check_compareJID)
+ {
+ 	fail_unless(jabber_compare_jid("bugtest <at> google.com/B", "bugtest <at> google.com/A"));
+ 	fail_if(jabber_compare_jid("bugtest1 <at> google.com/B", "bugtest <at> google.com/A"));
+@@ -105,8 +106,9 @@ static void check_compareJID(int l)
+ 	fail_if(jabber_compare_jid(NULL, ""));
+ 	fail_if(jabber_compare_jid("", NULL));
+ }
++END_TEST
+ 
+-static void check_hipchat_slug(int l)
++START_TEST(check_hipchat_slug)
+ {
+ 	int i;
+ 
+@@ -124,6 +126,7 @@ static void check_hipchat_slug(int l)
+ 		g_free(new);
+ 	}
+ }
++END_TEST
+ 
+ Suite *jabber_util_suite(void)
+ {
+diff --git a/tests/check_md5.c b/tests/check_md5.c
+index a68df687..5ca52a5b 100644
+--- a/tests/check_md5.c
++++ b/tests/check_md5.c
+@@ -29,7 +29,7 @@ struct md5_test {
+ 	{ NULL },
+ };
+ 
+-static void check_sums(int l)
++START_TEST(check_sums)
+ {
+ 	int i;
+ 
+@@ -45,6 +45,7 @@ static void check_sums(int l)
+ 		fail_if(memcmp(tests[i].expected, sum, 16) != 0, "%s failed", tests[i].str);
+ 	}
+ }
++END_TEST
+ 
+ Suite *md5_suite(void)
+ {
+diff --git a/tests/check_set.c b/tests/check_set.c
+index 6f8b39b5..cf9429e6 100644
+--- a/tests/check_set.c
++++ b/tests/check_set.c
+@@ -7,97 +7,123 @@
+ #include "testsuite.h"
+ 
+ START_TEST(test_set_add)
+-void *data = "data";
+-set_t *s = NULL, *t;
+-t = set_add(&s, "name", "default", NULL, data);
+-fail_unless(s == t);
+-fail_unless(t->data == data);
+-fail_unless(strcmp(t->def, "default") == 0);
++{
++    void *data = "data";
++    set_t *s = NULL, *t;
++    t = set_add(&s, "name", "default", NULL, data);
++    fail_unless(s == t);
++    fail_unless(t->data == data);
++    fail_unless(strcmp(t->def, "default") == 0);
++}
+ END_TEST
+ 
+ START_TEST(test_set_add_existing)
+-void *data = "data";
+-set_t *s = NULL, *t;
+-t = set_add(&s, "name", "default", NULL, data);
+-t = set_add(&s, "name", "newdefault", NULL, data);
+-fail_unless(s == t);
+-fail_unless(strcmp(t->def, "newdefault") == 0);
++{
++    void *data = "data";
++    set_t *s = NULL, *t;
++    t = set_add(&s, "name", "default", NULL, data);
++    t = set_add(&s, "name", "newdefault", NULL, data);
++    fail_unless(s == t);
++    fail_unless(strcmp(t->def, "newdefault") == 0);
++}
+ END_TEST
+ 
+ START_TEST(test_set_find_unknown)
+-set_t * s = NULL;
+-fail_unless(set_find(&s, "foo") == NULL);
++{
++    set_t * s = NULL;
++    fail_unless(set_find(&s, "foo") == NULL);
++}
+ END_TEST
+ 
+ START_TEST(test_set_find)
+-void *data = "data";
+-set_t *s = NULL, *t;
+-t = set_add(&s, "name", "default", NULL, data);
+-fail_unless(s == t);
+-fail_unless(set_find(&s, "name") == t);
++{
++    void *data = "data";
++    set_t *s = NULL, *t;
++    t = set_add(&s, "name", "default", NULL, data);
++    fail_unless(s == t);
++    fail_unless(set_find(&s, "name") == t);
++}
+ END_TEST
+ 
+ START_TEST(test_set_get_str_default)
+-void *data = "data";
+-set_t *s = NULL, *t;
+-t = set_add(&s, "name", "default", NULL, data);
+-fail_unless(s == t);
+-fail_unless(strcmp(set_getstr(&s, "name"), "default") == 0);
++{
++    void *data = "data";
++    set_t *s = NULL, *t;
++    t = set_add(&s, "name", "default", NULL, data);
++    fail_unless(s == t);
++    fail_unless(strcmp(set_getstr(&s, "name"), "default") == 0);
++}
+ END_TEST
+ 
+ START_TEST(test_set_get_bool_default)
+-void *data = "data";
+-set_t *s = NULL, *t;
+-t = set_add(&s, "name", "true", NULL, data);
+-fail_unless(s == t);
+-fail_unless(set_getbool(&s, "name"));
++{
++    void *data = "data";
++    set_t *s = NULL, *t;
++    t = set_add(&s, "name", "true", NULL, data);
++    fail_unless(s == t);
++    fail_unless(set_getbool(&s, "name"));
++}
+ END_TEST
+ 
+ START_TEST(test_set_get_bool_integer)
+-void *data = "data";
+-set_t *s = NULL, *t;
+-t = set_add(&s, "name", "3", NULL, data);
+-fail_unless(s == t);
+-fail_unless(set_getbool(&s, "name") == 3);
++{
++    void *data = "data";
++    set_t *s = NULL, *t;
++    t = set_add(&s, "name", "3", NULL, data);
++    fail_unless(s == t);
++    fail_unless(set_getbool(&s, "name") == 3);
++}
+ END_TEST
+ 
+ START_TEST(test_set_get_bool_unknown)
+-set_t * s = NULL;
+-fail_unless(set_getbool(&s, "name") == 0);
++{
++    set_t * s = NULL;
++    fail_unless(set_getbool(&s, "name") == 0);
++}
+ END_TEST
+ 
+ START_TEST(test_set_get_str_value)
+-void *data = "data";
+-set_t *s = NULL;
+-set_add(&s, "name", "default", NULL, data);
+-set_setstr(&s, "name", "foo");
+-fail_unless(strcmp(set_getstr(&s, "name"), "foo") == 0);
++{
++    void *data = "data";
++    set_t *s = NULL;
++    set_add(&s, "name", "default", NULL, data);
++    set_setstr(&s, "name", "foo");
++    fail_unless(strcmp(set_getstr(&s, "name"), "foo") == 0);
++}
+ END_TEST
+ 
+ START_TEST(test_set_get_str_unknown)
+-set_t * s = NULL;
+-fail_unless(set_getstr(&s, "name") == NULL);
++{
++    set_t * s = NULL;
++    fail_unless(set_getstr(&s, "name") == NULL);
++}
+ END_TEST
+ 
+ START_TEST(test_setint)
+-void *data = "data";
+-set_t *s = NULL;
+-set_add(&s, "name", "10", NULL, data);
+-set_setint(&s, "name", 3);
+-fail_unless(set_getint(&s, "name") == 3);
++{
++    void *data = "data";
++    set_t *s = NULL;
++    set_add(&s, "name", "10", NULL, data);
++    set_setint(&s, "name", 3);
++    fail_unless(set_getint(&s, "name") == 3);
++}
+ END_TEST
+ 
+ START_TEST(test_setstr)
+-void *data = "data";
+-set_t *s = NULL;
+-set_add(&s, "name", "foo", NULL, data);
+-set_setstr(&s, "name", "bloe");
+-fail_unless(strcmp(set_getstr(&s, "name"), "bloe") == 0);
++{
++    void *data = "data";
++    set_t *s = NULL;
++    set_add(&s, "name", "foo", NULL, data);
++    set_setstr(&s, "name", "bloe");
++    fail_unless(strcmp(set_getstr(&s, "name"), "bloe") == 0);
++}
+ END_TEST
+ 
+ START_TEST(test_set_get_int_unknown)
+-set_t * s = NULL;
+-fail_unless(set_getint(&s, "foo") == 0);
++{
++    set_t * s = NULL;
++    fail_unless(set_getint(&s, "foo") == 0);
++}
+ END_TEST
+ 
+ Suite *set_suite(void)
+diff --git a/tests/check_util.c b/tests/check_util.c
+index 44a223ae..2d79417e 100644
+--- a/tests/check_util.c
++++ b/tests/check_util.c
+@@ -8,7 +8,8 @@
+ #include "misc.h"
+ #include "url.h"
+ 
+-START_TEST(test_strip_linefeed){
++START_TEST(test_strip_linefeed)
++{
+ 	int i;
+ 	const char *get[] = { "Test", "Test\r", "Test\rX\r", NULL };
+ 	const char *expected[] = { "Test", "Test", "TestX", NULL };
+@@ -43,63 +44,73 @@ START_TEST(test_strip_newlines)
+ END_TEST
+ 
+ START_TEST(test_set_url_http)
+-url_t url;
+-
+-fail_if(0 == url_set(&url, "http://host/"));
+-fail_unless(!strcmp(url.host, "host"));
+-fail_unless(!strcmp(url.file, "/"));
+-fail_unless(!strcmp(url.user, ""));
+-fail_unless(!strcmp(url.pass, ""));
+-fail_unless(url.proto == PROTO_HTTP);
+-fail_unless(url.port == 80);
++{
++    url_t url;
++
++    fail_if(0 == url_set(&url, "http://host/"));
++    fail_unless(!strcmp(url.host, "host"));
++    fail_unless(!strcmp(url.file, "/"));
++    fail_unless(!strcmp(url.user, ""));
++    fail_unless(!strcmp(url.pass, ""));
++    fail_unless(url.proto == PROTO_HTTP);
++    fail_unless(url.port == 80);
++}
+ END_TEST
+ 
+ START_TEST(test_set_url_https)
+-url_t url;
+-
+-fail_if(0 == url_set(&url, "https://ahost/AimeeMann"));
+-fail_unless(!strcmp(url.host, "ahost"));
+-fail_unless(!strcmp(url.file, "/AimeeMann"));
+-fail_unless(!strcmp(url.user, ""));
+-fail_unless(!strcmp(url.pass, ""));
+-fail_unless(url.proto == PROTO_HTTPS);
+-fail_unless(url.port == 443);
++{
++    url_t url;
++
++    fail_if(0 == url_set(&url, "https://ahost/AimeeMann"));
++    fail_unless(!strcmp(url.host, "ahost"));
++    fail_unless(!strcmp(url.file, "/AimeeMann"));
++    fail_unless(!strcmp(url.user, ""));
++    fail_unless(!strcmp(url.pass, ""));
++    fail_unless(url.proto == PROTO_HTTPS);
++    fail_unless(url.port == 443);
++}
+ END_TEST
+ 
+ START_TEST(test_set_url_port)
+-url_t url;
+-
+-fail_if(0 == url_set(&url, "https://ahost:200/Lost/In/Space"));
+-fail_unless(!strcmp(url.host, "ahost"));
+-fail_unless(!strcmp(url.file, "/Lost/In/Space"));
+-fail_unless(!strcmp(url.user, ""));
+-fail_unless(!strcmp(url.pass, ""));
+-fail_unless(url.proto == PROTO_HTTPS);
+-fail_unless(url.port == 200);
++{
++    url_t url;
++
++    fail_if(0 == url_set(&url, "https://ahost:200/Lost/In/Space"));
++    fail_unless(!strcmp(url.host, "ahost"));
++    fail_unless(!strcmp(url.file, "/Lost/In/Space"));
++    fail_unless(!strcmp(url.user, ""));
++    fail_unless(!strcmp(url.pass, ""));
++    fail_unless(url.proto == PROTO_HTTPS);
++    fail_unless(url.port == 200);
++}
+ END_TEST
+ 
+ START_TEST(test_set_url_username)
+-url_t url;
+-
+-fail_if(0 == url_set(&url, "socks4://user <at> ahost/Space"));
+-fail_unless(!strcmp(url.host, "ahost"));
+-fail_unless(!strcmp(url.file, "/Space"));
+-fail_unless(!strcmp(url.user, "user"));
+-fail_unless(!strcmp(url.pass, ""));
+-fail_unless(url.proto == PROTO_SOCKS4);
+-fail_unless(url.port == 1080);
++{
++    url_t url;
++
++    fail_if(0 == url_set(&url, "socks4://user <at> ahost/Space"));
++    fail_unless(!strcmp(url.host, "ahost"));
++    fail_unless(!strcmp(url.file, "/Space"));
++    fail_unless(!strcmp(url.user, "user"));
++    fail_unless(!strcmp(url.pass, ""));
++    fail_unless(url.proto == PROTO_SOCKS4);
++    fail_unless(url.port == 1080);
++}
+ END_TEST
+ 
+ START_TEST(test_set_url_username_pwd)
+-url_t url;
+-
+-fail_if(0 == url_set(&url, "socks5://user:pass <at> ahost/"));
+-fail_unless(!strcmp(url.host, "ahost"));
+-fail_unless(!strcmp(url.file, "/"));
+-fail_unless(!strcmp(url.user, "user"));
+-fail_unless(!strcmp(url.pass, "pass"));
+-fail_unless(url.proto == PROTO_SOCKS5);
+-fail_unless(url.port == 1080);
++{
++    url_t url;
++
++    fail_if(0 == url_set(&url, "socks5://user:pass <at> ahost/"));
++    fail_unless(!strcmp(url.host, "ahost"));
++    fail_unless(!strcmp(url.file, "/"));
++    fail_unless(!strcmp(url.user, "user"));
++    fail_unless(!strcmp(url.pass, "pass"));
++    fail_unless(url.proto == PROTO_SOCKS5);
++    fail_unless(url.port == 1080);
++}
+ END_TEST
+ 
+ struct {
+@@ -148,26 +159,30 @@ struct {
+ };
+ 
+ START_TEST(test_word_wrap)
+-int i;
++{
++    int i;
+ 
+-for (i = 0; word_wrap_tests[i].orig && *word_wrap_tests[i].orig; i++) {
+-	char *wrapped = word_wrap(word_wrap_tests[i].orig, word_wrap_tests[i].line_len);
++    for (i = 0; word_wrap_tests[i].orig && *word_wrap_tests[i].orig; i++) {
++        char *wrapped = word_wrap(word_wrap_tests[i].orig, word_wrap_tests[i].line_len);
+ 
+-	fail_unless(strcmp(word_wrap_tests[i].wrapped, wrapped) == 0,
+-	            "%s (line_len = %d) should wrap to `%s', not to `%s'",
+-	            word_wrap_tests[i].orig, word_wrap_tests[i].line_len,
+-	            word_wrap_tests[i].wrapped, wrapped);
++        fail_unless(strcmp(word_wrap_tests[i].wrapped, wrapped) == 0,
++                "%s (line_len = %d) should wrap to `%s', not to `%s'",
++                word_wrap_tests[i].orig, word_wrap_tests[i].line_len,
++                word_wrap_tests[i].wrapped, wrapped);
+ 
+-	g_free(wrapped);
++        g_free(wrapped);
++    }
+ }
+ END_TEST
+ 
+ START_TEST(test_http_encode)
+-char s[80];
++{
++    char s[80];
+ 
+-strcpy(s, "ee\xc3" "\xab" "ee!!...");
+-http_encode(s);
+-fail_unless(strcmp(s, "ee%C3%ABee%21%21...") == 0);
++    strcpy(s, "ee\xc3" "\xab" "ee!!...");
++    http_encode(s);
++    fail_unless(strcmp(s, "ee%C3%ABee%21%21...") == 0);
++}
+ END_TEST
+ 
+ struct {
+@@ -198,19 +213,21 @@ struct {
+ };
+ 
+ START_TEST(test_split_command_parts)
+-int i;
+-for (i = 0; split_tests[i].command; i++) {
+-	char *cmd = g_strdup(split_tests[i].command);
+-	char **split = split_command_parts(cmd, split_tests[i].limit);
+-	char **expected = split_tests[i].expected;
+-
+-	int j;
+-	for (j = 0; split[j] && expected[j]; j++) {
+-		fail_unless(strcmp(split[j], expected[j]) == 0,
+-		            "(%d) split_command_parts broken: split(\"%s\")[%d] -> %s (expected: %s)",
+-		            i, split_tests[i].command, j, split[j], expected[j]);
+-	}
+-	g_free(cmd);
++{
++    int i;
++    for (i = 0; split_tests[i].command; i++) {
++        char *cmd = g_strdup(split_tests[i].command);
++        char **split = split_command_parts(cmd, split_tests[i].limit);
++        char **expected = split_tests[i].expected;
++
++        int j;
++        for (j = 0; split[j] && expected[j]; j++) {
++            fail_unless(strcmp(split[j], expected[j]) == 0,
++                    "(%d) split_command_parts broken: split(\"%s\")[%d] -> %s (expected: %s)",
++                    i, split_tests[i].command, j, split[j], expected[j]);
++        }
++        g_free(cmd);
++    }
+ }
+ END_TEST
+ 
+-- 
+2.24.1
+
-- 
2.24.1





Reply sent to Marius Bakke <mbakke <at> fastmail.com>:
You have taken responsibility. (Sun, 12 Jan 2020 20:28:02 GMT) Full text and rfc822 format available.

Notification sent to Timotej Lazar <timotej.lazar <at> araneo.si>:
bug acknowledged by developer. (Sun, 12 Jan 2020 20:28:02 GMT) Full text and rfc822 format available.

Message #10 received at 39096-done <at> debbugs.gnu.org (full text, mbox):

From: Marius Bakke <mbakke <at> fastmail.com>
To: Timotej Lazar <timotej.lazar <at> araneo.si>, 39096-done <at> debbugs.gnu.org
Cc: Timotej Lazar <timotej.lazar <at> araneo.si>
Subject: Re: [bug#39096] [PATCH] gnu: bitlbee: Update to 3.6.
Date: Sun, 12 Jan 2020 21:27:12 +0100
[Message part 1 (text/plain, inline)]
Timotej Lazar <timotej.lazar <at> araneo.si> writes:

> * gnu/packages/messaging.scm (bitlbee): Update to 3.6.
> [source]: Add patch from master to fix test failures with libcheck≥0.13.
> * gnu/packages/patches/bitlbee-fix-tests.patch: New file.
> ---
>  gnu/packages/messaging.scm                   |   5 +-
>  gnu/packages/patches/bitlbee-fix-tests.patch | 665 +++++++++++++++++++
>  2 files changed, 668 insertions(+), 2 deletions(-)
>  create mode 100644 gnu/packages/patches/bitlbee-fix-tests.patch

To avoid having to carry the 600+ line patch, I added a separate commit
that builds bitlbee against check 0.12 for the time being:

https://git.savannah.gnu.org/cgit/guix.git/commit/?id=2a84b550410f4e12eec5fc38039ab0b8823535a6
https://git.savannah.gnu.org/cgit/guix.git/commit/?id=f9ea47a978882541063dd0d77c138be881ce0688

Thanks!
[signature.asc (application/pgp-signature, inline)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Mon, 10 Feb 2020 12:24:10 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 70 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.