summary refs log tree commit diff
diff options
context:
space:
mode:
authorEric Bavier <bavier@member.fsf.org>2017-02-12 19:51:43 -0600
committerEric Bavier <bavier@member.fsf.org>2017-02-13 22:28:33 -0600
commit4fc282b32a16946d423cdbbdd7ee94d025d3b9f5 (patch)
tree095c6f98d8e5413a52088b12bf5bf11ca493ea32
parent710806b57b07500e1060fd32c1719b8ce8efbbe7 (diff)
downloadguix-4fc282b32a16946d423cdbbdd7ee94d025d3b9f5.tar.gz
gnu: netsurf: Enable tests.
* gnu/packages/patches/netsurf-longer-test-timeout.patch,
gnu/packages/patches/netsurf-y2038-tests.patch: New patches.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/web.scm (netsurf)[source]: Use them.
[native-inputs]: Add libidn, check.
[inputs]: Add miscfiles.
[arguments]: Remove #:tests?, add #:test-target.  Add 'patch-check phase.
-rw-r--r--gnu/local.mk2
-rw-r--r--gnu/packages/patches/netsurf-longer-test-timeout.patch20
-rw-r--r--gnu/packages/patches/netsurf-y2038-tests.patch25
-rw-r--r--gnu/packages/web.scm19
4 files changed, 63 insertions, 3 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 0e79b6762f..26f6bbf0d7 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -773,6 +773,8 @@ dist_patch_DATA =						\
   %D%/packages/patches/netcdf-date-time.patch			\
   %D%/packages/patches/netcdf-tst_h_par.patch			\
   %D%/packages/patches/netsurf-system-utf8proc.patch		\
+  %D%/packages/patches/netsurf-y2038-tests.patch		\
+  %D%/packages/patches/netsurf-longer-test-timeout.patch	\
   %D%/packages/patches/ngircd-handle-zombies.patch		\
   %D%/packages/patches/ngircd-no-dns-in-tests.patch		\
   %D%/packages/patches/ninja-tests.patch			\
diff --git a/gnu/packages/patches/netsurf-longer-test-timeout.patch b/gnu/packages/patches/netsurf-longer-test-timeout.patch
new file mode 100644
index 0000000000..4dd5a8539f
--- /dev/null
+++ b/gnu/packages/patches/netsurf-longer-test-timeout.patch
@@ -0,0 +1,20 @@
+Increase the timeout on dictionary tests to accommodate slower machines.
+
+--- netsurf-3.6/test/hashtable.c
++++ netsurf-3.6/test/hashtable.c
+@@ -286,6 +286,7 @@
+ 	tcase_add_checked_fixture(tc_dict_s,
+ 				  dicts_hashtable_create,
+ 				  dict_hashtable_teardown);
++	tcase_set_timeout(tc_dict_s, 30);
+ 
+ 	tcase_add_test(tc_dict_s, hashtable_dict_test);
+ 
+@@ -297,6 +298,7 @@
+ 	tcase_add_checked_fixture(tc_dict_l,
+ 				  dictl_hashtable_create,
+ 				  dict_hashtable_teardown);
++	tcase_set_timeout(tc_dict_l, 30);
+ 
+ 	tcase_add_test(tc_dict_l, hashtable_dict_test);
+ 
diff --git a/gnu/packages/patches/netsurf-y2038-tests.patch b/gnu/packages/patches/netsurf-y2038-tests.patch
new file mode 100644
index 0000000000..407a5277c8
--- /dev/null
+++ b/gnu/packages/patches/netsurf-y2038-tests.patch
@@ -0,0 +1,25 @@
+These two test cases fail for us on i686.
+
+See https://en.wikipedia.org/wiki/Year_2038_problem
+
+--- netsurf-3.6/test/time.c
++++ netsurf-3.6/test/time.c
+@@ -77,18 +77,10 @@
+ 		.expected = "Tue, 12 Jun 2001 12:12:12 GMT"
+ 	},
+ 	{
+-		.test     = "Thu, 16 Jul 2207 12:45:12 GMT",
+-		.expected = "Thu, 16 Jul 2207 12:45:12 GMT"
+-	},
+-	{
+ 		.test     = "Thu, 16 Aug 2007 19:45:12 GMT",
+ 		.expected = "Thu, 16 Aug 2007 19:45:12 GMT"
+ 	},
+ 	{
+-		.test     = "Tue, 16 Sep 3456 00:45:12 GMT",
+-		.expected = "Tue, 16 Sep 3456 00:45:12 GMT"
+-	},
+-	{
+ 		.test     = "Sun, 16 Oct 1988 19:45:59 GMT",
+ 		.expected = "Sun, 16 Oct 1988 19:45:59 GMT"
+ 	},
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 1584b93beb..e50a3701fe 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -65,11 +65,13 @@
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
+  #:use-module (gnu packages gnu-doc)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages gperf)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages icu4c)
   #:use-module (gnu packages image)
+  #:use-module (gnu packages libidn)
   #:use-module (gnu packages lua)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages base)
@@ -4076,11 +4078,15 @@ w3c webidl files and a binding configuration file.")
        (sha256
         (base32
          "174sjx0566agckwmlj4w2cip5qbxdiafyhlp185a1qprxx84pbjr"))
-       (patches (search-patches "netsurf-system-utf8proc.patch"))))
+       (patches (search-patches "netsurf-system-utf8proc.patch"
+                                "netsurf-y2038-tests.patch"
+                                "netsurf-longer-test-timeout.patch"))))
     (build-system glib-or-gtk-build-system)
     (native-inputs
      `(("netsurf-buildsystem" ,netsurf-buildsystem)
        ("nsgenbind" ,nsgenbind)
+       ("libidn" ,libidn)               ;only for tests
+       ("check" ,check)
        ("perl" ,perl)
        ("perl-html-parser" ,perl-html-parser)
        ("pkg-config" ,pkg-config)))
@@ -4097,7 +4103,8 @@ w3c webidl files and a binding configuration file.")
        ("libnsgif" ,libnsgif)
        ("libnspsl" ,libnspsl)
        ("libnsutils" ,libnsutils)
-       ("libsvgtiny" ,libsvgtiny)))
+       ("libsvgtiny" ,libsvgtiny)
+       ("miscfiles" ,miscfiles)))
     (arguments
      `(#:make-flags `("CC=gcc" "BUILD_CC=gcc"
                       ,(string-append "PREFIX=" %output)
@@ -4105,7 +4112,7 @@ w3c webidl files and a binding configuration file.")
                                       (assoc-ref %build-inputs
                                                  "netsurf-buildsystem")
                                       "/share/netsurf-buildsystem"))
-       #:tests? #f
+       #:test-target "test"
        #:modules ((ice-9 rdelim)
                   (ice-9 match)
                   (srfi srfi-1)
@@ -4144,6 +4151,12 @@ w3c webidl files and a binding configuration file.")
                       (x x)))
                   out)))
              #t))
+         (add-before 'check 'patch-check
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* '("test/bloom.c" "test/hashtable.c")
+               (("/usr/share/dict/words")
+                (string-append (assoc-ref inputs "miscfiles") "/share/web2")))
+             #t))
          (add-after 'install 'install-more
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((out (assoc-ref outputs "out"))