diff options
author | Christopher Baines <mail@cbaines.net> | 2019-01-27 12:14:26 +0000 |
---|---|---|
committer | Christopher Baines <christopher.baines@digital.cabinet-office.gov.uk> | 2019-01-29 22:56:12 +0000 |
commit | 632fa42770f61521c3fa0801ca2aa86d5a6c1489 (patch) | |
tree | 50f1799b1944692daac71a4d8f8dd46df331d639 /gnu | |
parent | bd2b4310b965efa6aad495c4d068f7b5a3e46102 (diff) | |
download | gnu-guix-632fa42770f61521c3fa0801ca2aa86d5a6c1489.tar gnu-guix-632fa42770f61521c3fa0801ca2aa86d5a6c1489.tar.gz |
gnu: ruby-rspec-its: Enable tests.
Enable the tests, and also tweak the synopsis and description to hopefully be
more descriptive.
* gnu/packages/ruby.scm (ruby-rspec-its)[source]: Change to GitHub, and add
patch.
[arguments]: Enabled tests, set the #:test-target to "spec", and add the
phases to tweak the Gemfile and rspec-its.gemspec.
[native-inputs]: Add bundler, ruby-cucumber and ruby-aruba.
[synopsis,description]: Make more explicit and descriptive.
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/ruby.scm | 49 |
1 files changed, 42 insertions, 7 deletions
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 59895240f8..b0cf9feb02 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -392,20 +392,55 @@ outcomes of a code example.") (version "1.2.0") (source (origin - (method url-fetch) - (uri (rubygems-uri "rspec-its" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/rspec/rspec-its.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1pwphny5jawcm1hda3vs9pjv1cybaxy17dc1s75qd7drrvx697p3")))) + "190rz7v4q4wk80fzhr5hknvxx4vb2pywmqr8wc41w2blj9ylzi0f")) + (patches + (list + (origin (method url-fetch) + (uri (string-append + "https://github.com/rspec/rspec-its/commit/" + "bfaab439c7c879f5ef25552f41827891f6308373.patch")) + (file-name "ruby-rspec-its-fix-specs-for-ruby-2.4.patch") + (sha256 + (base32 + "0lnik0kvrpgkakvdb2fmzg22pdlraf6kiidr9sv6rnfyviiqwxgh"))))))) (build-system ruby-build-system) (arguments - `(#:tests? #f)) ; needs cucumber. + `(#:test-target "spec" + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'dont-install-gems-from-gemfile + (lambda _ + (substitute* "Gemfile" + (("rspec rspec-core rspec-expectations rspec-mocks rspec-support") + "")) + #t)) + (add-before 'build 'remove-unnecessary-dependency-versions-from-gemfile + (lambda _ + (substitute* "rspec-its.gemspec" + (("rake.*") "rake'\n") + (("cucumber.*") "cucumber'\n") + (("bundler.*") "bundler'\n") + (("aruba.*") "aruba'\n")) + #t))))) (propagated-inputs `(("ruby-rspec-core" ,ruby-rspec-core) ("ruby-rspec-expectations" ,ruby-rspec-expectations))) - (synopsis "RSpec extension gem for attribute matching") - (description "@code{rspec-its} is an RSpec extension gem for attribute -matching.") + (native-inputs + `(("bundler" ,bundler) + ("ruby-cucumber" ,ruby-cucumber) + ("ruby-aruba" ,ruby-aruba))) + (synopsis "RSpec extension that provides the @code{its} method") + (description + "RSpec::Its provides the its method as a short-hand to specify the expected +value of an attribute. For example, one can use @code{its(:size)\\{should +eq(1)\\}}.") (home-page "https://github.com/rspec/rspec-its") (license license:expat))) |