~ruther/guix-local

85c774808fc13a0adc603784b2358a7c285c4822 — Kei Kebreau 9 years ago 4f80be7
gnu: gcr: Enable working tests.

* gnu/packages/patches/gcr-disable-failing-tests.patch,
gnu/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch:
New files.
* gnu/local.mk (dist_patch_DATA): Add patches.
* gnu/packages/gnome.scm (gcr)[source]: Use patches.
[arguments]: Enable tests.
M gnu/local.mk => gnu/local.mk +2 -0
@@ 614,6 614,8 @@ dist_patch_DATA =						\
  %D%/packages/patches/gcc-5-source-date-epoch-2.patch		\
  %D%/packages/patches/gcc-6-arm-none-eabi-multilib.patch	\
  %D%/packages/patches/gcc-6-cross-environment-variables.patch	\
  %D%/packages/patches/gcr-disable-failing-tests.patch		\
  %D%/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch	\
  %D%/packages/patches/gdk-pixbuf-list-dir.patch		\
  %D%/packages/patches/gd-fix-gd2-read-test.patch		\
  %D%/packages/patches/gd-fix-tests-on-i686.patch		\

M gnu/packages/gnome.scm => gnu/packages/gnome.scm +5 -4
@@ 470,12 470,13 @@ and keep up to date translations of documentation.")
                                 name "-" version ".tar.xz"))
             (sha256
              (base32
               "0ydk9dzxx6snxza7j5ps8x932hbr3x1b8hhcaqjq4w4admi2qmwh"))))
               "0ydk9dzxx6snxza7j5ps8x932hbr3x1b8hhcaqjq4w4admi2qmwh"))
             (patches
              (search-patches "gcr-disable-failing-tests.patch"
                              "gcr-fix-collection-tests-to-work-with-gpg-21.patch"))))
    (build-system gnu-build-system)
    (arguments
     '(#:tests? #f ;25 of 598 tests fail because /var/lib/dbus/machine-id does
                   ;not exist
       #:phases (modify-phases %standard-phases
     '(#:phases (modify-phases %standard-phases
                  (add-before
                   'check 'pre-check
                   (lambda* (#:key inputs #:allow-other-keys)

A gnu/packages/patches/gcr-disable-failing-tests.patch => gnu/packages/patches/gcr-disable-failing-tests.patch +127 -0
@@ 0,0 1,127 @@
This patch removes a group of tests that fail because /var/lib/dbus/machine-id
is not present in the build environment.

diff -ur gcr-3.20.0.old/Makefile.in gcr-3.20.0/Makefile.in
--- gcr-3.20.0.old/Makefile.in	2017-06-29 14:26:33.794837648 -0400
+++ gcr-3.20.0/Makefile.in	2017-06-29 14:26:54.023532689 -0400
@@ -482,8 +482,7 @@
	test-openssh$(EXEEXT) test-secure-memory$(EXEEXT) \
	test-trust$(EXEEXT) test-parser$(EXEEXT) test-record$(EXEEXT) \
	test-memory-icon$(EXEEXT) test-gnupg-key$(EXEEXT) \
-	test-gnupg-collection$(EXEEXT) test-gnupg-process$(EXEEXT) \
-	test-system-prompt$(EXEEXT)
+	test-gnupg-collection$(EXEEXT) test-gnupg-process$(EXEEXT)
 @WITH_GTK_TRUE@am__EXEEXT_4 = frob-certificate$(EXEEXT) \
 @WITH_GTK_TRUE@	frob-combo-selector$(EXEEXT) \
 @WITH_GTK_TRUE@	frob-gnupg-selector$(EXEEXT) \
@@ -882,14 +881,6 @@
 am_test_symkey_OBJECTS = egg/test-symkey.$(OBJEXT)
 test_symkey_OBJECTS = $(am_test_symkey_OBJECTS)
 test_symkey_DEPENDENCIES = $(am__DEPENDENCIES_4)
-am_test_system_prompt_OBJECTS =  \
-	gcr/test_system_prompt-test-system-prompt.$(OBJEXT)
-test_system_prompt_OBJECTS = $(am_test_system_prompt_OBJECTS)
-test_system_prompt_DEPENDENCIES = $(am__DEPENDENCIES_3)
-test_system_prompt_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
-	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
-	$(test_system_prompt_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
-	$(LDFLAGS) -o $@
 am_test_trust_OBJECTS = gcr/test_trust-test-trust.$(OBJEXT)
 test_trust_OBJECTS = $(am_test_trust_OBJECTS)
 test_trust_DEPENDENCIES = $(am__DEPENDENCIES_3)
@@ -974,8 +965,7 @@
	$(test_secret_exchange_SOURCES) $(test_secure_memory_SOURCES) \
	$(test_simple_certificate_SOURCES) \
	$(test_subject_public_key_SOURCES) $(test_symkey_SOURCES) \
-	$(test_system_prompt_SOURCES) $(test_trust_SOURCES) \
-	$(test_util_SOURCES)
+	$(test_trust_SOURCES) $(test_util_SOURCES)
 DIST_SOURCES = $(libegg_asn1x_la_SOURCES) $(libegg_hex_la_SOURCES) \
	$(libegg_secmem_la_SOURCES) $(libegg_test_la_SOURCES) \
	$(libegg_la_SOURCES) $(libgck_@GCK_MAJOR@_la_SOURCES) \
@@ -1016,8 +1006,7 @@
	$(test_secret_exchange_SOURCES) $(test_secure_memory_SOURCES) \
	$(test_simple_certificate_SOURCES) \
	$(test_subject_public_key_SOURCES) $(test_symkey_SOURCES) \
-	$(test_system_prompt_SOURCES) $(test_trust_SOURCES) \
-	$(test_util_SOURCES)
+	$(test_trust_SOURCES) $(test_util_SOURCES)
 RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
	ctags-recursive dvi-recursive html-recursive info-recursive \
	install-data-recursive install-dvi-recursive \
@@ -2117,8 +2106,7 @@
	test-memory-icon \
	test-gnupg-key \
	test-gnupg-collection \
-	test-gnupg-process \
-	test-system-prompt
+	test-gnupg-process

 test_certificate_SOURCES = gcr/test-certificate.c
 test_certificate_CFLAGS = $(gcr_CFLAGS)
@@ -2171,9 +2159,6 @@
 test_subject_public_key_SOURCES = gcr/test-subject-public-key.c
 test_subject_public_key_CFLAGS = $(gcr_CFLAGS)
 test_subject_public_key_LDADD = $(gcr_LIBS)
-test_system_prompt_SOURCES = gcr/test-system-prompt.c
-test_system_prompt_CFLAGS = $(gcr_CFLAGS)
-test_system_prompt_LDADD = $(gcr_LIBS)
 test_trust_SOURCES = gcr/test-trust.c
 test_trust_CFLAGS = $(gcr_CFLAGS)
 test_trust_LDADD = $(gcr_LIBS)
@@ -3283,12 +3268,7 @@
 test-symkey$(EXEEXT): $(test_symkey_OBJECTS) $(test_symkey_DEPENDENCIES) $(EXTRA_test_symkey_DEPENDENCIES)
	@rm -f test-symkey$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(test_symkey_OBJECTS) $(test_symkey_LDADD) $(LIBS)
-gcr/test_system_prompt-test-system-prompt.$(OBJEXT):  \
-	gcr/$(am__dirstamp) gcr/$(DEPDIR)/$(am__dirstamp)

-test-system-prompt$(EXEEXT): $(test_system_prompt_OBJECTS) $(test_system_prompt_DEPENDENCIES) $(EXTRA_test_system_prompt_DEPENDENCIES)
-	@rm -f test-system-prompt$(EXEEXT)
-	$(AM_V_CCLD)$(test_system_prompt_LINK) $(test_system_prompt_OBJECTS) $(test_system_prompt_LDADD) $(LIBS)
 gcr/test_trust-test-trust.$(OBJEXT): gcr/$(am__dirstamp) \
	gcr/$(DEPDIR)/$(am__dirstamp)

@@ -3446,7 +3426,6 @@
 @AMDEP_TRUE@@am__include@ @am__quote@gcr/$(DEPDIR)/test_secure_memory-test-secure-memory.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gcr/$(DEPDIR)/test_simple_certificate-test-simple-certificate.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gcr/$(DEPDIR)/test_subject_public_key-test-subject-public-key.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@gcr/$(DEPDIR)/test_system_prompt-test-system-prompt.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gcr/$(DEPDIR)/test_trust-test-trust.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@gcr/$(DEPDIR)/test_util-test-util.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@ui/$(DEPDIR)/frob_certificate-frob-certificate.Po@am__quote@
@@ -4968,20 +4947,6 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_subject_public_key_CFLAGS) $(CFLAGS) -c -o gcr/test_subject_public_key-test-subject-public-key.obj `if test -f 'gcr/test-subject-public-key.c'; then $(CYGPATH_W) 'gcr/test-subject-public-key.c'; else $(CYGPATH_W) '$(srcdir)/gcr/test-subject-public-key.c'; fi`

-gcr/test_system_prompt-test-system-prompt.o: gcr/test-system-prompt.c
-@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_system_prompt_CFLAGS) $(CFLAGS) -MT gcr/test_system_prompt-test-system-prompt.o -MD -MP -MF gcr/$(DEPDIR)/test_system_prompt-test-system-prompt.Tpo -c -o gcr/test_system_prompt-test-system-prompt.o `test -f 'gcr/test-system-prompt.c' || echo '$(srcdir)/'`gcr/test-system-prompt.c
-@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) gcr/$(DEPDIR)/test_system_prompt-test-system-prompt.Tpo gcr/$(DEPDIR)/test_system_prompt-test-system-prompt.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gcr/test-system-prompt.c' object='gcr/test_system_prompt-test-system-prompt.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_system_prompt_CFLAGS) $(CFLAGS) -c -o gcr/test_system_prompt-test-system-prompt.o `test -f 'gcr/test-system-prompt.c' || echo '$(srcdir)/'`gcr/test-system-prompt.c
-
-gcr/test_system_prompt-test-system-prompt.obj: gcr/test-system-prompt.c
-@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_system_prompt_CFLAGS) $(CFLAGS) -MT gcr/test_system_prompt-test-system-prompt.obj -MD -MP -MF gcr/$(DEPDIR)/test_system_prompt-test-system-prompt.Tpo -c -o gcr/test_system_prompt-test-system-prompt.obj `if test -f 'gcr/test-system-prompt.c'; then $(CYGPATH_W) 'gcr/test-system-prompt.c'; else $(CYGPATH_W) '$(srcdir)/gcr/test-system-prompt.c'; fi`
-@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) gcr/$(DEPDIR)/test_system_prompt-test-system-prompt.Tpo gcr/$(DEPDIR)/test_system_prompt-test-system-prompt.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gcr/test-system-prompt.c' object='gcr/test_system_prompt-test-system-prompt.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_system_prompt_CFLAGS) $(CFLAGS) -c -o gcr/test_system_prompt-test-system-prompt.obj `if test -f 'gcr/test-system-prompt.c'; then $(CYGPATH_W) 'gcr/test-system-prompt.c'; else $(CYGPATH_W) '$(srcdir)/gcr/test-system-prompt.c'; fi`
-
 gcr/test_trust-test-trust.o: gcr/test-trust.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_trust_CFLAGS) $(CFLAGS) -MT gcr/test_trust-test-trust.o -MD -MP -MF gcr/$(DEPDIR)/test_trust-test-trust.Tpo -c -o gcr/test_trust-test-trust.o `test -f 'gcr/test-trust.c' || echo '$(srcdir)/'`gcr/test-trust.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) gcr/$(DEPDIR)/test_trust-test-trust.Tpo gcr/$(DEPDIR)/test_trust-test-trust.Po
@@ -5808,13 +5773,6 @@
	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
	--log-file $$b.log --trs-file $$b.trs \
	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
-	"$$tst" $(AM_TESTS_FD_REDIRECT)
-test-system-prompt.log: test-system-prompt$(EXEEXT)
-	@p='test-system-prompt$(EXEEXT)'; \
-	b='test-system-prompt'; \
-	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
-	--log-file $$b.log --trs-file $$b.trs \
-	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
	"$$tst" $(AM_TESTS_FD_REDIRECT)
 .test.log:
	@p='$<'; \

A gnu/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch => gnu/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch +31 -0
@@ 0,0 1,31 @@
This patch comes from Debian.

https://bugzilla.gnome.org/show_bug.cgi?id=771052
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=835737

--- gcr-3.20.0.old/gcr/test-gnupg-collection.c	2017-06-29 14:26:33.810838197 -0400
+++ gcr-3.20.0/gcr/test-gnupg-collection.c	2017-06-30 17:25:09.149383067 -0400
@@ -115,6 +115,14 @@

	g_object_unref (test->collection);

+	/* remove potential gpg 2.1 extras, ignore any errors. */
+	cmd = g_strdup_printf ("rm -rf %s/*.d", test->directory);
+	system(cmd);
+	g_free(cmd);
+	cmd = g_strdup_printf ("rm -f %s/.gpg-v21-migrated", test->directory);
+	system(cmd);
+	g_free(cmd);
+
	cmd = g_strdup_printf ("rm -f %s/*", test->directory);
	g_spawn_check_exit_status (system (cmd), &error);
	g_assert_no_error (error);
@@ -202,7 +210,7 @@
	GcrGnupgKey *key;

	_gcr_gnupg_collection_load_async (test->collection, NULL, on_async_ready, test);
-	egg_test_wait_until (500);
+	egg_test_wait_until (2500);
	g_assert (test->result);
	_gcr_gnupg_collection_load_finish (test->collection, test->result, &error);
	g_assert_no_error (error);