guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/02: gnu: ghc-microlens-aeson: Patch tests for i686-linux.


From: guix-commits
Subject: 01/02: gnu: ghc-microlens-aeson: Patch tests for i686-linux.
Date: Fri, 8 Nov 2019 02:28:13 -0500 (EST)

samplet pushed a commit to branch wip-haskell-updates
in repository guix.

commit 6dd69ba41916e10dc6e128be9d2f0515e8dab99a
Author: Timothy Sample <address@hidden>
Date:   Fri Nov 8 01:55:07 2019 -0500

    gnu: ghc-microlens-aeson: Patch tests for i686-linux.
    
    * gnu/packages/patches/ghc-microlens-aeson-fix-tests.patch: New file.
    * gnu/local.mk: Add it.
    * gnu/packages/haskell-xyz.scm (ghc-microlens-aeson): Use it.
---
 gnu/local.mk                                       |  1 +
 gnu/packages/haskell-xyz.scm                       |  1 +
 .../patches/ghc-microlens-aeson-fix-tests.patch    | 27 ++++++++++++++++++++++
 3 files changed, 29 insertions(+)

diff --git a/gnu/local.mk b/gnu/local.mk
index 888b210..5bbe81c 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -878,6 +878,7 @@ dist_patch_DATA =                                           
\
   %D%/packages/patches/ghc-diff-swap-cover-args.patch           \
   %D%/packages/patches/ghc-dont-pass-linker-flags-via-response-files.patch     
\
   %D%/packages/patches/ghc-hpack-fix-tests.patch               \
+  %D%/packages/patches/ghc-microlens-aeson-fix-tests.patch     \
   %D%/packages/patches/ghc-monad-par-fix-tests.patch           \
   %D%/packages/patches/ghc-pandoc-fix-html-tests.patch         \
   %D%/packages/patches/ghc-pandoc-fix-latex-test.patch         \
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index aa6faa1..cf00fa8 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -6606,6 +6606,7 @@ stripped.  As the result, this package has no 
dependencies.")
        (method url-fetch)
        (uri (string-append "https://hackage.haskell.org/package/";
                            "microlens-aeson/microlens-aeson-" version 
".tar.gz"))
+       (patches (search-patches "ghc-microlens-aeson-fix-tests.patch"))
        (sha256
         (base32
          "0w630kk5bnily1qh41081gqgbwmslrh5ad21899gwnb2r3jripyw"))))
diff --git a/gnu/packages/patches/ghc-microlens-aeson-fix-tests.patch 
b/gnu/packages/patches/ghc-microlens-aeson-fix-tests.patch
new file mode 100644
index 0000000..c1ef6a8
--- /dev/null
+++ b/gnu/packages/patches/ghc-microlens-aeson-fix-tests.patch
@@ -0,0 +1,27 @@
+This patch fixes the test suite to allow any order when listing the
+members of a JSON object.  Aeson (being true to the JSON specification)
+does not specify an order for objects.  In practice, the order depends
+on your processor architecture.
+
+See <https://github.com/bos/aeson/issues/568> for a discussion resulting
+in a similar patch fixing the Aeson tests.
+
+See <https://github.com/fosskers/microlens-aeson/issues/1> for the
+upstream bug report.
+
+diff -ruN a/test/Test.hs b/test/Test.hs
+--- a/test/Test.hs     2018-12-31 15:10:50.000000000 -0500
++++ b/test/Test.hs     2019-11-08 01:34:07.419706831 -0500
+@@ -48,8 +48,10 @@
+     , testCase "" $ ("{\"a\": {}, \"b\": null}" ^? key (T.pack "b") . 
_Object) @?= Nothing
+     , testCase "" $ ("{\"a\": 100, \"b\": 200}" ^? key (T.pack "a")) @?= Just 
(Number 100.0)
+     , testCase "" $ ("[1,2,3]" ^? key (T.pack "a")) @?= Nothing
+-    , testCase "" $ ("{\"a\": 4, \"b\": 7}" ^.. members) @?= [Number 
4.0,Number 7.0]
+-    , testCase "" $ ("{\"a\": 4, \"b\": 7}" & members . _Number %~ (* 10)) 
@?= "{\"a\":40,\"b\":70}"
++    , testCase "" $ assertBool "" (let x = ("{\"a\": 4, \"b\": 7}" ^.. 
members)
++                                   in x == [Number 4.0,Number 7.0] || x == 
[Number 7.0,Number 4.0])
++    , testCase "" $ assertBool "" (let x = ("{\"a\": 4, \"b\": 7}" & members 
. _Number %~ (* 10))
++                                   in x == "{\"a\":40,\"b\":70}" || x == 
"{\"b\":70,\"a\":40}")
+     , testCase "" $ ("[1,2,3]" ^? nth 1) @?= Just (Number 2.0)
+     , testCase "" $ ("{\"a\": 100, \"b\": 200}" ^? nth 1) @?= Nothing
+     , testCase "" $ ("[1,2,3]" & nth 1 .~ Number 20) @?= "[1,20,3]"



reply via email to

[Prev in Thread] Current Thread [Next in Thread]