unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
blob 5d5bbaa4d0697dd33dcf32ec07d292cdc757671e 1329 bytes (raw)
name: packages/patches/ruby-mustache-1.1.1-fix-race-condition-tests.patch 	 # note: path name is non-authoritative(*)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 
From 407c6a5db6c1f1cfb40bd6113f07f067d07885a4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <vondruch@redhat.com>
Origin: https://github.com/mustache/mustache/pull/258
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=954503
Date: Mon, 27 Apr 2020 11:16:17 +0200
Subject: [PATCH] Fix test race condition.

The test suite randomly fails with errors such as:

~~~
  1) Failure:
AutoloadingTest#test_autoload_lowercase [/builddir/build/BUILD/mustache-1.1.1/usr/share/gems/gems/mustache-1.1.1/test/autoloading_test.rb:17]:
Expected: Comments
  Actual: nil
~~~

This happens when `test_namespaced*` test cases are executed earlier
than the remaining test cases, because they are defining
`view_namespace` but not cleaning up afterwards.
---
 test/autoloading_test.rb | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/test/autoloading_test.rb b/test/autoloading_test.rb
index 0a7ad762..77eb3557 100644
--- a/test/autoloading_test.rb
+++ b/test/autoloading_test.rb
@@ -7,6 +7,10 @@ def setup
     Mustache.view_path = File.dirname(__FILE__) + '/fixtures'
   end
 
+  def teardown
+    Mustache.remove_instance_variable(:@view_namespace) if Mustache.instance_variable_defined?(:@view_namespace)
+  end
+
   def test_autoload
     klass = Mustache.view_class(:Comments)
     assert_equal Comments, klass

debug log:

solving 5d5bbaa4d0697dd33dcf32ec07d292cdc757671e ...
found 5d5bbaa4d0697dd33dcf32ec07d292cdc757671e in https://git.savannah.gnu.org/cgit/guix.git

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).