me
/
guix
Archived
1
0
Fork 0

gnu: ruby-listen: Enable running the tests.

* gnu/packages/ruby.scm (ruby-listen)[source]: Switch to the Git repository,
as this includes the tests.
[arguments]: Set #:test-target and tweak the Rakefile to avoid requiring
Rubocop unnecessarily.
[native-inputs]: Add bundler and ruby-rspec for running the test suite.
[inputs]: Add ruby-thor, as this is used for bin/listen.
[propagated-inputs]: Add ruby-dep, as this is listed as a runtime dependency
in the gemspec.
master
Christopher Baines 2019-02-17 17:21:56 +00:00
parent c47e141deb
commit 35602819af
No known key found for this signature in database
GPG Key ID: 5E28A33B0B84F577
1 changed files with 34 additions and 6 deletions

View File

@ -4483,16 +4483,44 @@ a native C extension.")
(version "3.1.5") (version "3.1.5")
(source (source
(origin (origin
(method url-fetch) ;; The gem does not include a Rakefile, so fetch from the Git
(uri (rubygems-uri "listen" version)) ;; repository.
(method git-fetch)
(uri (git-reference
(url "https://github.com/guard/listen.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"01v5mrnfqm6sgm8xn2v5swxsn1wlmq7rzh2i48d4jzjsc7qvb6mx")))) "1hqmkfa9f2xb5jlvqbafdxjd5ax75jm8gqj5nh3k22xq0kacsvgg"))))
(build-system ruby-build-system) (build-system ruby-build-system)
(arguments '(#:tests? #f)) ; no tests (arguments
`(#:test-target "spec"
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-files-in-gemspec
(lambda _
(substitute* "listen.gemspec"
(("`git ls-files -z`") "`find . -type f -printf '%P\\\\0' |sort -z`"))
#t))
(add-before 'check 'remove-unnecessary-dependencies'
(lambda _
(substitute* "Rakefile"
;; Rubocop is for code linting, and is unnecessary for running
;; the tests.
((".*rubocop.*") ""))
#t)))))
(native-inputs
`(("bundler" ,bundler)
("ruby-rspec" ,ruby-rspec)))
(inputs
`(;; ruby-thor is used for the command line interface, and is referenced
;; in the wrapper, and therefore just needs to be an input.
("ruby-thor" ,ruby-thor)))
(propagated-inputs (propagated-inputs
`(("ruby-rb-inotify" ,ruby-rb-inotify) `(("ruby-rb-fsevent" ,ruby-rb-fsevent)
("ruby-rb-fsevent" ,ruby-rb-fsevent))) ("ruby-rb-inotify" ,ruby-rb-inotify)
("ruby-dep" ,ruby-dep)))
(synopsis "Listen to file modifications") (synopsis "Listen to file modifications")
(description "The Listen gem listens to file modifications and notifies (description "The Listen gem listens to file modifications and notifies
you about the changes.") you about the changes.")