gnu: Enable tests for ruby-multi-json.

* gnu/packages/ruby.scm (ruby-multi-json)[version]: Update to 1.13.1.
[source]: Switch to GitHub, so that the tests can be run.
[arguments]: Enable running the tests, and add a patch to fix an issue running
the tests.
[native-inputs]: Add native-inputs required for running the tests.
[home-page]: Use HTTPS.

Signed-off-by: Christopher Baines <mail@cbaines.net>
This commit is contained in:
Ben Woodcroft 2018-02-05 11:40:40 +01:00 committed by Christopher Baines
parent ed4b6b1840
commit 1b6f5475a1
No known key found for this signature in database
GPG Key ID: 5E28A33B0B84F577
1 changed files with 22 additions and 5 deletions

View File

@ -2289,23 +2289,40 @@ net/http library.")
(define-public ruby-multi-json (define-public ruby-multi-json
(package (package
(name "ruby-multi-json") (name "ruby-multi-json")
(version "1.12.2") (version "1.13.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (rubygems-uri "multi_json" version)) ;; Tests are not distributed at rubygems.org so download from GitHub
;; instead.
(uri (string-append "https://github.com/intridea/multi_json/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1raim9ddjh672m32psaa9niw67ywzjbxbdb8iijx3wv9k5b0pk2x")))) "1s64xqvrnrxmb59v6b2kchnisawg5ai9ky1w60dy6z6ws9la1xv4"))))
(build-system ruby-build-system) (build-system ruby-build-system)
(arguments (arguments
'(#:tests? #f)) ;; No testsuite included in the gem. `(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'remove-signing-key-reference
(lambda _
(substitute* "multi_json.gemspec"
((".*spec.signing_key.*") ""))
#t)))))
(native-inputs
`(("bundler" ,bundler)
("ruby-rspec" ,ruby-rspec)
("ruby-yard" ,ruby-yard)
("ruby-json-pure" ,ruby-json-pure)
("ruby-oj" ,ruby-oj)
("ruby-yajl-ruby" ,ruby-yajl-ruby)))
(synopsis "Common interface to multiple JSON libraries for Ruby") (synopsis "Common interface to multiple JSON libraries for Ruby")
(description (description
"This package provides a common interface to multiple JSON libraries, "This package provides a common interface to multiple JSON libraries,
including Oj, Yajl, the JSON gem (with C-extensions), the pure-Ruby JSON gem, including Oj, Yajl, the JSON gem (with C-extensions), the pure-Ruby JSON gem,
NSJSONSerialization, gson.rb, JrJackson, and OkJson.") NSJSONSerialization, gson.rb, JrJackson, and OkJson.")
(home-page "http://github.com/intridea/multi_json") (home-page "https://github.com/intridea/multi_json")
(license license:expat))) (license license:expat)))
(define-public ruby-arel (define-public ruby-arel