New Upstream Release - ruby-jeweler
Ready changes
Summary
Merged new upstream version: 2.3.9 (was: 2.0.1).
Resulting package
Built on 2023-01-06T11:55 (took 16m59s)
The resulting binary packages can be installed (if you have the apt repository enabled) by running one of:
apt install -t fresh-releases ruby-jeweler
Diff
diff --git a/.semver b/.semver
new file mode 100644
index 0000000..47de24d
--- /dev/null
+++ b/.semver
@@ -0,0 +1,6 @@
+---
+:major: 2
+:minor: 3
+:patch: 9
+:special: ''
+:metadata: ''
diff --git a/.travis.yml b/.travis.yml
index 3c063cd..e195437 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,7 +1,9 @@
language: ruby
+before_install: 'gem update bundler'
+install: 'bundle install --jobs=3 --retry=3' # Suppress the --deployment flag'
rvm:
- - 1.9.2
- - 1.9.3
- - 2.0.0
+ - 2.2.2
+ - 2.3.0
+ - 2.3.1
notifications:
irc: "irc.freenode.org#jeweler"
diff --git a/ChangeLog.markdown b/ChangeLog.markdown
index 6e8a8aa..85d058e 100644
--- a/ChangeLog.markdown
+++ b/ChangeLog.markdown
@@ -1,3 +1,10 @@
+# jeweler 2.2.1
+ * Added a patch for a potential psych problem that hit juwelier.
+
+# jeweler 2.1.2, 2016-10-22
+ * Merged pull requests to support breaking changes to the Bundler API (thanks julik)
+ * Updated gem dependencies
+
# jeweler 2.0.0, 2014-01-05
* Ruby 1.8 is not supported anymore.
diff --git a/Gemfile b/Gemfile
index 7ce1b86..00b6161 100644
--- a/Gemfile
+++ b/Gemfile
@@ -1,42 +1,42 @@
-source "http://rubygems.org"
-source "http://gems.github.com"
+source 'https://rubygems.org'
-
-gem "rake"
-gem "git", ">= 1.2.5"
-gem "nokogiri", ">= 1.5.10"
-gem "github_api"
-gem "highline", ">= 1.6.15"
-gem "bundler", ">= 1.0"
-gem "rdoc"
-gem "builder"
+gem 'rake'
+gem 'git', '>= 1.2.5'
+gem 'nokogiri', '>= 1.5.10'
+gem 'github_api', '~> 0.16.0'
+gem 'highline', '>= 1.6.15'
+gem 'bundler'
+gem 'rdoc'
+gem 'builder'
+gem "semver2"
+gem "psych"
group :development do
- gem "yard", ">= 0.8.5"
- gem "bluecloth"
- gem "cucumber", ">= 1.1.4"
- gem "simplecov"
+ gem 'yard', '>= 0.8.5'
+ gem 'bluecloth'
+ gem 'cucumber', '>= 1.1.4'
+ gem 'simplecov'
end
group :test do
- gem "timecop"
- gem "activesupport", "~> 3.2.16"
- gem "shoulda"
- gem "mhennemeyer-output_catcher"
- gem "rr", ">= 1.0.4"
- gem "mocha"
- gem "redgreen"
- gem "test-construct"
- gem 'coveralls', :require => false
+ gem 'timecop'
+ gem 'activesupport', '~> 3.2.16'
+ gem 'shoulda', require: false
+ gem 'mhennemeyer-output_catcher'
+ gem 'mocha', require: false
+ gem 'redgreen'
+ gem 'test_construct'
+ gem 'coveralls', require: false
+ gem 'test-unit-rr', require: false
end
# yo dawg, i herd u lieked jeweler
group :xzibit do
# steal a page from bundler's gemspec:
# add this directory as jeweler, in order to bundle exec jeweler and use the current working directory
- gem 'jeweler', :path => '.'
+ gem 'jeweler', path: '.'
end
-
group :debug do
+ gem 'test-unit'
end
diff --git a/Gemfile.lock b/Gemfile.lock
new file mode 100644
index 0000000..5ec097b
--- /dev/null
+++ b/Gemfile.lock
@@ -0,0 +1,152 @@
+PATH
+ remote: .
+ specs:
+ jeweler (2.3.9)
+ builder
+ bundler
+ git (>= 1.2.5)
+ github_api (~> 0.16.0)
+ highline (>= 1.6.15)
+ nokogiri (>= 1.5.10)
+ psych
+ rake
+ rdoc
+ semver2
+
+GEM
+ remote: https://rubygems.org/
+ specs:
+ activesupport (3.2.22.5)
+ i18n (~> 0.6, >= 0.6.4)
+ multi_json (~> 1.0)
+ addressable (2.4.0)
+ backports (3.11.0)
+ bluecloth (2.2.0)
+ builder (3.2.3)
+ concurrent-ruby (1.0.5)
+ coveralls (0.8.21)
+ json (>= 1.8, < 3)
+ simplecov (~> 0.14.1)
+ term-ansicolor (~> 1.3)
+ thor (~> 0.19.4)
+ tins (~> 1.6)
+ cucumber (3.1.0)
+ builder (>= 2.1.2)
+ cucumber-core (~> 3.1.0)
+ cucumber-expressions (~> 5.0.4)
+ cucumber-wire (~> 0.0.1)
+ diff-lcs (~> 1.3)
+ gherkin (~> 5.0)
+ multi_json (>= 1.7.5, < 2.0)
+ multi_test (>= 0.1.2)
+ cucumber-core (3.1.0)
+ backports (>= 3.8.0)
+ cucumber-tag_expressions (~> 1.1.0)
+ gherkin (>= 5.0.0)
+ cucumber-expressions (5.0.7)
+ cucumber-tag_expressions (1.1.1)
+ cucumber-wire (0.0.1)
+ descendants_tracker (0.0.4)
+ thread_safe (~> 0.3, >= 0.3.1)
+ diff-lcs (1.3)
+ docile (1.1.5)
+ faraday (0.9.2)
+ multipart-post (>= 1.2, < 3)
+ gherkin (5.0.0)
+ git (1.3.0)
+ github_api (0.16.0)
+ addressable (~> 2.4.0)
+ descendants_tracker (~> 0.0.4)
+ faraday (~> 0.8, < 0.10)
+ hashie (>= 3.4)
+ mime-types (>= 1.16, < 3.0)
+ oauth2 (~> 1.0)
+ hashie (3.5.7)
+ highline (1.7.10)
+ i18n (0.9.1)
+ concurrent-ruby (~> 1.0)
+ json (2.1.0)
+ jwt (1.5.6)
+ metaclass (0.0.4)
+ mhennemeyer-output_catcher (1.0.1)
+ mime-types (2.99.3)
+ mini_portile2 (2.3.0)
+ mocha (1.3.0)
+ metaclass (~> 0.0.1)
+ multi_json (1.13.1)
+ multi_test (0.1.2)
+ multi_xml (0.6.0)
+ multipart-post (2.0.0)
+ nokogiri (1.8.1)
+ mini_portile2 (~> 2.3.0)
+ oauth2 (1.4.0)
+ faraday (>= 0.8, < 0.13)
+ jwt (~> 1.0)
+ multi_json (~> 1.3)
+ multi_xml (~> 0.5)
+ rack (>= 1.2, < 3)
+ power_assert (1.1.1)
+ psych (3.0.2)
+ rack (2.0.3)
+ rake (12.3.0)
+ rdoc (6.0.1)
+ redgreen (1.2.2)
+ rr (1.2.1)
+ semver2 (3.4.2)
+ shoulda (3.5.0)
+ shoulda-context (~> 1.0, >= 1.0.1)
+ shoulda-matchers (>= 1.4.1, < 3.0)
+ shoulda-context (1.2.2)
+ shoulda-matchers (2.8.0)
+ activesupport (>= 3.0.0)
+ simplecov (0.14.1)
+ docile (~> 1.1.0)
+ json (>= 1.8, < 3)
+ simplecov-html (~> 0.10.0)
+ simplecov-html (0.10.2)
+ term-ansicolor (1.6.0)
+ tins (~> 1.0)
+ test-unit (3.2.7)
+ power_assert
+ test-unit-rr (1.0.5)
+ rr (>= 1.1.1)
+ test-unit (>= 2.5.2)
+ test_construct (2.0.1)
+ thor (0.19.4)
+ thread_safe (0.3.6)
+ timecop (0.9.1)
+ tins (1.16.3)
+ yard (0.9.12)
+
+PLATFORMS
+ ruby
+
+DEPENDENCIES
+ activesupport (~> 3.2.16)
+ bluecloth
+ builder
+ bundler
+ coveralls
+ cucumber (>= 1.1.4)
+ git (>= 1.2.5)
+ github_api (~> 0.16.0)
+ highline (>= 1.6.15)
+ jeweler!
+ mhennemeyer-output_catcher
+ mocha
+ nokogiri (>= 1.5.10)
+ psych
+ rake
+ rdoc
+ redgreen
+ semver2
+ shoulda
+ simplecov
+ test-unit
+ test-unit-rr
+ test_construct
+ timecop
+ yard (>= 0.8.5)
+
+BUNDLED WITH
+ 1.14.6
diff --git a/README.markdown b/README.markdown
index 4886961..0c230db 100644
--- a/README.markdown
+++ b/README.markdown
@@ -1,13 +1,23 @@
+*Jeweler maintenance has now shifted to Fred Mitchell*. I am now maintaining both Jeweler and its fork, juwelier. I will keep Jeweler at least functional with the latest Ruby releases, but put new features in Juwelier. Your input on this is more than welcome.
+
# Jeweler: Craft the perfect RubyGem
+[![Join the chat at https://gitter.im/technicalpickles/jeweler](https://badges.gitter.im/technicalpickles/jeweler.svg)](https://gitter.im/technicalpickles/jeweler?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
+
Jeweler provides the noble ruby developer with two primary features:
* a library for managing and releasing RubyGem projects
* a scaffold generator for starting new RubyGem projects
+PLEASE NOTE that if you are starting afresh, please use the successor [Juwelier](https://github.com/flajann2/juwelier)
+I (Fred Mitchell, flajann2) will be maintaining both Jeweler and Juwelier, but will be adding new features to
+Juwelier, and eventually "merge" this one into Juwelier after some namespace issues
+are dealt with.
+
[![Build Status](https://travis-ci.org/technicalpickles/jeweler.png)](https://travis-ci.org/technicalpickles/jeweler)
[![Coverage Status](https://coveralls.io/repos/technicalpickles/jeweler/badge.png)](https://coveralls.io/r/technicalpickles/jeweler)
[![Dependency Status](https://www.versioneye.com/ruby/jeweler/2.0.0/badge.png)](https://www.versioneye.com/ruby/jeweler/2.0.0)
+[![Code Climate](https://codeclimate.com/github/technicalpickles/jeweler/badges/gpa.svg)](https://codeclimate.com/github/technicalpickles/jeweler)
## Hello, world
@@ -108,7 +118,7 @@ You can customize your gem by updating your `Rakefile`. With a newly generated p
require 'jeweler'
Jeweler::Tasks.new do |gem|
- # gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
+ # gem is a Gem::Specification... see http://guides.rubygems.org/specification-reference/ for more options
gem.name = "whatwhatwhat"
gem.summary = %Q{TODO: one-line summary of your gem}
gem.description = %Q{TODO: longer description of your gem}
@@ -118,13 +128,13 @@ You can customize your gem by updating your `Rakefile`. With a newly generated p
end
Jeweler::RubygemsDotOrgTasks.new
-It's crucial to understand the `gem` object is just a Gem::Specification. You can read up about it at [docs.rubygems.org/read/chapter/20](http://docs.rubygems.org/read/chapter/20). This is the most basic way of specifying a gem, Jeweler-managed or not. Jeweler just exposes this to you, in addition to providing some reasonable defaults, which we'll explore now.
+It's crucial to understand the `gem` object is just a Gem::Specification. You can read up about it at [guides.rubygems.org/specification-reference](http://guides.rubygems.org/specification-reference/). This is the most basic way of specifying a gem, Jeweler-managed or not. Jeweler just exposes this to you, in addition to providing some reasonable defaults, which we'll explore now.
### Project information
gem.name = "whatwhatwhat"
-Every gem has a name. Among other things, the gem name is how you are able to `gem install` it. [Reference](http://docs.rubygems.org/read/chapter/20#name)
+Every gem has a name. Among other things, the gem name is how you are able to `gem install` it. [Reference](http://guides.rubygems.org/specification-reference/#name)
gem.summary = %Q{TODO: one-line summary of your gem}
@@ -161,7 +171,7 @@ If that's not enough, you can just set `gem.files` outright
### Dependencies
-Dependencies let you define other gems that your gem needs to function. `gem install your-gem` will install your-gem's dependencies along with it, and when you use your-gem in an application, the dependencies will be made available. Use `gem.add_dependency` to register them. [Reference](http://docs.rubygems.org/read/chapter/20#dependencies)
+Dependencies let you define other gems that your gem needs to function. `gem install your-gem` will install your-gem's dependencies along with it, and when you use your-gem in an application, the dependencies will be made available. Use `gem.add_dependency` to register them. [Reference](http://guides.rubygems.org/specification-reference/#add_development_dependency)
gem.add_dependency 'nokogiri'
@@ -231,4 +241,5 @@ That means you can define your own namespaces, tasks, or use third party Rake li
## Copyright
-Copyright (c) 2008-2010 Josh Nichols. See LICENSE for details.
+Copyright (c) 2008-2010 Josh Nichols.
+Copyright (c) 2016 Fred Mitchell. See LICENSE for details.
diff --git a/README.org b/README.org
new file mode 100644
index 0000000..db7eb2b
--- /dev/null
+++ b/README.org
@@ -0,0 +1,374 @@
+/Jeweler maintenance has now shifted to Fred Mitchell/. I am now
+maintaining both Jeweler and its fork, juwelier. I will keep Jeweler at
+least functional with the latest Ruby releases, but put new features in
+Juwelier. Your input on this is more than welcome.
+
+* Jeweler: Craft the perfect RubyGem
+
+[[https://gitter.im/technicalpickles/jeweler?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge][[[https://badges.gitter.im/technicalpickles/jeweler.svg]]]]
+
+Jeweler provides the noble ruby developer with two primary features:
+
+- a library for managing and releasing RubyGem projects
+- a scaffold generator for starting new RubyGem projects
+
+PLEASE NOTE that if you are starting afresh, please use the successor
+[[https://github.com/flajann2/juwelier][Juwelier]] I (Fred Mitchell, flajann2) will be maintaining both Jeweler and Juwelier, but will be
+adding new features to Juwelier, and eventually "merge" this one into
+Juwelier after some namespace issues are dealt with.
+
+[[https://travis-ci.org/technicalpickles/jeweler][[[https://travis-ci.org/technicalpickles/jeweler.png]]]]
+[[https://coveralls.io/r/technicalpickles/jeweler][[[https://coveralls.io/repos/technicalpickles/jeweler/badge.png]]]]
+[[https://www.versioneye.com/ruby/jeweler/2.0.0][[[https://www.versioneye.com/ruby/jeweler/2.0.0/badge.png]]]]
+[[https://codeclimate.com/github/technicalpickles/jeweler][[[https://codeclimate.com/github/technicalpickles/jeweler/badges/gpa.svg]]]]
+
+** Hello, world
+
+Use RubyGems to install the heck out of jeweler to get started:
+
+#+BEGIN_EXAMPLE
+ $ gem install jeweler
+#+END_EXAMPLE
+
+With jeweler installed, you can use the =jeweler= command to generate a
+new project. For the most basic use, just give it a name:
+
+#+BEGIN_EXAMPLE
+ $ jeweler hello-gem
+#+END_EXAMPLE
+
+This requires some Git configuration (like name, email, GitHub account,
+etc), but =jeweler= will prompt along the way.
+
+Your new =hello-gem= gem is ready in the =hello-gem= directory. Take a
+peek, and you'll see several files and directories
+
+- =Rakefile= setup for jeweler, running tests, generating
+ documentation, and releasing to
+ [[http://rubygems.org/][rubygems.org]]
+- =README.rdoc= with contribution guidelines and copyright info
+ crediting you
+- =LICENSE= with the MIT licensed crediting you
+- =Gemfile= with development dependencies filled in
+- =lib/hello-gem.rb= waiting for you to code
+- =test/= containing a (failing) shoulda test suite
+ [[http://github.com/thoughtbot/shoulda][shoulda]]
+
+*** More =jeweler= options
+
+The =jeweler= command supports a lot of options. Mostly, they are for
+generating baked in support for this test framework, or that.
+
+Check out =jeweler --help= for the most up to date options.
+
+** Hello, rake tasks
+
+Beyond just editing source code, you'll be interacting with your gem
+using =rake= a lot. To see all the tasks available with a brief
+description, you can run:
+
+#+BEGIN_EXAMPLE
+ $ rake -T
+#+END_EXAMPLE
+
+You'll need a version before you can start installing your gem locally.
+The easiest way is with the =version:write= Rake task. Let's imagine you
+start with 0.1.0
+
+#+BEGIN_EXAMPLE
+ $ rake version:write MAJOR=0 MINOR=1 PATCH=0
+#+END_EXAMPLE
+
+You can now go forth and develop, now that there's an initial version
+defined. Eventually, you should install and test the gem:
+
+#+BEGIN_EXAMPLE
+ $ rake install
+#+END_EXAMPLE
+
+The =install= rake task builds the gem and =gem install=s it. You're all
+set if you're using [[http://rvm.beginrescueend.com/][RVM]], but you may
+need to run it with sudo if you have a system-installed ruby:
+
+#+BEGIN_EXAMPLE
+ $ sudo rake install
+#+END_EXAMPLE
+
+*** Releasing
+
+At last, it's time to [[http://shipitsquirrel.github.com/][ship it]]!
+Make sure you have everything committed and pushed, then go wild:
+
+#+BEGIN_EXAMPLE
+ $ rake release
+#+END_EXAMPLE
+
+This will automatically:
+
+- Generate =hello-gem.gemspec= and commit it
+- Use =git= to tag =v0.1.0= and push it
+- Build =hello-gem-0.1.0.gem= and push it to
+ [[http://rubygems.org/gems/][rubygems.org]]
+
+=rake release= accepts REMOTE(default: =origin=), LOCAL\_BRANCH(default:
+=master=), REMOTE\_BRANCH(default: =master=) and BRANCH(default:
+master)as options.
+
+#+BEGIN_EXAMPLE
+ $ rake release REMOTE=upstream LOCAL_BRANCH=critical-security-fix REMOTE_BRANCH=v3
+#+END_EXAMPLE
+
+This will tag and push the commits on your local branch named
+=critical-security-fix= to branch named =v3= in remote named =upstream=
+(if you have commit rights on =upstream=) and release the gem.
+
+#+BEGIN_EXAMPLE
+ $ rake release BRANCH=v3
+#+END_EXAMPLE
+
+If both remote and local branches are the same, use =BRANCH= option to
+simplify. This will tag and push the commits on your local branch named
+=v3= to branch named =v3= in remote named =origin= (if you have commit
+rights on =origin=) and release the gem.
+
+*** Version bumping
+
+It feels good to release code. Do it, do it often. But before that, bump
+the version. Then release it. There's a few ways to update the version:
+
+#+BEGIN_EXAMPLE
+ # version:write like before
+ $ rake version:write MAJOR=0 MINOR=3 PATCH=0
+
+ # bump just major, ie 0.1.0 -> 1.0.0
+ $ rake version:bump:major
+
+ # bump just minor, ie 0.1.0 -> 0.2.0
+ $ rake version:bump:minor
+
+ # bump just patch, ie 0.1.0 -> 0.1.1
+ $ rake version:bump:patch
+#+END_EXAMPLE
+
+Then it's the same =release= we used before:
+
+#+BEGIN_EXAMPLE
+ $ rake release
+#+END_EXAMPLE
+
+** Customizing your gem
+
+If you've been following along so far, your gem is just a blank slate.
+You're going to need to make it colorful and full of metadata.
+
+You can customize your gem by updating your =Rakefile=. With a newly
+generated project, it will look something like this:
+
+#+BEGIN_EXAMPLE
+ require 'jeweler'
+ Jeweler::Tasks.new do |gem|
+ # gem is a Gem::Specification... see http://guides.rubygems.org/specification-reference/ for more options
+ gem.name = "whatwhatwhat"
+ gem.summary = %Q{TODO: one-line summary of your gem}
+ gem.description = %Q{TODO: longer description of your gem}
+ gem.email = "josh@technicalpickles.com"
+ gem.homepage = "http://github.com/technicalpickles/whatwhatwhat"
+ gem.authors = ["Joshua Nichols"]
+ end
+ Jeweler::RubygemsDotOrgTasks.new
+#+END_EXAMPLE
+
+It's crucial to understand the =gem= object is just a
+Gem::Specification. You can read up about it at
+[[http://guides.rubygems.org/specification-reference/][guides.rubygems.org/specification-reference]].
+This is the most basic way of specifying a gem, Jeweler-managed or not.
+Jeweler just exposes this to you, in addition to providing some
+reasonable defaults, which we'll explore now.
+
+*** Project information
+
+#+BEGIN_EXAMPLE
+ gem.name = "whatwhatwhat"
+#+END_EXAMPLE
+
+Every gem has a name. Among other things, the gem name is how you are
+able to =gem install= it.
+[[http://guides.rubygems.org/specification-reference/#name][Reference]]
+
+#+BEGIN_EXAMPLE
+ gem.summary = %Q{TODO: one-line summary of your gem}
+#+END_EXAMPLE
+
+This is a one line summary of your gem. This is displayed, for example,
+when you use =gem list --details= or view it on
+[[http://rubygems.org/gems/][rubygems.org]].
+
+#+BEGIN_EXAMPLE
+ gem.description = %Q{TODO: longer description of your gem}
+#+END_EXAMPLE
+
+Description is a longer description. Scholars ascertain that knowledge
+of where the description is used was lost centuries ago.
+
+#+BEGIN_EXAMPLE
+ gem.email = "josh@technicalpickles.com"
+#+END_EXAMPLE
+
+This should be a way to get a hold of you regarding the gem.
+
+#+BEGIN_EXAMPLE
+ gem.homepage = "http://github.com/technicalpickles/whatwhatwhat"
+#+END_EXAMPLE
+
+The homepage should have more information about your gem. The jeweler
+generator guesses this based on the assumption your code lives on
+[[http://github.com/][GitHub]], using your Git configuration to find
+your GitHub username. This is displayed by =gem list --details= and on
+rubygems.org.
+
+#+BEGIN_EXAMPLE
+ gem.authors = ["Joshua Nichols"]
+#+END_EXAMPLE
+
+Hey, this is you, the author (or me in this case). The =jeweler=
+generator also guesses this from your Git configuration. This is
+displayed by =gem list --details= and on rubygems.org.
+
+*** Files
+
+The quickest way to add more files is to =git add= them. Jeweler uses
+your Git repository to populate your gem's files by including added and
+committed and excluding =.gitignore=d. In most cases, this is reasonable
+enough.
+
+If you need to tweak the files, that's cool. Jeweler populates
+=gem.files= as a =Rake::FileList=. It's like a normal array, except you
+can =include= and =exclude= file globs:
+
+#+BEGIN_EXAMPLE
+ gem.files.exclude 'tmp' # exclude temporary directory
+ gem.files.include 'lib/foo/bar.rb' # explicitly include lib/foo/bar.rb
+#+END_EXAMPLE
+
+If that's not enough, you can just set =gem.files= outright
+
+#+BEGIN_EXAMPLE
+ gem.files = Dir.glob('lib/**/*.rb')
+#+END_EXAMPLE
+
+*** Dependencies
+
+Dependencies let you define other gems that your gem needs to function.
+=gem install your-gem= will install your-gem's dependencies along with
+it, and when you use your-gem in an application, the dependencies will
+be made available. Use =gem.add_dependency= to register them.
+[[http://guides.rubygems.org/specification-reference/#add_development_dependency][Reference]]
+
+#+BEGIN_EXAMPLE
+ gem.add_dependency 'nokogiri'
+#+END_EXAMPLE
+
+This will ensure a version of =nokogiri= is installed, but it doesn't
+require anything more than that. You can provide extra args to be more
+specific:
+
+#+BEGIN_EXAMPLE
+ gem.add_dependency 'nokogiri', '= 1.2.1' # exactly version 1.2.1
+ gem.add_dependency 'nokogiri', '>= 1.2.1' # greater than or equal to 1.2.1, ie, 1.2.1, 1.2.2, 1.3.0, 2.0.0, etc
+ gem.add_dependency 'nokogiri', '>= 1.2.1', '< 1.3.0' # greater than or equal to 1.2.1, but less than 1.3.0
+ gem.add_dependency 'nokogiri', '~> 1.2.1' # same thing, but more concise
+#+END_EXAMPLE
+
+When specifying which version is required, there's a bit of the
+condunrum. You want to allow the most versions possible, but you want to
+be sure they are compatible. Using =>= 1.2.1= is fine most of the time,
+except until the point that 2.0.0 comes out and totally breaks backwards
+the API. That's when it's good to use =~> 1.2.1=, which requires any
+version in the =1.2= family, starting with =1.2.1=.
+
+*** Executables
+
+Executables let your gem install shell commands. Just put any executable
+scripts in the =bin/= directory, make sure they are added using =git=,
+and Jeweler will take care of the rest.
+
+When you need more finely grained control over it, you can set it
+yourself:
+
+#+BEGIN_EXAMPLE
+ gem.executables = ['foo'] # note, it's the file name relative to `bin/`, not the project root
+#+END_EXAMPLE
+
+*** Versioning
+
+We discussed earlier how to bump the version. The rake tasks are really
+just convience methods for manipulating the =VERSION= file. It just
+contains a version string, like =1.2.3=.
+
+=VERSION= is a convention used by Jeweler, and is used to populate
+=gem.version=. You can actually set this yourself, and Jeweler won't try
+to override it:
+
+#+BEGIN_EXAMPLE
+ gem.version = '1.2.3'
+#+END_EXAMPLE
+
+A common pattern is to have this in a version constant in your library.
+This is convenient, because users of the library can query the version
+they are using at runtime.
+
+#+BEGIN_EXAMPLE
+ # in lib/foo/version.rb
+ class Foo
+ module Version
+ MAJOR = 1
+ MINOR = 2
+ PATCH = 3
+ BUILD = 'pre3'
+
+ STRING = [MAJOR, MINOR, PATCH, BUILD].compact.join('.')
+ end
+ end
+
+ # in Rakefile
+ require 'jeweler'
+ require './lib/foo/version.rb'
+ Jeweler::Tasks.new do |gem|
+ # snip
+ gem.version = Foo::Version::STRING
+ end
+#+END_EXAMPLE
+
+*** Rake tasks
+
+Jeweler lives inside of Rake. As a result, they are dear friends. But,
+that friendship doesn't interfere with typical Rake operations.
+
+That means you can define your own namespaces, tasks, or use third party
+Rake libraries without cause for concern.
+
+** Contributing to Jeweler
+
+- Check out the latest master to make sure the feature hasn't been
+ implemented or the bug hasn't been fixed yet
+- Ask on the [[http://groups.google.com/group/jeweler-rb][mailing
+ list]] for feedback on your proposal, to see if somebody else has
+ done it.
+- Check out the
+ [[http://github.com/technicalpickles/jeweler/issues][issue tracker]]
+ to make sure someone already hasn't requested it and/or contributed
+ it
+- Fork the project
+- Start a feature/bugfix branch
+- Commit and push until you are happy with your contribution
+- Make sure to add tests for the feature/bugfix. This is important so I
+ don't break it in a future version unintentionally.
+- Please try not to mess with the Rakefile, version, or history. If you
+ want to have your own version, or is otherwise necessary, that is
+ fine, but please isolate it to its own commit so I can cherry-pick
+ around it.
+
+** Copyright
+
+Copyright (c) 2008-2010 Josh Nichols. Copyright (c) 2016 Fred Mitchell.
+See LICENSE for details.
diff --git a/Rakefile b/Rakefile
index 5f26ffe..62bdb42 100644
--- a/Rakefile
+++ b/Rakefile
@@ -2,12 +2,17 @@
require 'rubygems'
require 'bundler'
+require 'semver'
+
+def s_version
+ SemVer.find.format "%M.%m.%p%s"
+end
begin
Bundler.setup(:default, :xzibit, :development)
rescue Bundler::BundlerError => e
$stderr.puts e.message
- $stderr.puts "Run `bundle install` to install missing gems"
+ $stderr.puts 'Run `bundle install` to install missing gems'
exit e.status_code
end
@@ -15,17 +20,16 @@ require 'rake'
require 'jeweler'
Jeweler::Tasks.new do |gem|
- gem.name = "jeweler"
- gem.version = Jeweler::Version::STRING
- gem.homepage = "http://github.com/technicalpickles/jeweler"
- gem.summary = "Opinionated tool for creating and managing RubyGem projects"
- gem.description = "Simple and opinionated helper for creating Rubygem projects on GitHub"
- gem.license = "MIT"
- gem.authors = ["Josh Nichols", "Yusuke Murata"]
- gem.email = ["josh@technicalpickles.com", "info@muratayusuke.com"]
+ gem.name = 'jeweler'
+ gem.version = s_version
+ gem.homepage = 'http://github.com/technicalpickles/jeweler'
+ gem.summary = 'Opinionated tool for creating and managing RubyGem projects'
+ gem.description = 'Simple and opinionated helper for creating Rubygem projects on GitHub'
+ gem.required_ruby_version = '>= 2.2.0'
+ gem.license = 'MIT'
+ gem.authors = ["Fred Mitchell", "Josh Nichols", "Yusuke Murata"]
+ gem.email = ["fred.mitchell@gmx.de", "fred.mitchell@gmx.com", "info@muratayusuke.com"]
gem.files.include %w(lib/jeweler/templates/.document lib/jeweler/templates/.gitignore)
-
- # dependencies defined in Gemfile
end
Jeweler::RubygemsDotOrgTasks.new
@@ -44,7 +48,7 @@ namespace :test do
task :gemspec_dup do
gemspec = Rake.application.jeweler.gemspec
dupped_gemspec = gemspec.dup
- cloned_gemspec = gemspec.clone
+ _cloned_gemspec = gemspec.clone
puts gemspec.to_ruby
puts dupped_gemspec.to_ruby
end
@@ -52,22 +56,21 @@ end
require 'yard'
YARD::Rake::YardocTask.new do |t|
- t.files = FileList['lib/**/*.rb'].exclude('lib/jeweler/templates/**/*.rb')
+ t.files = FileList['lib/**/*.rb'].exclude('lib/jeweler/templates/**/*.rb')
end
require 'cucumber/rake/task'
Cucumber::Rake::Task.new(:features) do |features|
- features.cucumber_opts = "features --format progress"
+ features.cucumber_opts = 'features --format progress'
end
namespace :features do
Cucumber::Rake::Task.new(:pretty) do |features|
- features.cucumber_opts = "features --format progress"
+ features.cucumber_opts = 'features --format progress'
end
end
-if ENV["RUN_CODE_RUN"] == "true"
- task :default => [:test, :features]
+if ENV['RUN_CODE_RUN'] == 'true'
+ task default: [:test, :features]
else
- task :default => :test
+ task default: :test
end
-
diff --git a/debian/changelog b/debian/changelog
index 60efe51..a565b1d 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-ruby-jeweler (2.0.1-4) UNRELEASED; urgency=medium
+ruby-jeweler (2.3.9-1) UNRELEASED; urgency=medium
[ Utkarsh Gupta ]
* Add salsa-ci.yml
@@ -21,8 +21,9 @@ ruby-jeweler (2.0.1-4) UNRELEASED; urgency=medium
* Update lintian override info format in d/ruby-jeweler.lintian-overrides on
line 2.
* Bump debhelper from old 12 to 13.
+ * New upstream release.
- -- Utkarsh Gupta <guptautkarsh2102@gmail.com> Tue, 13 Aug 2019 05:48:52 +0530
+ -- Utkarsh Gupta <guptautkarsh2102@gmail.com> Fri, 06 Jan 2023 11:39:31 -0000
ruby-jeweler (2.0.1-3) unstable; urgency=medium
diff --git a/features/generator/test.feature b/features/generator/test.feature
index 48dc27a..01b39f3 100644
--- a/features/generator/test.feature
+++ b/features/generator/test.feature
@@ -13,7 +13,7 @@ Feature: generated test or spec
Given a working directory
And I have configured git sanely
When I generate a minitest project named 'the-perfect-gem' that is 'zomg, so good'
- Then 'test/test_the-perfect-gem.rb' should define 'TestThePerfectGem' as a subclass of 'MiniTest::Unit::TestCase'
+ Then 'test/test_the-perfect-gem.rb' should define 'TestThePerfectGem' as a subclass of 'MiniTest::Test'
Scenario: rspec
Given a working directory
@@ -51,4 +51,4 @@ Feature: generated test or spec
Given a working directory
And I have configured git sanely
When I generate a shindo project named 'the-perfect-gem' that is 'zomg, so good'
- Then 'tests/the-perfect-gem_tests.rb' should have tests for 'ThePerfectGem'
\ No newline at end of file
+ Then 'tests/the-perfect-gem_tests.rb' should have tests for 'ThePerfectGem'
diff --git a/features/step_definitions/debug_steps.rb b/features/step_definitions/debug_steps.rb
index 514bc5c..a89da4b 100644
--- a/features/step_definitions/debug_steps.rb
+++ b/features/step_definitions/debug_steps.rb
@@ -3,4 +3,3 @@ Then /^I debug$/ do
breakpoint
0
end
-
diff --git a/features/step_definitions/filesystem_steps.rb b/features/step_definitions/filesystem_steps.rb
index 5d1862e..50d9d4b 100644
--- a/features/step_definitions/filesystem_steps.rb
+++ b/features/step_definitions/filesystem_steps.rb
@@ -21,7 +21,7 @@ Given /^I use the jeweler command to generate the "([^"]+)" project in the worki
end
Given /^"([^"]+)" does not exist$/ do |file|
- assert ! File.exists?(File.join(@working_dir, file))
+ assert !File.exist?(File.join(@working_dir, file))
end
When /^I run "([^"]+)" in "([^"]+)"$/ do |command, directory|
@@ -33,7 +33,7 @@ When /^I run "([^"]+)" in "([^"]+)"$/ do |command, directory|
assert File.directory?(full_path), "#{full_path} is not a directory"
@stdout = `cd #{full_path} && #{command}`
- @exited_cleanly = $?.exited?
+ @exited_cleanly = $CHILD_STATUS.exited?
end
Then /^the updated version, (.*), is displayed$/ do |version|
@@ -67,4 +67,3 @@ Given /^"VERSION" contains "([^\"]*)"$/ do |expected|
version = File.read(File.join(@working_dir, @name, 'VERSION')).chomp
assert_equal expected, version
end
-
diff --git a/features/step_definitions/generator_steps.rb b/features/step_definitions/generator_steps.rb
index e0e01dd..9f61a46 100644
--- a/features/step_definitions/generator_steps.rb
+++ b/features/step_definitions/generator_steps.rb
@@ -18,7 +18,6 @@ Given /^I do not want bundler$/ do
@use_bundler = false
end
-
Given /^I want bundler$/ do
@use_bundler = true
end
@@ -40,14 +39,13 @@ And /^I want rubyforge setup$/ do
end
Given /^I want to use yard instead of rdoc$/ do
- @documentation_framework = "yard"
+ @documentation_framework = 'yard'
end
Given /^I want to use rdoc instead of yard$/ do
- @documentation_framework = "rdoc"
+ @documentation_framework = 'rdoc'
end
-
Given /^I intend to test with (\w+)$/ do |testing_framework|
@testing_framework = testing_framework.to_sym
end
@@ -58,11 +56,10 @@ Given /^I have configured git sanely$/ do
@github_user = 'technicalpickles'
require 'git'
- Git.stubs(:global_config).
- returns({
- 'user.name' => @user_name,
- 'user.email' => @user_email,
- 'github.user' => @github_user})
+ Git.stubs(:global_config)
+ .returns('user.name' => @user_name,
+ 'user.email' => @user_email,
+ 'github.user' => @github_user)
end
Given /^I set JEWELER_OPTS env variable to "(.*)"$/ do |val|
@@ -79,26 +76,21 @@ When /^I generate a (.*)project named '((?:\w|-|_)+)' that is '([^']*)' and desc
@description = description
testing_framework = testing_framework.squeeze.strip
- unless testing_framework.blank?
- @testing_framework = testing_framework.to_sym
- end
+ @testing_framework = testing_framework.to_sym unless testing_framework.blank?
-
- arguments = [ '--summary', @summary,
+ arguments = ['--summary', @summary,
'--description', @description,
- @use_cucumber ? '--cucumber' : nil,
- @testing_framework ? "--#{@testing_framework}" : nil,
- @use_rubyforge ? '--rubyforge' : nil,
- @use_roodi ? '--roodi' : nil,
- @use_reek ? '--reek' : nil,
- case @use_bundler
- when true then '--bundler'
- when false then '--no-bundler'
- else nil
- end,
- @documentation_framework ? "--#{@documentation_framework}" : nil,
- "#{@working_dir}/#{@name}"].compact
-
+ @use_cucumber ? '--cucumber' : nil,
+ @testing_framework ? "--#{@testing_framework}" : nil,
+ @use_rubyforge ? '--rubyforge' : nil,
+ @use_roodi ? '--roodi' : nil,
+ @use_reek ? '--reek' : nil,
+ case @use_bundler
+ when true then '--bundler'
+ when false then '--no-bundler'
+ end,
+ @documentation_framework ? "--#{@documentation_framework}" : nil,
+ "#{@working_dir}/#{@name}"].compact
@stdout = OutputCatcher.catch_out do
Jeweler::Generator::Application.run! *arguments
@@ -110,28 +102,27 @@ end
Then /^a directory named '(.*)' is created$/ do |directory|
directory = File.join(@working_dir, directory)
- assert File.exists?(directory), "#{directory} did not exist"
+ assert File.exist?(directory), "#{directory} did not exist"
assert File.directory?(directory), "#{directory} is not a directory"
end
-Then "cucumber directories are created" do
+Then 'cucumber directories are created' do
step "a directory named 'the-perfect-gem/features' is created"
step "a directory named 'the-perfect-gem/features/support' is created"
step "a directory named 'the-perfect-gem/features/step_definitions' is created"
end
-
Then /^a file named '(.*)' is created$/ do |file|
file = File.join(@working_dir, file)
- assert File.exists?(file), "#{file} expected to exist, but did not"
+ assert File.exist?(file), "#{file} expected to exist, but did not"
assert File.file?(file), "#{file} expected to be a file, but is not"
end
Then /^a file named '(.*)' is not created$/ do |file|
file = File.join(@working_dir, file)
- assert ! File.exists?(file), "#{file} expected to not exist, but did"
+ assert !File.exist?(file), "#{file} expected to not exist, but did"
end
Then /^a sane '.gitignore' is created$/ do
@@ -153,21 +144,21 @@ end
Then /^Rakefile has '(.*)' for the (.*) (.*)$/ do |value, task_class, field|
@rakefile_content ||= File.read(File.join(@working_dir, @name, 'Rakefile'))
block_variable, task_block = yank_task_info(@rakefile_content, task_class)
- #raise "Found in #{task_class}: #{block_variable.inspect}: #{task_block.inspect}"
+ # raise "Found in #{task_class}: #{block_variable.inspect}: #{task_block.inspect}"
assert_match /#{block_variable}\.#{field} = (%Q\{|"|')#{Regexp.escape(value)}(\}|"|')/, task_block
end
Then /^Rakefile adds '(.*)' as a development dependency to Jeweler::Tasks$/ do |dependency|
@rakefile_content ||= File.read(File.join(@working_dir, @name, 'Rakefile'))
- block_variable, task_block = yank_task_info(@rakefile_content, "Jeweler::Tasks")
+ block_variable, task_block = yank_task_info(@rakefile_content, 'Jeweler::Tasks')
assert_match /#{block_variable}\.add_development_dependency "#{dependency}"/, task_block
end
Then /^Rakefile does not add '(.*)' as a development dependency to Jeweler::Tasks$/ do |dependency|
@rakefile_content ||= File.read(File.join(@working_dir, @name, 'Rakefile'))
- block_variable, task_block = yank_task_info(@rakefile_content, "Jeweler::Tasks")
+ block_variable, task_block = yank_task_info(@rakefile_content, 'Jeweler::Tasks')
assert_no_match /#{block_variable}\.add_development_dependency "#{dependency}"/, task_block
end
@@ -186,7 +177,6 @@ Then /^Rakefile has '(.*)' in the Rcov::RcovTask rcov_opts$/ do |rcov_opts|
assert_match "#{block_variable}.rcov_opts << '#{rcov_opts}'", @rakefile_content
end
-
Then /^'(.*)' contains '(.*)'$/ do |file, expected_string|
contents = File.read(File.join(@working_dir, @name, file))
assert_match expected_string, contents
@@ -202,7 +192,6 @@ Then /^'(.*)' mentions copyright belonging to me in the current year$/ do |file|
step "'#{file}' mentions copyright belonging to me in #{current_year}"
end
-
Then /^LICENSE\.txt credits '(.*)'$/ do |copyright_holder|
step "a file named 'the-perfect-gem/LICENSE.txt' is created"
@license_content ||= File.read(File.join(@working_dir, @name, 'LICENSE.txt'))
@@ -214,36 +203,34 @@ Given /^it is the year (\d+)$/ do |year|
Timecop.travel(time)
end
-
Then /^LICENSE\.txt has a copyright in the year (\d+)$/ do |year|
step "a file named 'the-perfect-gem/LICENSE.txt' is created"
@license_content ||= File.read(File.join(@working_dir, @name, 'LICENSE.txt'))
assert_match year, @license_content
end
-
Then /^'(.*)' should define '(.*)' as a subclass of '(.*)'$/ do |file, class_name, superclass_name|
- @test_content = File.read((File.join(@working_dir, @name, file)))
+ @test_content = File.read(File.join(@working_dir, @name, file))
assert_match "class #{class_name} < #{superclass_name}", @test_content
end
Then /^'(.*)' should describe '(.*)'$/ do |file, describe_name|
- @spec_content ||= File.read((File.join(@working_dir, @name, file)))
+ @spec_content ||= File.read(File.join(@working_dir, @name, file))
- assert_match %Q{describe "#{describe_name}" do}, @spec_content
+ assert_match %(describe "#{describe_name}" do), @spec_content
end
Then /^'(.*)' should contextualize '(.*)'$/ do |file, describe_name|
- @spec_content ||= File.read((File.join(@working_dir, @name, file)))
+ @spec_content ||= File.read(File.join(@working_dir, @name, file))
- assert_match %Q{context "#{describe_name}" do}, @spec_content
+ assert_match %(context "#{describe_name}" do), @spec_content
end
Then /^'(.*)' should have tests for '(.*)'$/ do |file, describe_name|
- @tests_content ||= File.read((File.join(@working_dir, @name, file)))
+ @tests_content ||= File.read(File.join(@working_dir, @name, file))
- assert_match %Q{Shindo.tests("#{describe_name}") do}, @tests_content
+ assert_match %{Shindo.tests("#{describe_name}") do}, @tests_content
end
Then /^'(.*)' requires '(.*)'$/ do |file, lib|
@@ -276,11 +263,10 @@ Then /^Rakefile instantiates a (.*)$/ do |task_name|
assert_match /#{task_name}/, content
end
-
Then /^'(.+?)' should autorun tests$/ do |test_helper|
content = File.read(File.join(@working_dir, @name, test_helper))
- assert_match "MiniTest::Unit.autorun", content
+ assert_match "require 'minitest/autorun'", content
end
Then /^cucumber world extends "(.*)"$/ do |module_to_extend|
@@ -288,15 +274,13 @@ Then /^cucumber world extends "(.*)"$/ do |module_to_extend|
assert_match "World(#{module_to_extend})", content
end
-
Then /^'features\/support\/env\.rb' sets up features to use test\/unit assertions$/ do
-
end
Then /^'features\/support\/env\.rb' sets up features to use minitest assertions$/ do
content = File.read(File.join(@working_dir, @name, 'features', 'support', 'env.rb'))
- assert_match "world.extend(Mini::Test::Assertions)", content
+ assert_match 'world.extend(Mini::Test::Assertions)', content
end
Then /^git repository has '(.*)' remote$/ do |remote|
@@ -305,7 +289,7 @@ Then /^git repository has '(.*)' remote$/ do |remote|
assert_equal 'origin', remote.name
end
-Then /^git repository '(.*)' remote should be '(.*)'/ do |remote, remote_url|
+Then /^git repository '(.*)' remote should be '(.*)'/ do |remote, _remote_url|
remote = @repo.remotes.first
assert_equal 'git@github.com:technicalpickles/the-perfect-gem.git', remote.url
@@ -319,7 +303,7 @@ Then /^'(.*)' was checked in$/ do |file|
status = @repo.status[file]
assert_not_nil status, "wasn't able to get status for #{file}"
- assert ! status.untracked, "#{file} was untracked"
+ assert !status.untracked, "#{file} was untracked"
assert_nil status.type, "#{file} had a type. it should have been nil"
end
@@ -332,7 +316,6 @@ Then /^Rakefile has "(.*)" as the default task$/ do |task|
assert_match "task :default => :#{task}", @rakefile_content
end
-
After do
ENV['JEWELER_OPTS'] = nil
end
@@ -356,15 +339,14 @@ end
Then /^'Gemfile' has a development dependency on the current version of jeweler$/ do
@gemfile_content ||= File.read(File.join(@working_dir, @name, 'Gemfile'))
group_block = yank_group_info(@gemfile_content, 'development')
-
- assert_match %Q{gem "jeweler", "~> #{Jeweler::Version::STRING}"}, group_block
-end
+ assert_match %(gem "jeweler", "~> #{Jeweler::Version::STRING}"), group_block
+end
Then /^'(.*)' sets up bundler using the default and development groups$/ do |file|
content = File.read(File.join(@working_dir, @name, file))
- assert_match "Bundler.setup(:default, :development)", content
+ assert_match 'Bundler.setup(:default, :development)', content
end
Then /^'(.*)' does not setup bundler$/ do |file|
@@ -373,15 +355,13 @@ Then /^'(.*)' does not setup bundler$/ do |file|
assert_no_match /Bundler\.setup/, content
end
-Then /^'Gemfile' uses the (.*) source$/ do |source|
+Then /^'Gemfile' uses the (.*) source$/ do |_source|
content = File.read(File.join(@working_dir, @name, 'Gemfile'))
- assert_match %Q{source "http://rubygems.org"}, content
+ assert_match %(source "https://rubygems.org"), content
end
-
-Then /^Rakefile has a magic comment for UTF\-(\d+)$/ do |arg1|
+Then /^Rakefile has a magic comment for UTF\-(\d+)$/ do |_arg1|
content = File.read(File.join(@working_dir, @name, 'Rakefile'))
- assert_match "# encoding: utf-8", content
+ assert_match '# encoding: utf-8', content
end
-
diff --git a/features/step_definitions/task_steps.rb b/features/step_definitions/task_steps.rb
index 76ec3d3..e90fc1c 100644
--- a/features/step_definitions/task_steps.rb
+++ b/features/step_definitions/task_steps.rb
@@ -1,6 +1,5 @@
Then /^I can gem install "([^"]+)"$/ do |gem_path|
@stdout = `cd #{@working_dir}; gem install --install-dir #{@working_dir}/gem-install-dir --no-ri --no-rdoc #{gem_path} 2>&1`
assert_no_match /ERROR/, @stdout
- assert $?.exited?
+ assert $CHILD_STATUS.exited?
end
-
diff --git a/features/support/env.rb b/features/support/env.rb
index 25f13ec..08d30c3 100644
--- a/features/support/env.rb
+++ b/features/support/env.rb
@@ -1,24 +1,40 @@
+ENV.delete_if { |name, _| name.start_with?('GIT') }
require 'bundler'
begin
Bundler.setup(:default, :xzibit, :test)
rescue Bundler::BundlerError => e
$stderr.puts e.message
- $stderr.puts "Run `bundle install` to install missing gems"
+ $stderr.puts 'Run `bundle install` to install missing gems'
exit e.status_code
end
require 'jeweler'
require 'mocha'
+require 'mocha/api'
+World(Mocha::API)
+
+Before do
+ mocha_setup
+end
+
+After do
+ begin
+ mocha_verify
+ ensure
+ mocha_teardown
+ end
+end
+
require 'output_catcher'
require 'timecop'
-require 'ruby-debug'
require 'active_support'
+require 'active_support/core_ext/object/blank'
require 'test/unit/assertions'
World(Test::Unit::Assertions)
-require 'construct'
-World(Construct::Helpers)
+require 'test_construct'
+World(TestConstruct::Helpers)
def yank_task_info(content, task)
if content =~ /#{Regexp.escape(task)}.new(\(.*\))? do \|(.*?)\|(.*?)^end$/m
@@ -27,9 +43,7 @@ def yank_task_info(content, task)
end
def yank_group_info(content, group)
- if content =~ /group :#{group} do(.*?)end/m
- $1
- end
+ $1 if content =~ /group :#{group} do(.*?)end/m
end
def fixture_dir
diff --git a/jeweler.gemspec b/jeweler.gemspec
index 9eeac7b..f964059 100644
--- a/jeweler.gemspec
+++ b/jeweler.gemspec
@@ -2,31 +2,37 @@
# DO NOT EDIT THIS FILE DIRECTLY
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
# -*- encoding: utf-8 -*-
+# stub: jeweler 2.3.9 ruby lib
Gem::Specification.new do |s|
- s.name = "jeweler"
- s.version = "2.0.1"
+ s.name = "jeweler".freeze
+ s.version = "2.3.9"
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
- s.authors = ["Josh Nichols", "Yusuke Murata"]
- s.date = "2014-01-29"
- s.description = "Simple and opinionated helper for creating Rubygem projects on GitHub"
- s.email = ["josh@technicalpickles.com", "info@muratayusuke.com"]
- s.executables = ["jeweler"]
+ s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
+ s.require_paths = ["lib".freeze]
+ s.authors = ["Fred Mitchell".freeze, "Josh Nichols".freeze, "Yusuke Murata".freeze]
+ s.date = "2018-01-18"
+ s.description = "Simple and opinionated helper for creating Rubygem projects on GitHub".freeze
+ s.email = ["fred.mitchell@gmx.de".freeze, "fred.mitchell@gmx.com".freeze, "info@muratayusuke.com".freeze]
+ s.executables = ["jeweler".freeze]
s.extra_rdoc_files = [
"ChangeLog.markdown",
"LICENSE.txt",
- "README.markdown"
+ "README.markdown",
+ "README.org"
]
s.files = [
".coveralls.yml",
".document",
+ ".semver",
".travis.yml",
".yardopts",
"ChangeLog.markdown",
"Gemfile",
+ "Gemfile.lock",
"LICENSE.txt",
"README.markdown",
+ "README.org",
"Rakefile",
"bin/jeweler",
"features/generator/cucumber.feature",
@@ -181,55 +187,61 @@ Gem::Specification.new do |s|
"test/test_helper.rb",
"test/test_jeweler.rb"
]
- s.homepage = "http://github.com/technicalpickles/jeweler"
- s.licenses = ["MIT"]
- s.require_paths = ["lib"]
- s.rubygems_version = "2.0.3"
- s.summary = "Opinionated tool for creating and managing RubyGem projects"
+ s.homepage = "http://github.com/technicalpickles/jeweler".freeze
+ s.licenses = ["MIT".freeze]
+ s.required_ruby_version = Gem::Requirement.new(">= 2.2.0".freeze)
+ s.rubygems_version = "2.6.11".freeze
+ s.summary = "Opinionated tool for creating and managing RubyGem projects".freeze
if s.respond_to? :specification_version then
s.specification_version = 4
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
- s.add_runtime_dependency(%q<rake>, [">= 0"])
- s.add_runtime_dependency(%q<git>, [">= 1.2.5"])
- s.add_runtime_dependency(%q<nokogiri>, [">= 1.5.10"])
- s.add_runtime_dependency(%q<github_api>, [">= 0"])
- s.add_runtime_dependency(%q<highline>, [">= 1.6.15"])
- s.add_runtime_dependency(%q<bundler>, [">= 1.0"])
- s.add_runtime_dependency(%q<rdoc>, [">= 0"])
- s.add_runtime_dependency(%q<builder>, [">= 0"])
- s.add_development_dependency(%q<yard>, [">= 0.8.5"])
- s.add_development_dependency(%q<bluecloth>, [">= 0"])
- s.add_development_dependency(%q<cucumber>, [">= 1.1.4"])
- s.add_development_dependency(%q<simplecov>, [">= 0"])
+ s.add_runtime_dependency(%q<rake>.freeze, [">= 0"])
+ s.add_runtime_dependency(%q<git>.freeze, [">= 1.2.5"])
+ s.add_runtime_dependency(%q<nokogiri>.freeze, [">= 1.5.10"])
+ s.add_runtime_dependency(%q<github_api>.freeze, ["~> 0.16.0"])
+ s.add_runtime_dependency(%q<highline>.freeze, [">= 1.6.15"])
+ s.add_runtime_dependency(%q<bundler>.freeze, [">= 0"])
+ s.add_runtime_dependency(%q<rdoc>.freeze, [">= 0"])
+ s.add_runtime_dependency(%q<builder>.freeze, [">= 0"])
+ s.add_runtime_dependency(%q<semver2>.freeze, [">= 0"])
+ s.add_runtime_dependency(%q<psych>.freeze, [">= 0"])
+ s.add_development_dependency(%q<yard>.freeze, [">= 0.8.5"])
+ s.add_development_dependency(%q<bluecloth>.freeze, [">= 0"])
+ s.add_development_dependency(%q<cucumber>.freeze, [">= 1.1.4"])
+ s.add_development_dependency(%q<simplecov>.freeze, [">= 0"])
else
- s.add_dependency(%q<rake>, [">= 0"])
- s.add_dependency(%q<git>, [">= 1.2.5"])
- s.add_dependency(%q<nokogiri>, [">= 1.5.10"])
- s.add_dependency(%q<github_api>, [">= 0"])
- s.add_dependency(%q<highline>, [">= 1.6.15"])
- s.add_dependency(%q<bundler>, [">= 1.0"])
- s.add_dependency(%q<rdoc>, [">= 0"])
- s.add_dependency(%q<builder>, [">= 0"])
- s.add_dependency(%q<yard>, [">= 0.8.5"])
- s.add_dependency(%q<bluecloth>, [">= 0"])
- s.add_dependency(%q<cucumber>, [">= 1.1.4"])
- s.add_dependency(%q<simplecov>, [">= 0"])
+ s.add_dependency(%q<rake>.freeze, [">= 0"])
+ s.add_dependency(%q<git>.freeze, [">= 1.2.5"])
+ s.add_dependency(%q<nokogiri>.freeze, [">= 1.5.10"])
+ s.add_dependency(%q<github_api>.freeze, ["~> 0.16.0"])
+ s.add_dependency(%q<highline>.freeze, [">= 1.6.15"])
+ s.add_dependency(%q<bundler>.freeze, [">= 0"])
+ s.add_dependency(%q<rdoc>.freeze, [">= 0"])
+ s.add_dependency(%q<builder>.freeze, [">= 0"])
+ s.add_dependency(%q<semver2>.freeze, [">= 0"])
+ s.add_dependency(%q<psych>.freeze, [">= 0"])
+ s.add_dependency(%q<yard>.freeze, [">= 0.8.5"])
+ s.add_dependency(%q<bluecloth>.freeze, [">= 0"])
+ s.add_dependency(%q<cucumber>.freeze, [">= 1.1.4"])
+ s.add_dependency(%q<simplecov>.freeze, [">= 0"])
end
else
- s.add_dependency(%q<rake>, [">= 0"])
- s.add_dependency(%q<git>, [">= 1.2.5"])
- s.add_dependency(%q<nokogiri>, [">= 1.5.10"])
- s.add_dependency(%q<github_api>, [">= 0"])
- s.add_dependency(%q<highline>, [">= 1.6.15"])
- s.add_dependency(%q<bundler>, [">= 1.0"])
- s.add_dependency(%q<rdoc>, [">= 0"])
- s.add_dependency(%q<builder>, [">= 0"])
- s.add_dependency(%q<yard>, [">= 0.8.5"])
- s.add_dependency(%q<bluecloth>, [">= 0"])
- s.add_dependency(%q<cucumber>, [">= 1.1.4"])
- s.add_dependency(%q<simplecov>, [">= 0"])
+ s.add_dependency(%q<rake>.freeze, [">= 0"])
+ s.add_dependency(%q<git>.freeze, [">= 1.2.5"])
+ s.add_dependency(%q<nokogiri>.freeze, [">= 1.5.10"])
+ s.add_dependency(%q<github_api>.freeze, ["~> 0.16.0"])
+ s.add_dependency(%q<highline>.freeze, [">= 1.6.15"])
+ s.add_dependency(%q<bundler>.freeze, [">= 0"])
+ s.add_dependency(%q<rdoc>.freeze, [">= 0"])
+ s.add_dependency(%q<builder>.freeze, [">= 0"])
+ s.add_dependency(%q<semver2>.freeze, [">= 0"])
+ s.add_dependency(%q<psych>.freeze, [">= 0"])
+ s.add_dependency(%q<yard>.freeze, [">= 0.8.5"])
+ s.add_dependency(%q<bluecloth>.freeze, [">= 0"])
+ s.add_dependency(%q<cucumber>.freeze, [">= 1.1.4"])
+ s.add_dependency(%q<simplecov>.freeze, [">= 0"])
end
end
diff --git a/lib/jeweler.rb b/lib/jeweler.rb
index 599e21f..d6b0ac2 100644
--- a/lib/jeweler.rb
+++ b/lib/jeweler.rb
@@ -16,12 +16,12 @@ class Jeweler
autoload :Generator, 'jeweler/generator'
autoload :Commands, 'jeweler/commands'
-
+
autoload :VersionHelper, 'jeweler/version_helper'
autoload :GemSpecHelper, 'jeweler/gemspec_helper'
autoload :Tasks, 'jeweler/tasks'
- autoload :RubygemsDotOrgTasks, 'jeweler/rubygems_dot_org_tasks'
+ autoload :RubygemsDotOrgTasks, 'jeweler/rubygems_dot_org_tasks'
autoload :GemcutterTasks, 'jeweler/gemcutter_tasks'
autoload :RubyforgeTasks, 'jeweler/rubyforge_tasks'
autoload :Specification, 'jeweler/specification'
@@ -72,7 +72,7 @@ class Jeweler
Jeweler::Commands::WriteGemspec.build_for(self).run
end
- # Validates the project's gemspec from disk in an environment similar to how
+ # Validates the project's gemspec from disk in an environment similar to how
# GitHub would build from it. See http://gist.github.com/16215
def validate_gemspec
Jeweler::Commands::ValidateGemspec.build_for(self).run
@@ -96,26 +96,26 @@ class Jeweler
# Bumps the patch version.
#
# 1.5.1 -> 1.5.2
- def bump_patch_version()
+ def bump_patch_version
Jeweler::Commands::Version::BumpPatch.build_for(self).run
end
# Bumps the minor version.
#
# 1.5.1 -> 1.6.0
- def bump_minor_version()
+ def bump_minor_version
Jeweler::Commands::Version::BumpMinor.build_for(self).run
end
# Bumps the major version.
#
# 1.5.1 -> 2.0.0
- def bump_major_version()
+ def bump_major_version
Jeweler::Commands::Version::BumpMajor.build_for(self).run
end
# Bumps the version, to the specific major/minor/patch version, writing out the appropriate version.rb, and then reloads it.
- def write_version(major, minor, patch, build, options = {})
+ def write_version(major, minor, patch, build, _options = {})
command = Jeweler::Commands::Version::Write.build_for(self)
command.major = major
command.minor = minor
@@ -153,26 +153,25 @@ class Jeweler
end
def git_base_dir(base_dir = nil)
- if base_dir
- base_dir = File.dirname(base_dir)
- else
- base_dir = File.expand_path(self.base_dir || ".")
- end
- return nil if base_dir==File.dirname("/")
- return base_dir if File.exists?(File.join(base_dir, '.git'))
- return git_base_dir(base_dir)
- end
+ base_dir = if base_dir
+ File.dirname(base_dir)
+ else
+ File.expand_path(self.base_dir || '.')
+ end
+ return nil if base_dir == File.dirname('/')
+ return base_dir if File.exist?(File.join(base_dir, '.git'))
+ git_base_dir(base_dir)
+ end
def in_git_repo?
git_base_dir
end
- def version_file_exists?
- File.exists?(@version_helper.plaintext_path) || File.exists?(@version_helper.yaml_path)
+ def version_file_exist?
+ File.exist?(@version_helper.plaintext_path) || File.exist?(@version_helper.yaml_path)
end
def expects_version_file?
gemspec.version.nil?
end
-
end
diff --git a/lib/jeweler/commands/build_gem.rb b/lib/jeweler/commands/build_gem.rb
index 255c8e7..b5bd034 100644
--- a/lib/jeweler/commands/build_gem.rb
+++ b/lib/jeweler/commands/build_gem.rb
@@ -12,10 +12,10 @@ class Jeweler
gemspec = gemspec_helper.parse
- if Gem::Version.new(`gem -v`) >= Gem::Version.new("2.0.0.a")
+ if Gem::Version.new(`gem -v`) >= Gem::Version.new('2.0.0.a')
gem_file_name = Gem::Package.build(gemspec)
else
- require "rubygems/builder"
+ require 'rubygems/builder'
gem_file_name = Gem::Builder.new(gemspec).build
end
diff --git a/lib/jeweler/commands/check_dependencies.rb b/lib/jeweler/commands/check_dependencies.rb
index 2bbad1a..af6034f 100644
--- a/lib/jeweler/commands/check_dependencies.rb
+++ b/lib/jeweler/commands/check_dependencies.rb
@@ -13,12 +13,12 @@ class Jeweler
if missing_dependencies.empty?
puts "#{type || 'All'} dependencies seem to be installed."
else
- puts "Missing some dependencies. Install them with the following commands:"
+ puts 'Missing some dependencies. Install them with the following commands:'
missing_dependencies.each do |dependency|
- puts %Q{\tgem install #{dependency.name} --version "#{dependency.requirement.to_s}"}
+ puts %(\tgem install #{dependency.name} --version "#{dependency.requirement}")
end
- abort "Run the specified gem commands before trying to run this again: #{$0} #{ARGV.join(' ')}"
+ abort "Run the specified gem commands before trying to run this again: {$PROGRAM_NAME} #{ARGV.join(' ')}"
end
end
diff --git a/lib/jeweler/commands/install_gem.rb b/lib/jeweler/commands/install_gem.rb
index 11cda2c..54b1a10 100644
--- a/lib/jeweler/commands/install_gem.rb
+++ b/lib/jeweler/commands/install_gem.rb
@@ -13,7 +13,7 @@ class Jeweler
command = "#{gem_command} install #{gemspec_helper.gem_path}"
output.puts "Executing #{command.inspect}:"
- sh command # TODO where does sh actually come from!? - rake, apparently
+ sh command # TODO: where does sh actually come from!? - rake, apparently
end
def gem_command
diff --git a/lib/jeweler/commands/release_gemspec.rb b/lib/jeweler/commands/release_gemspec.rb
index cf852cf..7804c3d 100644
--- a/lib/jeweler/commands/release_gemspec.rb
+++ b/lib/jeweler/commands/release_gemspec.rb
@@ -3,7 +3,8 @@ require 'pathname'
class Jeweler
module Commands
class ReleaseGemspec
- attr_accessor :gemspec, :version, :repo, :output, :gemspec_helper, :base_dir
+ attr_accessor :gemspec, :version, :repo, :output, :base_dir
+ attr_writer :gemspec_helper
def initialize(attributes = {})
self.output = $stdout
@@ -20,8 +21,8 @@ class Jeweler
remote_branch = args[:remote_branch] || branch
unless clean_staging_area?
- system "git status"
- raise "Unclean staging area! Be sure to commit or .gitignore everything first. See `git status` above."
+ system 'git status'
+ raise 'Unclean staging area! Be sure to commit or .gitignore everything first. See `git status` above.'
end
repo.checkout(local_branch)
@@ -35,7 +36,7 @@ class Jeweler
def clean_staging_area?
# surprisingly simpler than ruby-git
- `git ls-files --deleted --modified --others --exclude-standard` == ""
+ `git ls-files --deleted --modified --others --exclude-standard` == ''
end
def commit_gemspec!
@@ -56,14 +57,11 @@ class Jeweler
end
def gemspec_helper
- @gemspec_helper ||= Jeweler::GemSpecHelper.new(self.gemspec, self.base_dir)
+ @gemspec_helper ||= Jeweler::GemSpecHelper.new(gemspec, base_dir)
end
def working_subdir
- return @working_subdir if @working_subdir
- cwd = base_dir_path
- @working_subdir = cwd.relative_path_from(Pathname.new(repo.dir.path))
- @working_subdir
+ @working_subdir ||= base_dir_path.relative_path_from(Pathname.new(repo.dir.path))
end
def base_dir_path
@@ -71,7 +69,7 @@ class Jeweler
end
def self.build_for(jeweler)
- command = self.new
+ command = new
command.base_dir = jeweler.base_dir
command.gemspec = jeweler.gemspec
diff --git a/lib/jeweler/commands/release_to_git.rb b/lib/jeweler/commands/release_to_git.rb
index 65abc03..5126362 100644
--- a/lib/jeweler/commands/release_to_git.rb
+++ b/lib/jeweler/commands/release_to_git.rb
@@ -18,8 +18,8 @@ class Jeweler
remote_branch = args[:remote_branch] || branch
unless clean_staging_area?
- system "git status"
- raise "Unclean staging area! Be sure to commit or .gitignore everything first. See `git status` above."
+ system 'git status'
+ raise 'Unclean staging area! Be sure to commit or .gitignore everything first. See `git status` above.'
end
repo.checkout(local_branch)
@@ -35,7 +35,7 @@ class Jeweler
end
def clean_staging_area?
- `git ls-files --deleted --modified --others --exclude-standard` == ""
+ `git ls-files --deleted --modified --others --exclude-standard` == ''
end
def release_tag
@@ -43,12 +43,16 @@ class Jeweler
end
def release_not_tagged?
- tag = repo.tag(release_tag) rescue nil
+ tag = begin
+ repo.tag(release_tag)
+ rescue
+ nil
+ end
tag.nil?
end
def self.build_for(jeweler)
- command = self.new
+ command = new
command.base_dir = jeweler.base_dir
command.gemspec = jeweler.gemspec
diff --git a/lib/jeweler/commands/validate_gemspec.rb b/lib/jeweler/commands/validate_gemspec.rb
index f11a31c..8854614 100644
--- a/lib/jeweler/commands/validate_gemspec.rb
+++ b/lib/jeweler/commands/validate_gemspec.rb
@@ -8,13 +8,11 @@ class Jeweler
end
def run
- begin
- gemspec_helper.parse
- output.puts "#{gemspec_helper.path} is valid."
- rescue Exception => e
- output.puts "#{gemspec_helper.path} is invalid. See the backtrace for more details."
- raise
- end
+ gemspec_helper.parse
+ output.puts "#{gemspec_helper.path} is valid."
+ rescue Exception => _e
+ output.puts "#{gemspec_helper.path} is invalid. See the backtrace for more details."
+ raise
end
def self.build_for(jeweler)
diff --git a/lib/jeweler/commands/version/base.rb b/lib/jeweler/commands/version/base.rb
index 5aa917b..aa3fefc 100644
--- a/lib/jeweler/commands/version/base.rb
+++ b/lib/jeweler/commands/version/base.rb
@@ -4,41 +4,36 @@ class Jeweler
module Commands
module Version
class Base
-
attr_accessor :repo, :version_helper, :gemspec, :commit, :base_dir
def run
update_version
- self.version_helper.write
- self.gemspec.version = self.version_helper.to_s
+ version_helper.write
+ gemspec.version = version_helper.to_s
- commit_version if self.repo && self.commit
+ commit_version if repo && commit
end
def update_version
- raise "Subclasses should implement this"
+ raise 'Subclasses should implement this'
end
def commit_version
- if self.repo
- self.repo.add(working_subdir.join(version_helper.path).to_s)
- self.repo.commit("Version bump to #{self.version_helper.to_s}")
+ if repo
+ repo.add(working_subdir.join(version_helper.path).to_s)
+ repo.commit("Version bump to #{version_helper}")
end
end
def working_subdir
- return @working_subdir if @working_subdir
- cwd = base_dir_path
- @working_subdir = cwd.relative_path_from(Pathname.new(repo.dir.path))
- @working_subdir
+ @working_subdir ||= base_dir_path.relative_path_from(Pathname.new(repo.dir.path))
end
def base_dir_path
Pathname.new(base_dir).realpath
end
-
def self.build_for(jeweler)
command = new
command.repo = jeweler.repo
diff --git a/lib/jeweler/commands/version/bump_major.rb b/lib/jeweler/commands/version/bump_major.rb
index a1e0327..a8f35a7 100644
--- a/lib/jeweler/commands/version/bump_major.rb
+++ b/lib/jeweler/commands/version/bump_major.rb
@@ -2,11 +2,9 @@ class Jeweler
module Commands
module Version
class BumpMajor < Base
-
def update_version
- self.version_helper.bump_major
+ version_helper.bump_major
end
-
end
end
end
diff --git a/lib/jeweler/commands/version/bump_minor.rb b/lib/jeweler/commands/version/bump_minor.rb
index 689a058..02d875b 100644
--- a/lib/jeweler/commands/version/bump_minor.rb
+++ b/lib/jeweler/commands/version/bump_minor.rb
@@ -2,9 +2,8 @@ class Jeweler
module Commands
module Version
class BumpMinor < Base
-
def update_version
- self.version_helper.bump_minor
+ version_helper.bump_minor
end
end
end
diff --git a/lib/jeweler/commands/version/bump_patch.rb b/lib/jeweler/commands/version/bump_patch.rb
index 25f72fa..2234246 100644
--- a/lib/jeweler/commands/version/bump_patch.rb
+++ b/lib/jeweler/commands/version/bump_patch.rb
@@ -2,13 +2,10 @@ class Jeweler
module Commands
module Version
class BumpPatch < Base
-
def update_version
- self.version_helper.bump_patch
+ version_helper.bump_patch
end
-
end
end
end
end
-
diff --git a/lib/jeweler/commands/write_gemspec.rb b/lib/jeweler/commands/write_gemspec.rb
index db7f2f7..e7bd962 100644
--- a/lib/jeweler/commands/write_gemspec.rb
+++ b/lib/jeweler/commands/write_gemspec.rb
@@ -1,7 +1,8 @@
class Jeweler
module Commands
class WriteGemspec
- attr_accessor :base_dir, :gemspec, :version, :output, :gemspec_helper, :version_helper
+ attr_accessor :base_dir, :gemspec, :version, :output, :version_helper
+ attr_writer :gemspec_helper
def initialize
self.output = $stdout
@@ -15,11 +16,11 @@ class Jeweler
gemspec_helper.write
- output.puts "Generated: #{gemspec_helper.path}"
+ output.puts "Generated: #{gemspec_helper.path}"
end
def gemspec_helper
- @gemspec_helper ||= GemSpecHelper.new(self.gemspec, self.base_dir)
+ @gemspec_helper ||= GemSpecHelper.new(gemspec, base_dir)
end
def self.build_for(jeweler)
diff --git a/lib/jeweler/gemspec_helper.rb b/lib/jeweler/gemspec_helper.rb
index e8a8174..2525ded 100644
--- a/lib/jeweler/gemspec_helper.rb
+++ b/lib/jeweler/gemspec_helper.rb
@@ -10,18 +10,16 @@ class Jeweler
end
def valid?
- begin
- parse
- true
- rescue
- false
- end
+ parse
+ true
+ rescue
+ false
end
def write
File.open(path, 'w') do |f|
- f.write self.to_ruby
- end
+ f.write to_ruby
+ end
end
def to_ruby
@@ -42,13 +40,15 @@ class Jeweler
def path
denormalized_path = File.join(@base_dir, "#{@spec.name}.gemspec")
absolute_path = File.expand_path(denormalized_path)
- absolute_path.gsub(Dir.getwd + File::SEPARATOR, '')
+ absolute_path.gsub(Dir.getwd + File::SEPARATOR, '')
end
+ PARSE_SAFE = (RUBY_VERSION >= '2.3') ? 1 : 3
+
def parse
- data = self.to_ruby
+ data = to_ruby
parsed_gemspec = nil
- Thread.new { parsed_gemspec = eval("$SAFE = 3\n#{data}", binding, path) }.join
+ Thread.new { parsed_gemspec = eval("$SAFE = #{PARSE_SAFE}\n#{data}", binding, path) }.join
parsed_gemspec
end
@@ -65,9 +65,9 @@ class Jeweler
# Adds extra space when outputting an array. This helps create better version control diffs, because otherwise it is all on the same line.
def prettyify_array(gemspec_ruby, array_name)
gemspec_ruby.gsub(/s\.#{array_name.to_s} = \[.+?\]/) do |match|
- leadin, files = match[0..-2].split("[")
-
- leadin + "[\n #{files.gsub(%|", "|, %|",\n "|)}\n ]"
+ leadin, files = match[0..-2].split('[')
+
+ leadin + "[\n #{files.gsub(%(", "), %(",\n "))}\n ]"
end
end
@@ -78,7 +78,7 @@ class Jeweler
def update_version(version)
@spec.version = version.to_s
end
-
+
# Checks whether it uses the version helper or the users defined version.
def has_version?
!@spec.version.nil?
diff --git a/lib/jeweler/generator.rb b/lib/jeweler/generator.rb
index 995a429..95b5688 100644
--- a/lib/jeweler/generator.rb
+++ b/lib/jeweler/generator.rb
@@ -23,12 +23,12 @@ class Jeweler
class NoGitHubUser < StandardError
end
class GitInitFailed < StandardError
- end
+ end
class GitRepoCreationFailed < StandardError
end
# Generator for creating a jeweler-enabled project
- class Generator
+ class Generator
require 'jeweler/generator/options'
require 'jeweler/generator/application'
@@ -49,7 +49,7 @@ class Jeweler
attr_accessor :target_dir, :user_name, :user_email, :summary, :homepage,
:description, :project_name, :github_username,
- :repo, :should_create_remote_repo,
+ :repo, :should_create_remote_repo,
:testing_framework, :documentation_framework,
:should_use_cucumber, :should_use_bundler,
:should_setup_rubyforge, :should_use_reek, :should_use_roodi,
@@ -62,10 +62,10 @@ class Jeweler
extracted_directory = nil
self.project_name = options[:project_name]
- if self.project_name.nil? || self.project_name.squeeze.strip == ""
+ if project_name.nil? || project_name.squeeze.strip == ''
raise NoGitHubRepoNameGiven
else
- path = File.split(self.project_name)
+ path = File.split(project_name)
if path.size > 1
extracted_directory = File.join(path[0..-1])
@@ -74,10 +74,10 @@ class Jeweler
end
self.development_dependencies = []
- self.testing_framework = options[:testing_framework]
+ self.testing_framework = options[:testing_framework]
self.documentation_framework = options[:documentation_framework]
begin
- generator_mixin_name = "#{self.testing_framework.to_s.capitalize}Mixin"
+ generator_mixin_name = "#{testing_framework.to_s.capitalize}Mixin"
generator_mixin = self.class.const_get(generator_mixin_name)
extend generator_mixin
rescue NameError => e
@@ -85,14 +85,14 @@ class Jeweler
end
begin
- generator_mixin_name = "#{self.documentation_framework.to_s.capitalize}Mixin"
+ generator_mixin_name = "#{documentation_framework.to_s.capitalize}Mixin"
generator_mixin = self.class.const_get(generator_mixin_name)
extend generator_mixin
rescue NameError => e
raise ArgumentError, "Unsupported documentation framework (#{documentation_framework})"
end
- self.target_dir = options[:directory] || extracted_directory || self.project_name
+ self.target_dir = options[:directory] || extracted_directory || project_name
self.summary = options[:summary] || 'TODO: one-line summary of your gem'
self.description = options[:description] || 'TODO: longer description of your gem'
@@ -102,24 +102,24 @@ class Jeweler
self.should_setup_rubyforge = options[:rubyforge]
self.should_use_bundler = options[:use_bundler]
- development_dependencies << ["cucumber", ">= 0"] if should_use_cucumber
+ development_dependencies << ['cucumber', '>= 0'] if should_use_cucumber
- # TODO make bundler optional?
- development_dependencies << ["bundler", "~> 1.0"]
- development_dependencies << ["jeweler", "~> #{Jeweler::Version::STRING}"]
- development_dependencies << ["simplecov", ">= 0"]
+ # TODO: make bundler optional?
+ development_dependencies << ['bundler', '~> 1.0']
+ development_dependencies << ['jeweler', "~> #{Jeweler::Version::STRING}"]
+ development_dependencies << ['simplecov', '>= 0']
- development_dependencies << ["reek", "~> 1.2.8"] if should_use_reek
- development_dependencies << ["roodi", "~> 2.1.0"] if should_use_roodi
+ development_dependencies << ['reek', '~> 1.2.8'] if should_use_reek
+ development_dependencies << ['roodi', '~> 2.1.0'] if should_use_roodi
self.user_name = options[:user_name]
self.user_email = options[:user_email]
self.homepage = options[:homepage]
-
+
self.git_remote = options[:git_remote]
- raise NoGitUserName unless self.user_name
- raise NoGitUserEmail unless self.user_email
+ raise NoGitUserName unless user_name
+ raise NoGitUserEmail unless user_email
extend GithubMixin
end
@@ -135,7 +135,7 @@ class Jeweler
end
def constant_name
- self.project_name.split(/[-_]/).collect{|each| each.capitalize }.join
+ project_name.split(/[-_]/).collect(&:capitalize).join
end
def lib_filename
@@ -143,11 +143,11 @@ class Jeweler
end
def require_name
- self.project_name
+ project_name
end
def file_name_prefix
- self.project_name.gsub('-', '_')
+ project_name.tr('-', '_')
end
def lib_dir
@@ -174,16 +174,15 @@ class Jeweler
File.join(features_dir, 'step_definitions')
end
- private
+ private
def create_files
- unless File.exists?(target_dir) || File.directory?(target_dir)
- FileUtils.mkdir target_dir
- else
+ if File.exist?(target_dir) || File.directory?(target_dir)
raise FileInTheWay, "The directory #{target_dir} already exists, aborting. Maybe move it out of the way before continuing?"
+ else
+ FileUtils.mkdir target_dir
end
-
output_template_in_target '.gitignore'
output_template_in_target 'Rakefile'
output_template_in_target 'Gemfile' if should_use_bundler
@@ -200,7 +199,6 @@ class Jeweler
output_template_in_target File.join(testing_framework.to_s, 'flunking.rb'),
File.join(test_dir, test_filename)
-
if testing_framework == :rspec
output_template_in_target File.join(testing_framework.to_s, '.rspec'),
'.rspec'
@@ -231,7 +229,7 @@ class Jeweler
final_destination = File.join(target_dir, destination)
template_result = render_template(source)
- File.open(final_destination, 'w') {|file| file.write(template_result)}
+ File.open(final_destination, 'w') { |file| file.write(template_result) }
$stdout.puts "\tcreate\t#{destination}"
end
@@ -250,22 +248,22 @@ class Jeweler
def touch_in_target(destination)
final_destination = File.join(target_dir, destination)
- FileUtils.touch final_destination
+ FileUtils.touch final_destination
$stdout.puts "\tcreate\t#{destination}"
end
def create_version_control
Dir.chdir(target_dir) do
begin
- @repo = Git.init()
+ @repo = Git.init
rescue Git::GitExecuteError => e
- raise GitInitFailed, "Encountered an error during gitification. Maybe the repo already exists, or has already been pushed to?"
+ raise GitInitFailed, 'Encountered an error during gitification. Maybe the repo already exists, or has already been pushed to?'
end
begin
@repo.add('.')
rescue Git::GitExecuteError => e
- #raise GitAddFailed, "There was some problem adding this directory to the git changeset"
+ # raise GitAddFailed, "There was some problem adding this directory to the git changeset"
raise
end
@@ -278,26 +276,26 @@ class Jeweler
begin
@repo.add_remote('origin', git_remote)
rescue Git::GitExecuteError => e
- puts "Encountered an error while adding origin remote. Maybe you have some weird settings in ~/.gitconfig?"
+ puts 'Encountered an error while adding origin remote. Maybe you have some weird settings in ~/.gitconfig?'
raise
end
end
end
-
+
def create_and_push_repo
- puts "Please provide your Github password to create the Github repository"
+ puts 'Please provide your Github password to create the Github repository'
begin
login = github_username
- password = ask("Password: ") { |q| q.echo = false }
- github = Github.new(:login => login.strip, :password => password.strip)
- github.repos.create(:name => project_name, :description => summary)
+ password = ask('Password: ') { |q| q.echo = false }
+ github = Github.new(login: login.strip, password: password.strip)
+ github.repos.create(name: project_name, description: summary)
rescue Github::Error::Unauthorized
- puts "Wrong login/password! Please try again"
+ puts 'Wrong login/password! Please try again'
retry
rescue Github::Error::UnprocessableEntity
raise GitRepoCreationFailed, "Can't create that repo. Does it already exist?"
end
- # TODO do a HEAD request to see when it's ready?
+ # TODO: do a HEAD request to see when it's ready?
@repo.push('origin')
end
end
diff --git a/lib/jeweler/generator/application.rb b/lib/jeweler/generator/application.rb
index df8e228..8ed2bb6 100644
--- a/lib/jeweler/generator/application.rb
+++ b/lib/jeweler/generator/application.rb
@@ -24,7 +24,7 @@ class Jeweler
return 1
end
- if options[:project_name].nil? || options[:project_name].squeeze.strip == ""
+ if options[:project_name].nil? || options[:project_name].squeeze.strip == ''
$stderr.puts options.opts
return 1
end
@@ -34,13 +34,13 @@ class Jeweler
generator.run
return 0
rescue Jeweler::NoGitUserName
- $stderr.puts %Q{No user.name found in ~/.gitconfig. Please tell git about yourself (see http://help.github.com/git-email-settings/ for details). For example: git config --global user.name "mad voo"}
+ $stderr.puts %{No user.name found in ~/.gitconfig. Please tell git about yourself (see http://help.github.com/git-email-settings/ for details). For example: git config --global user.name "mad voo"}
return 1
rescue Jeweler::NoGitUserEmail
- $stderr.puts %Q{No user.email found in ~/.gitconfig. Please tell git about yourself (see http://help.github.com/git-email-settings/ for details). For example: git config --global user.email mad.vooo@gmail.com}
+ $stderr.puts %{No user.email found in ~/.gitconfig. Please tell git about yourself (see http://help.github.com/git-email-settings/ for details). For example: git config --global user.email mad.vooo@gmail.com}
return 1
rescue Jeweler::NoGitHubUser
- $stderr.puts %Q{Please specify --github-username or set github.user in ~/.gitconfig (see http://github.com/blog/180-local-github-config for details). For example: git config --global github.user defunkt}
+ $stderr.puts %{Please specify --github-username or set github.user in ~/.gitconfig (see http://github.com/blog/180-local-github-config for details). For example: git config --global github.user defunkt}
return 1
rescue Jeweler::FileInTheWay
$stderr.puts "The directory #{options[:project_name]} already exists. Maybe move it out of the way before continuing?"
@@ -49,15 +49,13 @@ class Jeweler
end
def build_options(arguments)
- env_opts_string = ENV['JEWELER_OPTS'] || ""
+ env_opts_string = ENV['JEWELER_OPTS'] || ''
env_opts = Jeweler::Generator::Options.new(shellwords(env_opts_string))
argument_opts = Jeweler::Generator::Options.new(arguments)
env_opts.merge(argument_opts)
end
-
end
-
end
end
end
diff --git a/lib/jeweler/generator/bacon_mixin.rb b/lib/jeweler/generator/bacon_mixin.rb
index 6363ff9..70b77a1 100644
--- a/lib/jeweler/generator/bacon_mixin.rb
+++ b/lib/jeweler/generator/bacon_mixin.rb
@@ -1,9 +1,8 @@
class Jeweler
class Generator
module BaconMixin
-
def self.extended(generator)
- generator.development_dependencies << ["bacon", ">= 0"]
+ generator.development_dependencies << ['bacon', '>= 0']
end
def default_task
@@ -35,9 +34,8 @@ class Jeweler
end
def test_helper_filename
- "spec_helper.rb"
+ 'spec_helper.rb'
end
-
end
end
end
diff --git a/lib/jeweler/generator/github_mixin.rb b/lib/jeweler/generator/github_mixin.rb
index 4c2d458..679f5d7 100644
--- a/lib/jeweler/generator/github_mixin.rb
+++ b/lib/jeweler/generator/github_mixin.rb
@@ -5,9 +5,7 @@ class Jeweler
generator.github_username = generator.options[:github_username]
generator.should_create_remote_repo = generator.options[:create_repo]
- unless generator.github_username
- raise NoGitHubUser
- end
+ raise NoGitHubUser unless generator.github_username
end
def git_remote
diff --git a/lib/jeweler/generator/micronaut_mixin.rb b/lib/jeweler/generator/micronaut_mixin.rb
index b04b347..db7da4e 100644
--- a/lib/jeweler/generator/micronaut_mixin.rb
+++ b/lib/jeweler/generator/micronaut_mixin.rb
@@ -2,9 +2,9 @@ class Jeweler
class Generator
module MicronautMixin
def self.extended(generator)
- generator.development_dependencies << ["spicycode-micronaut", ">= 0"]
+ generator.development_dependencies << ['spicycode-micronaut', '>= 0']
end
-
+
def default_task
'examples'
end
@@ -34,7 +34,7 @@ class Jeweler
end
def test_helper_filename
- "example_helper.rb"
+ 'example_helper.rb'
end
end
end
diff --git a/lib/jeweler/generator/minitest_mixin.rb b/lib/jeweler/generator/minitest_mixin.rb
index 72f2cf4..516ea78 100644
--- a/lib/jeweler/generator/minitest_mixin.rb
+++ b/lib/jeweler/generator/minitest_mixin.rb
@@ -2,7 +2,7 @@ class Jeweler
class Generator
module MinitestMixin
def self.extended(generator)
- generator.development_dependencies << ["minitest", ">= 0"]
+ generator.development_dependencies << ['minitest', '>= 0']
end
def default_task
@@ -34,9 +34,8 @@ class Jeweler
end
def test_helper_filename
- "helper.rb"
+ 'helper.rb'
end
-
end
end
end
diff --git a/lib/jeweler/generator/options.rb b/lib/jeweler/generator/options.rb
index 2a12db7..5d303ad 100644
--- a/lib/jeweler/generator/options.rb
+++ b/lib/jeweler/generator/options.rb
@@ -17,14 +17,14 @@ class Jeweler
require 'optparse'
@opts = OptionParser.new do |o|
- o.banner = "Usage: #{File.basename($0)} [options] reponame\ne.g. #{File.basename($0)} the-perfect-gem"
+ o.banner = "Usage: #{File.basename($PROGRAM_NAME)} [options] reponame\ne.g. #{File.basename($PROGRAM_NAME)} the-perfect-gem"
o.on('--directory [DIRECTORY]', 'specify the directory to generate into (deprecated)') do |directory|
- warn "--directory is deprecated and will be removed in 2.0.0. Please specify an absolute path to a directory as the last argument instead" # DEPRECATE
+ warn '--directory is deprecated and will be removed in 2.0.0. Please specify an absolute path to a directory as the last argument instead' # DEPRECATE
self[:directory] = directory
end
- o.separator ""
+ o.separator ''
o.on('--rspec', 'generate rspec code examples') do
self[:testing_framework] = :rspec
@@ -62,7 +62,7 @@ class Jeweler
self[:testing_framework] = :shindo
end
- o.separator ""
+ o.separator ''
o.on('--[no-]bundler', 'use bundler for managing dependencies') do |v|
self[:use_bundler] = v
@@ -72,7 +72,7 @@ class Jeweler
self[:use_cucumber] = true
end
- o.separator ""
+ o.separator ''
o.on('--reek', 'generate rake task for reek') do
self[:use_reek] = true
@@ -82,7 +82,7 @@ class Jeweler
self[:use_roodi] = true
end
- o.separator ""
+ o.separator ''
o.on('--summary [SUMMARY]', 'specify the summary of the project') do |summary|
self[:summary] = summary
@@ -92,7 +92,7 @@ class Jeweler
self[:description] = description
end
- o.separator ""
+ o.separator ''
o.on('--user-name [USER_NAME]', "the user's name, ie that is credited in the LICENSE") do |user_name|
self[:user_name] = user_name
@@ -102,9 +102,9 @@ class Jeweler
self[:user_email] = user_email
end
- o.separator ""
+ o.separator ''
- o.on('--github-username [GITHUB_USERNAME]', "name of the user on GitHub to set the project up under") do |github_username|
+ o.on('--github-username [GITHUB_USERNAME]', 'name of the user on GitHub to set the project up under') do |github_username|
self[:github_username] = github_username
end
@@ -112,7 +112,7 @@ class Jeweler
self[:git_remote] = git_remote
end
- o.on('--homepage [HOMEPAGE]', "the homepage for your project (defaults to the GitHub repo)") do |homepage|
+ o.on('--homepage [HOMEPAGE]', 'the homepage for your project (defaults to the GitHub repo)') do |homepage|
self[:homepage] = homepage
end
@@ -120,8 +120,7 @@ class Jeweler
self[:create_repo] = true
end
-
- o.separator ""
+ o.separator ''
o.on('--yard', 'use yard for documentation') do
self[:documentation_framework] = :yard
@@ -152,21 +151,18 @@ class Jeweler
self.class.new(@orig_args + other.orig_args)
end
-
# Expose git config here, so we can stub it out for test environments
def self.git_config
- @git_config ||= if Pathname.new("~/.gitconfig").expand_path.exist?
- Git.global_config
- else
- {}
+ @git_config ||= if Pathname.new('~/.gitconfig').expand_path.exist?
+ Git.global_config
+ else
+ {}
end
-
end
def git_config
self.class.git_config
end
-
end
end
end
diff --git a/lib/jeweler/generator/rdoc_mixin.rb b/lib/jeweler/generator/rdoc_mixin.rb
index d002f6c..eeaeb98 100644
--- a/lib/jeweler/generator/rdoc_mixin.rb
+++ b/lib/jeweler/generator/rdoc_mixin.rb
@@ -2,7 +2,7 @@ class Jeweler
class Generator
module RdocMixin
def self.extended(generator)
- generator.development_dependencies << ["rdoc", "~> 3.12"]
+ generator.development_dependencies << ['rdoc', '~> 3.12']
end
def doc_task
diff --git a/lib/jeweler/generator/riot_mixin.rb b/lib/jeweler/generator/riot_mixin.rb
index ff7f2ef..84a7d8a 100644
--- a/lib/jeweler/generator/riot_mixin.rb
+++ b/lib/jeweler/generator/riot_mixin.rb
@@ -2,7 +2,7 @@ class Jeweler
class Generator
module RiotMixin
def self.extended(generator)
- generator.development_dependencies << ["riot", ">= 0"]
+ generator.development_dependencies << ['riot', '>= 0']
end
def default_task
@@ -34,9 +34,8 @@ class Jeweler
end
def test_helper_filename
- "teststrap.rb"
+ 'teststrap.rb'
end
-
end
end
end
diff --git a/lib/jeweler/generator/rspec_mixin.rb b/lib/jeweler/generator/rspec_mixin.rb
index 2e64a4b..7cb5845 100644
--- a/lib/jeweler/generator/rspec_mixin.rb
+++ b/lib/jeweler/generator/rspec_mixin.rb
@@ -2,7 +2,7 @@ class Jeweler
class Generator
module RspecMixin
def self.extended(generator)
- generator.development_dependencies << ["rspec", "~> 2.8.0"]
+ generator.development_dependencies << ['rspec', '~> 3.5.0']
end
def default_task
@@ -34,9 +34,8 @@ class Jeweler
end
def test_helper_filename
- "spec_helper.rb"
+ 'spec_helper.rb'
end
-
end
end
end
diff --git a/lib/jeweler/generator/shindo_mixin.rb b/lib/jeweler/generator/shindo_mixin.rb
index 0f73cac..db9fa08 100644
--- a/lib/jeweler/generator/shindo_mixin.rb
+++ b/lib/jeweler/generator/shindo_mixin.rb
@@ -2,7 +2,7 @@ class Jeweler
class Generator
module ShindoMixin
def self.extended(generator)
- generator.development_dependencies << ["shindo", ">= 0"]
+ generator.development_dependencies << ['shindo', '>= 0']
end
def default_task
@@ -36,9 +36,8 @@ class Jeweler
end
def test_helper_filename
- "tests_helper.rb"
+ 'tests_helper.rb'
end
-
end
end
end
diff --git a/lib/jeweler/generator/shoulda_mixin.rb b/lib/jeweler/generator/shoulda_mixin.rb
index a290c01..de30b03 100644
--- a/lib/jeweler/generator/shoulda_mixin.rb
+++ b/lib/jeweler/generator/shoulda_mixin.rb
@@ -2,7 +2,7 @@ class Jeweler
class Generator
module ShouldaMixin
def self.extended(generator)
- generator.development_dependencies << ["shoulda", ">= 0"]
+ generator.development_dependencies << ['shoulda', '>= 0']
end
def default_task
@@ -34,9 +34,8 @@ class Jeweler
end
def test_helper_filename
- "helper.rb"
+ 'helper.rb'
end
-
end
end
end
diff --git a/lib/jeweler/generator/testspec_mixin.rb b/lib/jeweler/generator/testspec_mixin.rb
index 99eba78..20b4959 100644
--- a/lib/jeweler/generator/testspec_mixin.rb
+++ b/lib/jeweler/generator/testspec_mixin.rb
@@ -2,7 +2,7 @@ class Jeweler
class Generator
module TestspecMixin
def self.extended(generator)
- generator.development_dependencies << ["test-spec", ">= 0"]
+ generator.development_dependencies << ['test-spec', '>= 0']
end
def default_task
@@ -34,9 +34,8 @@ class Jeweler
end
def test_helper_filename
- "test_helper.rb"
+ 'test_helper.rb'
end
-
end
end
end
diff --git a/lib/jeweler/generator/testunit_mixin.rb b/lib/jeweler/generator/testunit_mixin.rb
index 554cd40..7d0b709 100644
--- a/lib/jeweler/generator/testunit_mixin.rb
+++ b/lib/jeweler/generator/testunit_mixin.rb
@@ -1,7 +1,6 @@
class Jeweler
class Generator
module TestunitMixin
-
def default_task
'test'
end
@@ -31,9 +30,8 @@ class Jeweler
end
def test_helper_filename
- "helper.rb"
+ 'helper.rb'
end
-
end
end
end
diff --git a/lib/jeweler/generator/yard_mixin.rb b/lib/jeweler/generator/yard_mixin.rb
index f95bb2e..4a4be90 100644
--- a/lib/jeweler/generator/yard_mixin.rb
+++ b/lib/jeweler/generator/yard_mixin.rb
@@ -2,14 +2,13 @@ class Jeweler
class Generator
module YardMixin
def self.extended(generator)
- generator.development_dependencies << ["yard", "~> 0.7"]
- generator.development_dependencies << ["rdoc", "~> 3.12"]
+ generator.development_dependencies << ['yard', '~> 0.7']
+ generator.development_dependencies << ['rdoc', '~> 3.12']
end
-
+
def doc_task
'yardoc'
end
end
end
end
-
diff --git a/lib/jeweler/rubyforge_tasks.rb b/lib/jeweler/rubyforge_tasks.rb
index 8d5144c..a5e7e88 100644
--- a/lib/jeweler/rubyforge_tasks.rb
+++ b/lib/jeweler/rubyforge_tasks.rb
@@ -11,7 +11,7 @@ class Jeweler
# Jeweler::RubyforgeTasks.new
#
# Easy enough, right?
- #
+ #
# There are a few options you can tweak:
#
# * project: the rubyforge project to operate on. This defaults to whatever you specified in your gemspec. Defaults to your gem name.
@@ -31,7 +31,7 @@ class Jeweler
def initialize
yield self if block_given?
- $stderr.puts "Releasing gems to Rubyforge is deprecated. See details at http://wiki.github.com/technicalpickles/jeweler/migrating-from-releasing-gems-to-rubyforge"
+ $stderr.puts 'Releasing gems to Rubyforge is deprecated. See details at http://wiki.github.com/technicalpickles/jeweler/migrating-from-releasing-gems-to-rubyforge'
define
end
@@ -51,14 +51,14 @@ class Jeweler
def define
namespace :rubyforge do
namespace :release do
- desc "Release the current gem version to RubyForge."
+ desc 'Release the current gem version to RubyForge.'
task :gem do
- $stderr.puts "DEPRECATION: Releasing gems to RubyForge is deprecated. You should see about releasing to Gemcutter instead: http://wiki.github.com/technicalpickles/jeweler/gemcutter"
+ $stderr.puts 'DEPRECATION: Releasing gems to RubyForge is deprecated. You should see about releasing to Gemcutter instead: http://wiki.github.com/technicalpickles/jeweler/gemcutter'
end
if publish_documentation?
- desc "Publish docs to RubyForge."
- task :docs => doc_task do
+ desc 'Publish docs to RubyForge.'
+ task docs: doc_task do
config = YAML.load(
File.read(File.expand_path('~/.rubyforge/user-config.yml'))
)
@@ -66,26 +66,26 @@ class Jeweler
host = "#{config['username']}@rubyforge.org"
remote_dir = "/var/www/gforge-projects/#{project}/#{remote_doc_path}"
- local_dir = case self.doc_task.to_sym
+ local_dir = case doc_task.to_sym
when :rdoc then 'rdoc'
when :yardoc then 'doc'
- when 'doc:app'.to_sym then 'doc/app'
+ when 'doc:app'.to_sym then 'doc/app'
else
- raise "Unsure what to run to generate documentation. Please set doc_task and re-run."
+ raise 'Unsure what to run to generate documentation. Please set doc_task and re-run.'
end
- sh %{rsync --archive --verbose --delete #{local_dir}/ #{host}:#{remote_dir}}
+ sh %(rsync --archive --verbose --delete #{local_dir}/ #{host}:#{remote_dir})
end
end
end
if publish_documentation?
- desc "Release RDoc documentation to RubyForge"
- task :release => "rubyforge:release:docs"
+ desc 'Release RDoc documentation to RubyForge'
+ task release: 'rubyforge:release:docs'
end
end
- task :release => 'rubyforge:release'
+ task release: 'rubyforge:release'
end
def publish_documentation?
diff --git a/lib/jeweler/rubygems_dot_org_tasks.rb b/lib/jeweler/rubygems_dot_org_tasks.rb
index 026c740..8edb0fe 100644
--- a/lib/jeweler/rubygems_dot_org_tasks.rb
+++ b/lib/jeweler/rubygems_dot_org_tasks.rb
@@ -26,13 +26,13 @@ class Jeweler
def define
namespace :gemcutter do
- desc "Release gem to Gemcutter"
- task :release => [:gemspec, :build] do
+ desc 'Release gem to Gemcutter'
+ task release: [:gemspec, :build] do
jeweler.release_gem_to_rubygems
end
end
- task :release => 'gemcutter:release'
+ task release: 'gemcutter:release'
end
end
end
diff --git a/lib/jeweler/rubygems_tasks.rb b/lib/jeweler/rubygems_tasks.rb
index 90fd424..039b809 100644
--- a/lib/jeweler/rubygems_tasks.rb
+++ b/lib/jeweler/rubygems_tasks.rb
@@ -26,13 +26,13 @@ class Jeweler
def define
namespace :rubygems do
- desc "Release gem to Gemcutter"
- task :release => [:gemspec, :build] do
+ desc 'Release gem to Gemcutter'
+ task release: [:gemspec, :build] do
jeweler.release_gem_to_rubygems
end
end
- task :release => 'rubygems:release'
+ task release: 'rubygems:release'
end
end
end
diff --git a/lib/jeweler/specification.rb b/lib/jeweler/specification.rb
index 2ff476d..1557d4c 100644
--- a/lib/jeweler/specification.rb
+++ b/lib/jeweler/specification.rb
@@ -45,11 +45,11 @@ class Jeweler
end
if blank?(files) && repo
- base_dir_with_trailing_separator = File.join(base_dir, "")
+ base_dir_with_trailing_separator = File.join(base_dir, '')
- ignored_files = repo.lib.ignored_files + [".gitignore"]
+ ignored_files = repo.lib.ignored_files + ['.gitignore']
self.files = (repo.ls_files(base_dir).keys - ignored_files).compact.map do |file|
- File.expand_path(file).sub(base_dir_with_trailing_separator, "")
+ File.expand_path(file).sub(base_dir_with_trailing_separator, '')
end
end
@@ -69,15 +69,14 @@ class Jeweler
if File.exist?('Gemfile')
require 'bundler'
- bundler = Bundler.load
- bundler.dependencies_for(:default, :runtime).each do |dependency|
- self.add_dependency dependency.name, *dependency.requirement.as_list
+ bundler_runtime = Bundler.load
+ bundler_dependencies_for(bundler_runtime, :default, :runtime).each do |dependency|
+ add_dependency dependency.name, *dependency.requirement.as_list
end
- bundler.dependencies_for(:development).each do |dependency|
- self.add_development_dependency dependency.name, *dependency.requirement.as_list
+ bundler_dependencies_for(bundler_runtime, :development).each do |dependency|
+ add_development_dependency dependency.name, *dependency.requirement.as_list
end
end
-
end
end
@@ -89,7 +88,19 @@ class Jeweler
end
end
- private
+ private
+
+ # Backported (or rather forward-ported) from Bunder::Runtime#dependencies_for.
+ # This method was available until Bundler 1.13, and then removed. We need it
+ # to be able to tell which gems are listed in the Gemfile without loading
+ # those gems first.
+ def bundler_dependencies_for(bundler_runtime, *groups)
+ if groups.empty?
+ bundler_runtime.dependencies
+ else
+ bundler_runtime.dependencies.select {|d| (groups & d.groups).any? }
+ end
+ end
def blank?(value)
value.nil? || value.empty?
@@ -97,10 +108,10 @@ class Jeweler
end
end
-
# Workaround for cloning/duping a Gem::Specification
# documented in http://github.com/technicalpickles/jeweler/issues#issue/73
Gem::Specification.class_eval do
+ # TODO: fix 'warning: method redefined; discarding old initialize_copy'
def initialize_copy(original)
super
diff --git a/lib/jeweler/tasks.rb b/lib/jeweler/tasks.rb
index 801e290..c51af3d 100644
--- a/lib/jeweler/tasks.rb
+++ b/lib/jeweler/tasks.rb
@@ -33,11 +33,12 @@ class Jeweler
# The block variable gem is actually a Gem::Specification, so you can
# do anything you would normally do with a Gem::Specification.
# For more details, see the official gemspec reference:
- # http://docs.rubygems.org/read/chapter/20
+ # http://guides.rubygems.org/specification-reference
#
# In addition, it provides reasonable defaults for several values. See Jeweler::Specification for more details.
class Tasks < ::Rake::TaskLib
- attr_accessor :gemspec, :jeweler, :gemspec_building_block
+ attr_accessor :gemspec, :gemspec_building_block
+ attr_writer :jeweler
def initialize(gemspec = nil, &gemspec_building_block)
@gemspec = gemspec || Gem::Specification.new
@@ -48,14 +49,16 @@ class Jeweler
end
def jeweler
- if @jeweler.nil?
- @jeweler = Jeweler.new(gemspec)
- gemspec_building_block.call gemspec if gemspec_building_block
- end
- @jeweler
+ @jeweler ||= jeweler!
end
- private
+ private
+
+ def jeweler!
+ j = Jeweler.new(gemspec)
+ gemspec_building_block.call gemspec if gemspec_building_block
+ j
+ end
def yield_gemspec_set_version?
yielded_gemspec = @gemspec.dup
@@ -65,7 +68,7 @@ class Jeweler
gemspec_building_block.call(yielded_gemspec) if gemspec_building_block
- ! yielded_gemspec.version.nil?
+ !yielded_gemspec.version.nil?
end
def release_args
@@ -74,61 +77,58 @@ class Jeweler
args[:branch] = ENV['BRANCH']
args[:local_branch] = ENV['LOCAL_BRANCH']
args[:remote_branch] = ENV['REMOTE_BRANCH']
- return args
+ args
end
def define
task :version_required do
- if jeweler.expects_version_file? && !jeweler.version_file_exists?
+ if jeweler.expects_version_file? && !jeweler.version_file_exist?
abort "Expected VERSION or VERSION.yml to exist. Use 'rake version:write' to create an initial one."
end
end
task :gemspec_required do
- if ! File.exist?(jeweler.gemspec_helper.path)
+ unless File.exist?(jeweler.gemspec_helper.path)
abort "Expected #{jeweler.gemspec_helper.path} to exist. See 'rake gemspec:write' to create it"
end
end
-
- desc "Build gem into pkg/"
+ desc 'Build gem into pkg/'
task :build do
jeweler.build_gem
end
-
-
- desc "Build and install gem using `gem install`"
- task :install => [:build] do
+ desc 'Build and install gem using `gem install`'
+ task install: [:build] do
jeweler.install_gem
end
- desc "Displays the current version"
- task :version => :version_required do
+ desc 'Displays the current version'
+ task version: :version_required do
$stdout.puts "Current version: #{jeweler.version}"
end
- desc "Release gem"
- task :release => :clean do
+ desc 'Release gem'
+ task release: :clean do
end
- desc "Generate and validate gemspec"
- task :gemspec => ['gemspec:generate', 'gemspec:validate']
+ desc 'Generate and validate gemspec'
+ task gemspec: ['gemspec:generate', 'gemspec:validate']
namespace :gemspec do
- desc "Validates the gemspec on the filesystem"
- task :validate => :gemspec_required do
+ desc 'Validates the gemspec on the filesystem'
+ task validate: :gemspec_required do
jeweler.validate_gemspec
end
- desc "Regenerate the gemspec on the filesystem"
- task :generate => :version_required do
+ desc 'Regenerate the gemspec on the filesystem'
+ task generate: :version_required do
jeweler.write_gemspec
end
- desc "Display the gemspec for debugging purposes, as jeweler knows it (not from the filesystem)"
+ desc 'Display the gemspec for debugging purposes, as jeweler knows it (not from the filesystem)'
task :debug do
- # TODO move to a command
+ # TODO: move to a command
jeweler.gemspec_helper.spec.version ||= begin
jeweler.version_helper.refresh
jeweler.version_helper.to_s
@@ -137,39 +137,41 @@ class Jeweler
puts jeweler.gemspec_helper.to_ruby
end
- desc "Regenerate and validate gemspec, and then commits and pushes to git"
+ desc 'Regenerate and validate gemspec, and then commits and pushes to git'
task :release do
jeweler.release_gemspec(release_args)
end
end
- task :release => 'gemspec:release'
-
+ task release: 'gemspec:release'
unless yield_gemspec_set_version?
namespace :version do
- desc "Writes out an explicit version. Respects the following environment variables, or defaults to 0: MAJOR, MINOR, PATCH. Also recognizes BUILD, which defaults to nil"
+ desc 'Writes out an explicit version. Respects the following environment variables, or defaults to 0: MAJOR, MINOR, PATCH. Also recognizes BUILD, which defaults to nil'
task :write do
- major, minor, patch, build = ENV['MAJOR'].to_i, ENV['MINOR'].to_i, ENV['PATCH'].to_i, (ENV['BUILD'] || nil )
- jeweler.write_version(major, minor, patch, build, :announce => false, :commit => false)
+ major = ENV['MAJOR'].to_i
+ minor = ENV['MINOR'].to_i
+ patch = ENV['PATCH'].to_i
+ build = (ENV['BUILD'] || nil)
+ jeweler.write_version(major, minor, patch, build, announce: false, commit: false)
$stdout.puts "Updated version: #{jeweler.version}"
end
namespace :bump do
- desc "Bump the major version by 1"
- task :major => [:version_required, :version] do
+ desc 'Bump the major version by 1'
+ task major: [:version_required, :version] do
jeweler.bump_major_version
$stdout.puts "Updated version: #{jeweler.version}"
end
- desc "Bump the a minor version by 1"
- task :minor => [:version_required, :version] do
+ desc 'Bump the a minor version by 1'
+ task minor: [:version_required, :version] do
jeweler.bump_minor_version
$stdout.puts "Updated version: #{jeweler.version}"
end
- desc "Bump the patch version by 1"
- task :patch => [:version_required, :version] do
+ desc 'Bump the patch version by 1'
+ task patch: [:version_required, :version] do
jeweler.bump_patch_version
$stdout.puts "Updated version: #{jeweler.version}"
end
@@ -177,45 +179,44 @@ class Jeweler
end
end
-
namespace :git do
- desc "Tag and push release to git. (happens by default with `rake release`)"
+ desc 'Tag and push release to git. (happens by default with `rake release`)'
task :release do
jeweler.release_to_git(release_args)
end
end
- task :release => 'git:release'
+ task release: 'git:release'
unless File.exist?('Gemfile')
- desc "Check that runtime and development dependencies are installed"
+ desc 'Check that runtime and development dependencies are installed'
task :check_dependencies do
jeweler.check_dependencies
end
namespace :check_dependencies do
- desc "Check that runtime dependencies are installed"
- task :runtime do
+ desc 'Check that runtime dependencies are installed'
+ task :runtime do
jeweler.check_dependencies(:runtime)
end
- desc"Check that development dependencies are installed"
+ desc'Check that development dependencies are installed'
task :development do
jeweler.check_dependencies(:development)
end
end
end
- desc "Start IRB with all runtime dependencies loaded"
- task :console, [:script] do |t,args|
- # TODO move to a command
- dirs = ['ext', 'lib'].select { |dir| File.directory?(dir) }
+ desc 'Start IRB with all runtime dependencies loaded'
+ task :console, [:script] do |_t, args|
+ # TODO: move to a command
+ dirs = %w(ext lib).select { |dir| File.directory?(dir) }
original_load_path = $LOAD_PATH
- cmd = if File.exist?('Gemfile')
- require 'bundler'
- Bundler.setup(:default)
+ _cmd = if File.exist?('Gemfile')
+ require 'bundler'
+ Bundler.setup(:default)
end
# add the project code directories
@@ -231,9 +232,8 @@ class Jeweler
IRB.start
# return the $LOAD_PATH to it's original state
- $LOAD_PATH.reject! { |path| !(original_load_path.include?(path)) }
+ $LOAD_PATH.reject! { |path| !original_load_path.include?(path) }
end
-
end
end
end
diff --git a/lib/jeweler/templates/Gemfile b/lib/jeweler/templates/Gemfile
index 8b7d4f4..5c7fbd9 100644
--- a/lib/jeweler/templates/Gemfile
+++ b/lib/jeweler/templates/Gemfile
@@ -1,4 +1,4 @@
-source "http://rubygems.org"
+source "https://rubygems.org"
# Add dependencies required to use your gem here.
# Example:
# gem "activesupport", ">= 2.3.5"
diff --git a/lib/jeweler/templates/bacon/flunking.rb b/lib/jeweler/templates/bacon/flunking.rb
index 8ee8f9b..6b70149 100644
--- a/lib/jeweler/templates/bacon/flunking.rb
+++ b/lib/jeweler/templates/bacon/flunking.rb
@@ -1,7 +1,7 @@
require 'spec_helper'
-describe "<%= constant_name %>" do
- it "fails" do
- should.flunk "hey buddy, you should probably rename this file and start specing for real"
+describe '<%= constant_name %>' do
+ it 'fails' do
+ should.flunk 'hey buddy, you should probably rename this file and start specing for real'
end
end
diff --git a/lib/jeweler/templates/micronaut/flunking.rb b/lib/jeweler/templates/micronaut/flunking.rb
index 4d9db5d..0ef4afa 100644
--- a/lib/jeweler/templates/micronaut/flunking.rb
+++ b/lib/jeweler/templates/micronaut/flunking.rb
@@ -1,7 +1,7 @@
require 'example_helper'
-describe "<%= constant_name %>" do
- it "fails" do
- fail "hey buddy, you should probably rename this file and start specing for real"
+describe '<%= constant_name %>' do
+ it 'fails' do
+ fail 'hey buddy, you should probably rename this file and start specing for real'
end
end
diff --git a/lib/jeweler/templates/minitest/flunking.rb b/lib/jeweler/templates/minitest/flunking.rb
index ca346ac..7683952 100644
--- a/lib/jeweler/templates/minitest/flunking.rb
+++ b/lib/jeweler/templates/minitest/flunking.rb
@@ -1,6 +1,6 @@
require 'helper'
-class Test<%= constant_name %> < MiniTest::Unit::TestCase
+class Test<%= constant_name %> < MiniTest::Test
def test_something_for_real
flunk "hey buddy, you should probably rename this file and start testing for real"
end
diff --git a/lib/jeweler/templates/minitest/helper.rb b/lib/jeweler/templates/minitest/helper.rb
index a50840f..0d67742 100644
--- a/lib/jeweler/templates/minitest/helper.rb
+++ b/lib/jeweler/templates/minitest/helper.rb
@@ -1,13 +1,13 @@
<%= render_template 'simplecov.erb' %>
require 'rubygems'
<%= render_template 'bundler_setup.erb' %>
-require 'minitest/unit'
+require 'minitest/test'
$LOAD_PATH.unshift(File.dirname(__FILE__))
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
require '<%= require_name %>'
-class MiniTest::Unit::TestCase
+class MiniTest::Test
end
-MiniTest::Unit.autorun
+require 'minitest/autorun'
diff --git a/lib/jeweler/templates/riot/flunking.rb b/lib/jeweler/templates/riot/flunking.rb
index 4ab308c..0fb274d 100644
--- a/lib/jeweler/templates/riot/flunking.rb
+++ b/lib/jeweler/templates/riot/flunking.rb
@@ -1,6 +1,6 @@
require 'teststrap'
-context "<%= require_name %>" do
+context '<%= require_name %>' do
setup do
false
end
diff --git a/lib/jeweler/templates/rspec/flunking.rb b/lib/jeweler/templates/rspec/flunking.rb
index 137a66d..36ef427 100644
--- a/lib/jeweler/templates/rspec/flunking.rb
+++ b/lib/jeweler/templates/rspec/flunking.rb
@@ -1,7 +1,7 @@
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
-describe "<%= constant_name %>" do
- it "fails" do
- fail "hey buddy, you should probably rename this file and start specing for real"
+describe '<%= constant_name %>' do
+ it 'fails' do
+ fail 'hey buddy, you should probably rename this file and start specing for real'
end
end
diff --git a/lib/jeweler/templates/shindo/flunking.rb b/lib/jeweler/templates/shindo/flunking.rb
index 456efb2..887f3af 100644
--- a/lib/jeweler/templates/shindo/flunking.rb
+++ b/lib/jeweler/templates/shindo/flunking.rb
@@ -1,8 +1,8 @@
require File.expand_path(File.dirname(__FILE__) + '/tests_helper')
-Shindo.tests("<%= constant_name %>") do
- test("fails") do
- "hey buddy, you should probably rename this file and start specing for real"
+Shindo.tests('<%= constant_name %>') do
+ test('fails') do
+ 'hey buddy, you should probably rename this file and start specing for real'
false
end
end
diff --git a/lib/jeweler/templates/testspec/flunking.rb b/lib/jeweler/templates/testspec/flunking.rb
index 1882479..973c216 100644
--- a/lib/jeweler/templates/testspec/flunking.rb
+++ b/lib/jeweler/templates/testspec/flunking.rb
@@ -1,7 +1,7 @@
require File.expand_path(File.dirname(__FILE__) + '/test_helper')
-describe "<%= constant_name %>" do
- it "fails" do
- fail "hey buddy, you should probably rename this file and start specing for real"
+describe '<%= constant_name %>' do
+ it 'fails' do
+ fail 'hey buddy, you should probably rename this file and start specing for real'
end
end
diff --git a/lib/jeweler/version_helper.rb b/lib/jeweler/version_helper.rb
index 3eee406..8d20fb5 100644
--- a/lib/jeweler/version_helper.rb
+++ b/lib/jeweler/version_helper.rb
@@ -13,16 +13,16 @@ class Jeweler
module YamlExtension
def write
File.open(yaml_path, 'w+') do |f|
- YAML.dump(self.to_hash, f)
+ YAML.dump(to_hash, f)
end
end
def to_hash
{
- :major => major,
- :minor => minor,
- :patch => patch,
- :build => build
+ major: major,
+ minor: minor,
+ patch: patch,
+ build: build
}
end
@@ -39,7 +39,7 @@ class Jeweler
end
def read_yaml
- if File.exists?(yaml_path)
+ if File.exist?(yaml_path)
YAML.load_file(yaml_path)
else
raise VersionYmlError, "#{yaml_path} does not exist!"
@@ -86,14 +86,12 @@ class Jeweler
def initialize(base_dir)
self.base_dir = base_dir
- if File.exists?(yaml_path)
+ if File.exist?(yaml_path)
extend YamlExtension
parse_yaml
else
extend PlaintextExtension
- if File.exists?(plaintext_path)
- parse_plaintext
- end
+ parse_plaintext if File.exist?(plaintext_path)
end
end
@@ -115,7 +113,7 @@ class Jeweler
@build = nil
end
- def update_to(major, minor, patch, build=nil)
+ def update_to(major, minor, patch, build = nil)
@major = major
@minor = minor
@patch = patch
@@ -127,15 +125,20 @@ class Jeweler
end
def yaml_path
- denormalized_path = File.join(@base_dir, 'VERSION.yml')
- absolute_path = File.expand_path(denormalized_path)
- absolute_path.gsub(Dir.getwd + File::SEPARATOR, '')
+ path_to_version_file('VERSION.yml')
end
def plaintext_path
- denormalized_path = File.join(@base_dir, 'VERSION')
+ path_to_version_file('VERSION')
+ end
+
+ private
+
+ def path_to_version_file(filename)
+ denormalized_path = File.join(@base_dir, filename)
absolute_path = File.expand_path(denormalized_path)
absolute_path.gsub(Dir.getwd + File::SEPARATOR, '')
end
+
end
end
diff --git a/metadata.yml b/metadata.yml
deleted file mode 100644
index a9b462b..0000000
--- a/metadata.yml
+++ /dev/null
@@ -1,379 +0,0 @@
---- !ruby/object:Gem::Specification
-name: jeweler
-version: !ruby/object:Gem::Version
- version: 2.0.1
-platform: ruby
-authors:
-- Josh Nichols
-- Yusuke Murata
-autorequire:
-bindir: bin
-cert_chain: []
-date: 2014-01-29 00:00:00.000000000 Z
-dependencies:
-- !ruby/object:Gem::Dependency
- name: rake
- requirement: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: '0'
- type: :runtime
- prerelease: false
- version_requirements: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: '0'
-- !ruby/object:Gem::Dependency
- name: git
- requirement: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: 1.2.5
- type: :runtime
- prerelease: false
- version_requirements: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: 1.2.5
-- !ruby/object:Gem::Dependency
- name: nokogiri
- requirement: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: 1.5.10
- type: :runtime
- prerelease: false
- version_requirements: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: 1.5.10
-- !ruby/object:Gem::Dependency
- name: github_api
- requirement: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: '0'
- type: :runtime
- prerelease: false
- version_requirements: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: '0'
-- !ruby/object:Gem::Dependency
- name: highline
- requirement: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: 1.6.15
- type: :runtime
- prerelease: false
- version_requirements: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: 1.6.15
-- !ruby/object:Gem::Dependency
- name: bundler
- requirement: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: '1.0'
- type: :runtime
- prerelease: false
- version_requirements: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: '1.0'
-- !ruby/object:Gem::Dependency
- name: rdoc
- requirement: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: '0'
- type: :runtime
- prerelease: false
- version_requirements: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: '0'
-- !ruby/object:Gem::Dependency
- name: builder
- requirement: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: '0'
- type: :runtime
- prerelease: false
- version_requirements: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: '0'
-- !ruby/object:Gem::Dependency
- name: yard
- requirement: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: 0.8.5
- type: :development
- prerelease: false
- version_requirements: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: 0.8.5
-- !ruby/object:Gem::Dependency
- name: bluecloth
- requirement: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: '0'
- type: :development
- prerelease: false
- version_requirements: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: '0'
-- !ruby/object:Gem::Dependency
- name: cucumber
- requirement: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: 1.1.4
- type: :development
- prerelease: false
- version_requirements: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: 1.1.4
-- !ruby/object:Gem::Dependency
- name: simplecov
- requirement: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: '0'
- type: :development
- prerelease: false
- version_requirements: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: '0'
-description: Simple and opinionated helper for creating Rubygem projects on GitHub
-email:
-- josh@technicalpickles.com
-- info@muratayusuke.com
-executables:
-- jeweler
-extensions: []
-extra_rdoc_files:
-- ChangeLog.markdown
-- LICENSE.txt
-- README.markdown
-files:
-- .coveralls.yml
-- .document
-- .travis.yml
-- .yardopts
-- ChangeLog.markdown
-- Gemfile
-- LICENSE.txt
-- README.markdown
-- Rakefile
-- bin/jeweler
-- features/generator/cucumber.feature
-- features/generator/directory_layout.feature
-- features/generator/dotdocument.feature
-- features/generator/env_options.feature
-- features/generator/gemfile.feature
-- features/generator/git.feature
-- features/generator/license.feature
-- features/generator/rakefile.feature
-- features/generator/readme.feature
-- features/generator/test.feature
-- features/generator/test_helper.feature
-- features/placeholder.feature
-- features/step_definitions/debug_steps.rb
-- features/step_definitions/filesystem_steps.rb
-- features/step_definitions/generator_steps.rb
-- features/step_definitions/task_steps.rb
-- features/support/env.rb
-- features/tasks/build_gem.feature
-- features/tasks/version.feature
-- features/tasks/version_bumping.feature
-- jeweler.gemspec
-- lib/jeweler.rb
-- lib/jeweler/commands.rb
-- lib/jeweler/commands/build_gem.rb
-- lib/jeweler/commands/check_dependencies.rb
-- lib/jeweler/commands/install_gem.rb
-- lib/jeweler/commands/release_gemspec.rb
-- lib/jeweler/commands/release_to_git.rb
-- lib/jeweler/commands/release_to_rubygems.rb
-- lib/jeweler/commands/validate_gemspec.rb
-- lib/jeweler/commands/version/base.rb
-- lib/jeweler/commands/version/bump_major.rb
-- lib/jeweler/commands/version/bump_minor.rb
-- lib/jeweler/commands/version/bump_patch.rb
-- lib/jeweler/commands/version/write.rb
-- lib/jeweler/commands/write_gemspec.rb
-- lib/jeweler/errors.rb
-- lib/jeweler/gemcutter_tasks.rb
-- lib/jeweler/gemspec_helper.rb
-- lib/jeweler/generator.rb
-- lib/jeweler/generator/application.rb
-- lib/jeweler/generator/bacon_mixin.rb
-- lib/jeweler/generator/github_mixin.rb
-- lib/jeweler/generator/micronaut_mixin.rb
-- lib/jeweler/generator/minitest_mixin.rb
-- lib/jeweler/generator/options.rb
-- lib/jeweler/generator/rdoc_mixin.rb
-- lib/jeweler/generator/riot_mixin.rb
-- lib/jeweler/generator/rspec_mixin.rb
-- lib/jeweler/generator/shindo_mixin.rb
-- lib/jeweler/generator/shoulda_mixin.rb
-- lib/jeweler/generator/testspec_mixin.rb
-- lib/jeweler/generator/testunit_mixin.rb
-- lib/jeweler/generator/yard_mixin.rb
-- lib/jeweler/rubyforge_tasks.rb
-- lib/jeweler/rubygems_dot_org_tasks.rb
-- lib/jeweler/rubygems_tasks.rb
-- lib/jeweler/specification.rb
-- lib/jeweler/tasks.rb
-- lib/jeweler/templates/.document
-- lib/jeweler/templates/.gitignore
-- lib/jeweler/templates/Gemfile
-- lib/jeweler/templates/LICENSE.txt
-- lib/jeweler/templates/README.rdoc
-- lib/jeweler/templates/Rakefile
-- lib/jeweler/templates/bacon/flunking.rb
-- lib/jeweler/templates/bacon/helper.rb
-- lib/jeweler/templates/bundler_setup.erb
-- lib/jeweler/templates/features/default.feature
-- lib/jeweler/templates/features/support/env.rb
-- lib/jeweler/templates/jeweler_tasks.erb
-- lib/jeweler/templates/micronaut/flunking.rb
-- lib/jeweler/templates/micronaut/helper.rb
-- lib/jeweler/templates/minitest/flunking.rb
-- lib/jeweler/templates/minitest/helper.rb
-- lib/jeweler/templates/other_tasks.erb
-- lib/jeweler/templates/riot/flunking.rb
-- lib/jeweler/templates/riot/helper.rb
-- lib/jeweler/templates/rspec/.rspec
-- lib/jeweler/templates/rspec/flunking.rb
-- lib/jeweler/templates/rspec/helper.rb
-- lib/jeweler/templates/shindo/flunking.rb
-- lib/jeweler/templates/shindo/helper.rb
-- lib/jeweler/templates/shoulda/flunking.rb
-- lib/jeweler/templates/shoulda/helper.rb
-- lib/jeweler/templates/simplecov.erb
-- lib/jeweler/templates/testspec/flunking.rb
-- lib/jeweler/templates/testspec/helper.rb
-- lib/jeweler/templates/testunit/flunking.rb
-- lib/jeweler/templates/testunit/helper.rb
-- lib/jeweler/version.rb
-- lib/jeweler/version_helper.rb
-- test/fixtures/bar/VERSION.yml
-- test/fixtures/bar/bin/foo_the_ultimate_bin
-- test/fixtures/bar/hey_include_me_in_gemspec
-- test/fixtures/bar/lib/foo_the_ultimate_lib.rb
-- test/fixtures/existing-project-with-version-constant/.document
-- test/fixtures/existing-project-with-version-constant/.gitignore
-- test/fixtures/existing-project-with-version-constant/LICENSE.txt
-- test/fixtures/existing-project-with-version-constant/README.rdoc
-- test/fixtures/existing-project-with-version-constant/Rakefile
-- test/fixtures/existing-project-with-version-constant/existing-project-with-version.gemspec
-- test/fixtures/existing-project-with-version-constant/lib/existing_project_with_version.rb
-- test/fixtures/existing-project-with-version-constant/test/existing_project_with_version_test.rb
-- test/fixtures/existing-project-with-version-constant/test/test_helper.rb
-- test/fixtures/existing-project-with-version-plaintext/.document
-- test/fixtures/existing-project-with-version-plaintext/.gitignore
-- test/fixtures/existing-project-with-version-plaintext/LICENSE.txt
-- test/fixtures/existing-project-with-version-plaintext/README.rdoc
-- test/fixtures/existing-project-with-version-plaintext/Rakefile
-- test/fixtures/existing-project-with-version-plaintext/VERSION
-- test/fixtures/existing-project-with-version-plaintext/existing-project-with-version.gemspec
-- test/fixtures/existing-project-with-version-plaintext/lib/existing_project_with_version.rb
-- test/fixtures/existing-project-with-version-plaintext/test/existing_project_with_version_test.rb
-- test/fixtures/existing-project-with-version-plaintext/test/test_helper.rb
-- test/fixtures/existing-project-with-version-yaml/.document
-- test/fixtures/existing-project-with-version-yaml/.gitignore
-- test/fixtures/existing-project-with-version-yaml/LICENSE.txt
-- test/fixtures/existing-project-with-version-yaml/README.rdoc
-- test/fixtures/existing-project-with-version-yaml/Rakefile
-- test/fixtures/existing-project-with-version-yaml/VERSION.yml
-- test/fixtures/existing-project-with-version-yaml/bin/foo_the_ultimate_bin
-- test/fixtures/existing-project-with-version-yaml/existing-project-with-version.gemspec
-- test/fixtures/existing-project-with-version-yaml/lib/existing_project_with_version.rb
-- test/fixtures/existing-project-with-version-yaml/test/existing_project_with_version_test.rb
-- test/fixtures/existing-project-with-version-yaml/test/test_helper.rb
-- test/geminstaller.yml
-- test/jeweler/commands/test_build_gem.rb
-- test/jeweler/commands/test_install_gem.rb
-- test/jeweler/commands/test_release_to_gemcutter.rb
-- test/jeweler/commands/test_release_to_git.rb
-- test/jeweler/commands/test_release_to_github.rb
-- test/jeweler/commands/test_validate_gemspec.rb
-- test/jeweler/commands/test_write_gemspec.rb
-- test/jeweler/commands/version/test_base.rb
-- test/jeweler/commands/version/test_bump_major.rb
-- test/jeweler/commands/version/test_bump_minor.rb
-- test/jeweler/commands/version/test_bump_patch.rb
-- test/jeweler/commands/version/test_write.rb
-- test/jeweler/generator/test_application.rb
-- test/jeweler/generator/test_options.rb
-- test/jeweler/test_gemspec_helper.rb
-- test/jeweler/test_generator.rb
-- test/jeweler/test_generator_initialization.rb
-- test/jeweler/test_generator_mixins.rb
-- test/jeweler/test_specification.rb
-- test/jeweler/test_tasks.rb
-- test/jeweler/test_version_helper.rb
-- test/shoulda_macros/jeweler_macros.rb
-- test/test_helper.rb
-- test/test_jeweler.rb
-homepage: http://github.com/technicalpickles/jeweler
-licenses:
-- MIT
-metadata: {}
-post_install_message:
-rdoc_options: []
-require_paths:
-- lib
-required_ruby_version: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: '0'
-required_rubygems_version: !ruby/object:Gem::Requirement
- requirements:
- - - '>='
- - !ruby/object:Gem::Version
- version: '0'
-requirements: []
-rubyforge_project:
-rubygems_version: 2.0.3
-signing_key:
-specification_version: 4
-summary: Opinionated tool for creating and managing RubyGem projects
-test_files: []
diff --git a/test/fixtures/bar/lib/foo_the_ultimate_lib.rb b/test/fixtures/bar/lib/foo_the_ultimate_lib.rb
index a99ab54..bc1a7bc 100644
--- a/test/fixtures/bar/lib/foo_the_ultimate_lib.rb
+++ b/test/fixtures/bar/lib/foo_the_ultimate_lib.rb
@@ -1 +1 @@
-# Uhuh
\ No newline at end of file
+# Uhuh
diff --git a/test/fixtures/existing-project-with-version-constant/Rakefile b/test/fixtures/existing-project-with-version-constant/Rakefile
index f82c8fa..db8632f 100644
--- a/test/fixtures/existing-project-with-version-constant/Rakefile
+++ b/test/fixtures/existing-project-with-version-constant/Rakefile
@@ -4,16 +4,16 @@ require 'rake'
begin
require 'jeweler'
Jeweler::Tasks.new do |gem|
- gem.version = "1.0.0"
- gem.name = "existing-project-with-version"
- gem.summary = %Q{Summarize your gem}
- gem.email = "josh@technicalpickles.com"
- gem.homepage = "http://github.com/technicalpickles/existing-project-with-version"
- gem.authors = ["Josh Nichols"]
+ gem.version = '1.0.0'
+ gem.name = 'existing-project-with-version'
+ gem.summary = %(Summarize your gem)
+ gem.email = 'josh@technicalpickles.com'
+ gem.homepage = 'http://github.com/technicalpickles/existing-project-with-version'
+ gem.authors = ['Josh Nichols']
# gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
end
rescue LoadError
- puts "Jeweler not available. Install it with: gem install technicalpickles-jeweler -s http://gems.github.com"
+ puts 'Jeweler not available. Install it with: gem install technicalpickles-jeweler -s http://gems.github.com'
end
require 'rake/testtask'
@@ -32,12 +32,11 @@ begin
end
rescue LoadError
task :rcov do
- abort "RCov is not available. In order to run rcov, you must: gem install spicycode-rcov"
+ abort 'RCov is not available. In order to run rcov, you must: gem install spicycode-rcov'
end
end
-
-task :default => :test
+task default: :test
require 'rdoc/task'
Rake::RDocTask.new do |rdoc|
@@ -46,7 +45,7 @@ Rake::RDocTask.new do |rdoc|
config = YAML.load(File.read('VERSION.yml'))
version = "#{config[:major]}.#{config[:minor]}.#{config[:patch]}"
else
- version = ""
+ version = ''
end
rdoc.rdoc_dir = 'rdoc'
@@ -60,20 +59,19 @@ end
begin
require 'rake/contrib/sshpublisher'
namespace :rubyforge do
-
- desc "Release gem and RDoc documentation to RubyForge"
- task :release => ["rubyforge:release:gem", "rubyforge:release:docs"]
-
+ desc 'Release gem and RDoc documentation to RubyForge'
+ task release: ['rubyforge:release:gem', 'rubyforge:release:docs']
+
namespace :release do
- desc "Publish RDoc to RubyForge."
- task :docs => [:rdoc] do
+ desc 'Publish RDoc to RubyForge.'
+ task docs: [:rdoc] do
require 'yaml'
config = YAML.load(
- File.read(File.expand_path('~/.rubyforge/user-config.yml'))
+ File.read(File.expand_path('~/.rubyforge/user-config.yml'))
)
host = "#{config['username']}@rubyforge.org"
- remote_dir = "/var/www/gforge-projects/existing-project-with-version/"
+ remote_dir = '/var/www/gforge-projects/existing-project-with-version/'
local_dir = 'rdoc'
Rake::SshDirPublisher.new(host, remote_dir, local_dir).upload
@@ -81,5 +79,5 @@ begin
end
end
rescue LoadError
- puts "Rake SshDirPublisher is unavailable or your rubyforge environment is not configured."
+ puts 'Rake SshDirPublisher is unavailable or your rubyforge environment is not configured.'
end
diff --git a/test/fixtures/existing-project-with-version-constant/existing-project-with-version.gemspec b/test/fixtures/existing-project-with-version-constant/existing-project-with-version.gemspec
index bb2b920..eb13c4a 100644
--- a/test/fixtures/existing-project-with-version-constant/existing-project-with-version.gemspec
+++ b/test/fixtures/existing-project-with-version-constant/existing-project-with-version.gemspec
@@ -1,29 +1,27 @@
# -*- encoding: utf-8 -*-
Gem::Specification.new do |s|
- s.name = %q{existing-project-with-version}
- s.version = "1.5.3"
+ s.name = 'existing-project-with-version'
+ s.version = '1.5.3'
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
- s.authors = ["Josh Nichols"]
- s.date = %q{2009-03-13}
- s.email = %q{josh@technicalpickles.com}
- s.extra_rdoc_files = ["README.rdoc", "LICENSE"]
- s.files = ["README.rdoc", "VERSION.yml", "lib/existing_project_with_version.rb", "test/existing_project_with_version_test.rb", "test/test_helper.rb", "LICENSE"]
+ s.required_rubygems_version = Gem::Requirement.new('>= 0') if s.respond_to? :required_rubygems_version=
+ s.authors = ['Josh Nichols']
+ s.date = '2009-03-13'
+ s.email = 'josh@technicalpickles.com'
+ s.extra_rdoc_files = ['README.rdoc', 'LICENSE']
+ s.files = ['README.rdoc', 'VERSION.yml', 'lib/existing_project_with_version.rb', 'test/existing_project_with_version_test.rb', 'test/test_helper.rb', 'LICENSE']
s.has_rdoc = true
- s.homepage = %q{http://github.com/technicalpickles/existing-project-with-version}
- s.rdoc_options = ["--inline-source", "--charset=UTF-8"]
- s.require_paths = ["lib"]
- s.rubygems_version = %q{1.3.1}
- s.summary = %q{Summarize your gem}
+ s.homepage = 'http://github.com/technicalpickles/existing-project-with-version'
+ s.rdoc_options = ['--inline-source', '--charset=UTF-8']
+ s.require_paths = ['lib']
+ s.rubygems_version = '1.3.1'
+ s.summary = 'Summarize your gem'
- if s.respond_to? :specification_version then
+ if s.respond_to? :specification_version
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
s.specification_version = 2
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
- else
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0')
end
- else
end
end
diff --git a/test/fixtures/existing-project-with-version-constant/test/existing_project_with_version_test.rb b/test/fixtures/existing-project-with-version-constant/test/existing_project_with_version_test.rb
index d513b57..d517f02 100644
--- a/test/fixtures/existing-project-with-version-constant/test/existing_project_with_version_test.rb
+++ b/test/fixtures/existing-project-with-version-constant/test/existing_project_with_version_test.rb
@@ -1,7 +1,7 @@
require 'test_helper'
class ExistingProjectWithVersionTest < Test::Unit::TestCase
- should "probably rename this file and start testing for real" do
- flunk "hey buddy, you should probably rename this file and start testing for real"
+ should 'probably rename this file and start testing for real' do
+ flunk 'hey buddy, you should probably rename this file and start testing for real'
end
end
diff --git a/test/fixtures/existing-project-with-version-plaintext/Rakefile b/test/fixtures/existing-project-with-version-plaintext/Rakefile
index 05b3125..af356d5 100644
--- a/test/fixtures/existing-project-with-version-plaintext/Rakefile
+++ b/test/fixtures/existing-project-with-version-plaintext/Rakefile
@@ -4,15 +4,15 @@ require 'rake'
begin
require 'jeweler'
Jeweler::Tasks.new do |gem|
- gem.name = "existing-project-with-version"
- gem.summary = %Q{Summarize your gem}
- gem.email = "josh@technicalpickles.com"
- gem.homepage = "http://github.com/technicalpickles/existing-project-with-version"
- gem.authors = ["Josh Nichols"]
+ gem.name = 'existing-project-with-version'
+ gem.summary = %(Summarize your gem)
+ gem.email = 'josh@technicalpickles.com'
+ gem.homepage = 'http://github.com/technicalpickles/existing-project-with-version'
+ gem.authors = ['Josh Nichols']
# gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
end
rescue LoadError
- puts "Jeweler not available. Install it with: gem install technicalpickles-jeweler -s http://gems.github.com"
+ puts 'Jeweler not available. Install it with: gem install technicalpickles-jeweler -s http://gems.github.com'
end
require 'rake/testtask'
@@ -31,12 +31,11 @@ begin
end
rescue LoadError
task :rcov do
- abort "RCov is not available. In order to run rcov, you must: gem install spicycode-rcov"
+ abort 'RCov is not available. In order to run rcov, you must: gem install spicycode-rcov'
end
end
-
-task :default => :test
+task default: :test
require 'rdoc/task'
Rake::RDocTask.new do |rdoc|
@@ -45,7 +44,7 @@ Rake::RDocTask.new do |rdoc|
config = YAML.load(File.read('VERSION.yml'))
version = "#{config[:major]}.#{config[:minor]}.#{config[:patch]}"
else
- version = ""
+ version = ''
end
rdoc.rdoc_dir = 'rdoc'
@@ -59,20 +58,19 @@ end
begin
require 'rake/contrib/sshpublisher'
namespace :rubyforge do
-
- desc "Release gem and RDoc documentation to RubyForge"
- task :release => ["rubyforge:release:gem", "rubyforge:release:docs"]
-
+ desc 'Release gem and RDoc documentation to RubyForge'
+ task release: ['rubyforge:release:gem', 'rubyforge:release:docs']
+
namespace :release do
- desc "Publish RDoc to RubyForge."
- task :docs => [:rdoc] do
+ desc 'Publish RDoc to RubyForge.'
+ task docs: [:rdoc] do
require 'yaml'
config = YAML.load(
- File.read(File.expand_path('~/.rubyforge/user-config.yml'))
+ File.read(File.expand_path('~/.rubyforge/user-config.yml'))
)
host = "#{config['username']}@rubyforge.org"
- remote_dir = "/var/www/gforge-projects/existing-project-with-version/"
+ remote_dir = '/var/www/gforge-projects/existing-project-with-version/'
local_dir = 'rdoc'
Rake::SshDirPublisher.new(host, remote_dir, local_dir).upload
@@ -80,5 +78,5 @@ begin
end
end
rescue LoadError
- puts "Rake SshDirPublisher is unavailable or your rubyforge environment is not configured."
+ puts 'Rake SshDirPublisher is unavailable or your rubyforge environment is not configured.'
end
diff --git a/test/fixtures/existing-project-with-version-plaintext/existing-project-with-version.gemspec b/test/fixtures/existing-project-with-version-plaintext/existing-project-with-version.gemspec
index bb2b920..eb13c4a 100644
--- a/test/fixtures/existing-project-with-version-plaintext/existing-project-with-version.gemspec
+++ b/test/fixtures/existing-project-with-version-plaintext/existing-project-with-version.gemspec
@@ -1,29 +1,27 @@
# -*- encoding: utf-8 -*-
Gem::Specification.new do |s|
- s.name = %q{existing-project-with-version}
- s.version = "1.5.3"
+ s.name = 'existing-project-with-version'
+ s.version = '1.5.3'
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
- s.authors = ["Josh Nichols"]
- s.date = %q{2009-03-13}
- s.email = %q{josh@technicalpickles.com}
- s.extra_rdoc_files = ["README.rdoc", "LICENSE"]
- s.files = ["README.rdoc", "VERSION.yml", "lib/existing_project_with_version.rb", "test/existing_project_with_version_test.rb", "test/test_helper.rb", "LICENSE"]
+ s.required_rubygems_version = Gem::Requirement.new('>= 0') if s.respond_to? :required_rubygems_version=
+ s.authors = ['Josh Nichols']
+ s.date = '2009-03-13'
+ s.email = 'josh@technicalpickles.com'
+ s.extra_rdoc_files = ['README.rdoc', 'LICENSE']
+ s.files = ['README.rdoc', 'VERSION.yml', 'lib/existing_project_with_version.rb', 'test/existing_project_with_version_test.rb', 'test/test_helper.rb', 'LICENSE']
s.has_rdoc = true
- s.homepage = %q{http://github.com/technicalpickles/existing-project-with-version}
- s.rdoc_options = ["--inline-source", "--charset=UTF-8"]
- s.require_paths = ["lib"]
- s.rubygems_version = %q{1.3.1}
- s.summary = %q{Summarize your gem}
+ s.homepage = 'http://github.com/technicalpickles/existing-project-with-version'
+ s.rdoc_options = ['--inline-source', '--charset=UTF-8']
+ s.require_paths = ['lib']
+ s.rubygems_version = '1.3.1'
+ s.summary = 'Summarize your gem'
- if s.respond_to? :specification_version then
+ if s.respond_to? :specification_version
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
s.specification_version = 2
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
- else
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0')
end
- else
end
end
diff --git a/test/fixtures/existing-project-with-version-plaintext/test/existing_project_with_version_test.rb b/test/fixtures/existing-project-with-version-plaintext/test/existing_project_with_version_test.rb
index d513b57..d517f02 100644
--- a/test/fixtures/existing-project-with-version-plaintext/test/existing_project_with_version_test.rb
+++ b/test/fixtures/existing-project-with-version-plaintext/test/existing_project_with_version_test.rb
@@ -1,7 +1,7 @@
require 'test_helper'
class ExistingProjectWithVersionTest < Test::Unit::TestCase
- should "probably rename this file and start testing for real" do
- flunk "hey buddy, you should probably rename this file and start testing for real"
+ should 'probably rename this file and start testing for real' do
+ flunk 'hey buddy, you should probably rename this file and start testing for real'
end
end
diff --git a/test/fixtures/existing-project-with-version-yaml/Rakefile b/test/fixtures/existing-project-with-version-yaml/Rakefile
index 05b3125..af356d5 100644
--- a/test/fixtures/existing-project-with-version-yaml/Rakefile
+++ b/test/fixtures/existing-project-with-version-yaml/Rakefile
@@ -4,15 +4,15 @@ require 'rake'
begin
require 'jeweler'
Jeweler::Tasks.new do |gem|
- gem.name = "existing-project-with-version"
- gem.summary = %Q{Summarize your gem}
- gem.email = "josh@technicalpickles.com"
- gem.homepage = "http://github.com/technicalpickles/existing-project-with-version"
- gem.authors = ["Josh Nichols"]
+ gem.name = 'existing-project-with-version'
+ gem.summary = %(Summarize your gem)
+ gem.email = 'josh@technicalpickles.com'
+ gem.homepage = 'http://github.com/technicalpickles/existing-project-with-version'
+ gem.authors = ['Josh Nichols']
# gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
end
rescue LoadError
- puts "Jeweler not available. Install it with: gem install technicalpickles-jeweler -s http://gems.github.com"
+ puts 'Jeweler not available. Install it with: gem install technicalpickles-jeweler -s http://gems.github.com'
end
require 'rake/testtask'
@@ -31,12 +31,11 @@ begin
end
rescue LoadError
task :rcov do
- abort "RCov is not available. In order to run rcov, you must: gem install spicycode-rcov"
+ abort 'RCov is not available. In order to run rcov, you must: gem install spicycode-rcov'
end
end
-
-task :default => :test
+task default: :test
require 'rdoc/task'
Rake::RDocTask.new do |rdoc|
@@ -45,7 +44,7 @@ Rake::RDocTask.new do |rdoc|
config = YAML.load(File.read('VERSION.yml'))
version = "#{config[:major]}.#{config[:minor]}.#{config[:patch]}"
else
- version = ""
+ version = ''
end
rdoc.rdoc_dir = 'rdoc'
@@ -59,20 +58,19 @@ end
begin
require 'rake/contrib/sshpublisher'
namespace :rubyforge do
-
- desc "Release gem and RDoc documentation to RubyForge"
- task :release => ["rubyforge:release:gem", "rubyforge:release:docs"]
-
+ desc 'Release gem and RDoc documentation to RubyForge'
+ task release: ['rubyforge:release:gem', 'rubyforge:release:docs']
+
namespace :release do
- desc "Publish RDoc to RubyForge."
- task :docs => [:rdoc] do
+ desc 'Publish RDoc to RubyForge.'
+ task docs: [:rdoc] do
require 'yaml'
config = YAML.load(
- File.read(File.expand_path('~/.rubyforge/user-config.yml'))
+ File.read(File.expand_path('~/.rubyforge/user-config.yml'))
)
host = "#{config['username']}@rubyforge.org"
- remote_dir = "/var/www/gforge-projects/existing-project-with-version/"
+ remote_dir = '/var/www/gforge-projects/existing-project-with-version/'
local_dir = 'rdoc'
Rake::SshDirPublisher.new(host, remote_dir, local_dir).upload
@@ -80,5 +78,5 @@ begin
end
end
rescue LoadError
- puts "Rake SshDirPublisher is unavailable or your rubyforge environment is not configured."
+ puts 'Rake SshDirPublisher is unavailable or your rubyforge environment is not configured.'
end
diff --git a/test/fixtures/existing-project-with-version-yaml/existing-project-with-version.gemspec b/test/fixtures/existing-project-with-version-yaml/existing-project-with-version.gemspec
index bb2b920..eb13c4a 100644
--- a/test/fixtures/existing-project-with-version-yaml/existing-project-with-version.gemspec
+++ b/test/fixtures/existing-project-with-version-yaml/existing-project-with-version.gemspec
@@ -1,29 +1,27 @@
# -*- encoding: utf-8 -*-
Gem::Specification.new do |s|
- s.name = %q{existing-project-with-version}
- s.version = "1.5.3"
+ s.name = 'existing-project-with-version'
+ s.version = '1.5.3'
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
- s.authors = ["Josh Nichols"]
- s.date = %q{2009-03-13}
- s.email = %q{josh@technicalpickles.com}
- s.extra_rdoc_files = ["README.rdoc", "LICENSE"]
- s.files = ["README.rdoc", "VERSION.yml", "lib/existing_project_with_version.rb", "test/existing_project_with_version_test.rb", "test/test_helper.rb", "LICENSE"]
+ s.required_rubygems_version = Gem::Requirement.new('>= 0') if s.respond_to? :required_rubygems_version=
+ s.authors = ['Josh Nichols']
+ s.date = '2009-03-13'
+ s.email = 'josh@technicalpickles.com'
+ s.extra_rdoc_files = ['README.rdoc', 'LICENSE']
+ s.files = ['README.rdoc', 'VERSION.yml', 'lib/existing_project_with_version.rb', 'test/existing_project_with_version_test.rb', 'test/test_helper.rb', 'LICENSE']
s.has_rdoc = true
- s.homepage = %q{http://github.com/technicalpickles/existing-project-with-version}
- s.rdoc_options = ["--inline-source", "--charset=UTF-8"]
- s.require_paths = ["lib"]
- s.rubygems_version = %q{1.3.1}
- s.summary = %q{Summarize your gem}
+ s.homepage = 'http://github.com/technicalpickles/existing-project-with-version'
+ s.rdoc_options = ['--inline-source', '--charset=UTF-8']
+ s.require_paths = ['lib']
+ s.rubygems_version = '1.3.1'
+ s.summary = 'Summarize your gem'
- if s.respond_to? :specification_version then
+ if s.respond_to? :specification_version
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
s.specification_version = 2
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
- else
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0')
end
- else
end
end
diff --git a/test/fixtures/existing-project-with-version-yaml/test/existing_project_with_version_test.rb b/test/fixtures/existing-project-with-version-yaml/test/existing_project_with_version_test.rb
index d513b57..d517f02 100644
--- a/test/fixtures/existing-project-with-version-yaml/test/existing_project_with_version_test.rb
+++ b/test/fixtures/existing-project-with-version-yaml/test/existing_project_with_version_test.rb
@@ -1,7 +1,7 @@
require 'test_helper'
class ExistingProjectWithVersionTest < Test::Unit::TestCase
- should "probably rename this file and start testing for real" do
- flunk "hey buddy, you should probably rename this file and start testing for real"
+ should 'probably rename this file and start testing for real' do
+ flunk 'hey buddy, you should probably rename this file and start testing for real'
end
end
diff --git a/test/jeweler/commands/test_build_gem.rb b/test/jeweler/commands/test_build_gem.rb
index 99dec79..515b5b3 100644
--- a/test/jeweler/commands/test_build_gem.rb
+++ b/test/jeweler/commands/test_build_gem.rb
@@ -4,77 +4,75 @@ require 'jeweler/commands/build_gem'
class Jeweler
module Commands
class TestBuildGem < Test::Unit::TestCase
-
- context "after running without a version" do
+ context 'after running without a version' do
setup do
initialize_build_gem_environment
@command.run
end
- should "check if the gemspec helper has a version" do
- assert_received(@gemspec_helper) {|gemspec_helper| gemspec_helper.has_version? }
+ should 'check if the gemspec helper has a version' do
+ assert_received(@gemspec_helper, &:has_version?)
end
should "update version of gemspec helper if the gemspec doesn't have a version" do
- assert_received(@gemspec_helper) {|gemspec_helper| gemspec_helper.update_version(@version_helper)}
+ assert_received(@gemspec_helper) { |gemspec_helper| gemspec_helper.update_version(@version_helper) }
end
should "call gemspec helper's parse" do
- assert_received(@gemspec_helper) {|gemspec_helper| gemspec_helper.parse }
+ assert_received(@gemspec_helper, &:parse)
end
- should "build from parsed gemspec" do
- if Gem::Version.new(`gem -v`) >= Gem::Version.new("2.0.0.a")
- assert_received(Gem::Package) {|builder_class| builder_class.build(@gemspec) }
+ should 'build from parsed gemspec' do
+ if Gem::Version.new(`gem -v`) >= Gem::Version.new('2.0.0.a')
+ assert_received(Gem::Package) { |builder_class| builder_class.build(@gemspec) }
else
- assert_received(Gem::Builder) {|builder_class| builder_class.new(@gemspec) }
- assert_received(@builder) {|builder| builder.build }
+ assert_received(Gem::Builder) { |builder_class| builder_class.new(@gemspec) }
+ assert_received(@builder, &:build)
end
end
should 'make package directory' do
- assert_received(@file_utils) {|file_utils| file_utils.mkdir_p './pkg'}
+ assert_received(@file_utils) { |file_utils| file_utils.mkdir_p './pkg' }
end
should 'move built gem into package directory' do
- assert_received(@file_utils) {|file_utils| file_utils.mv './zomg-1.2.3.gem', './pkg'}
+ assert_received(@file_utils) { |file_utils| file_utils.mv './zomg-1.2.3.gem', './pkg' }
end
end
-
+
context 'after running with a version' do
setup do
initialize_build_gem_environment true
@command.run
end
-
- should "check if the gemspec helper has a version" do
- assert_received(@gemspec_helper) {|gemspec_helper| gemspec_helper.has_version? }
+
+ should 'check if the gemspec helper has a version' do
+ assert_received(@gemspec_helper, &:has_version?)
end
-
+
should "update version of gemspec helper if the gemspec doesn't have a version" do
- assert_received(@gemspec_helper) {|gemspec_helper| gemspec_helper.update_version(@version_helper).never }
+ assert_received(@gemspec_helper) { |gemspec_helper| gemspec_helper.update_version(@version_helper).never }
end
-
end
- build_command_context "build for jeweler" do
+ build_command_context 'build for jeweler' do
setup do
@command = Jeweler::Commands::BuildGem.build_for(@jeweler)
end
- should "assign base_dir" do
+ should 'assign base_dir' do
assert_same @base_dir, @jeweler.base_dir
end
- should "assign gemspec_helper" do
+ should 'assign gemspec_helper' do
assert_same @gemspec_helper, @jeweler.gemspec_helper
end
- should "return BuildGem" do
+ should 'return BuildGem' do
assert_kind_of Jeweler::Commands::BuildGem, @command
end
end
-
+
def initialize_build_gem_environment(has_version = false)
@gemspec = Object.new
stub(@gemspec).file_name { 'zomg-1.2.3.gem' }
@@ -84,10 +82,10 @@ class Jeweler
stub(@gemspec_helper).update_version
stub(@gemspec_helper).has_version? { has_version }
- @version_helper = "Jeweler::VersionHelper"
+ @version_helper = 'Jeweler::VersionHelper'
@builder = Object.new
- if Gem::Version.new(`gem -v`) >= Gem::Version.new("2.0.0.a")
+ if Gem::Version.new(`gem -v`) >= Gem::Version.new('2.0.0.a')
stub(Gem::Package).build { 'zomg-1.2.3.gem' }
else
stub(Gem::Builder).new { @builder }
@@ -106,7 +104,6 @@ class Jeweler
@command.gemspec_helper = @gemspec_helper
@command.version_helper = @version_helper
end
-
end
end
end
diff --git a/test/jeweler/commands/test_install_gem.rb b/test/jeweler/commands/test_install_gem.rb
index 20e0e41..e8735c8 100644
--- a/test/jeweler/commands/test_install_gem.rb
+++ b/test/jeweler/commands/test_install_gem.rb
@@ -3,30 +3,30 @@ require 'test_helper'
class Jeweler
module Commands
class TestInstallGem < Test::Unit::TestCase
- rubyforge_command_context "running" do
+ rubyforge_command_context 'running' do
setup do
- stub(@gemspec_helper).gem_path { 'pkg/zomg-1.1.1.gem' }
+ stub(@gemspec_helper).gem_path { 'pkg/zomg-1.1.1.gem' }
stub(@command).gem_command { 'ruby -S gem' }
stub(@command).sh
@command.run
end
- should "call sh with gem install" do
- assert_received(@command) {|command| command.sh 'ruby -S gem install pkg/zomg-1.1.1.gem' }
+ should 'call sh with gem install' do
+ assert_received(@command) { |command| command.sh 'ruby -S gem install pkg/zomg-1.1.1.gem' }
end
end
- build_command_context "build for jeweler" do
+ build_command_context 'build for jeweler' do
setup do
@command = Jeweler::Commands::InstallGem.build_for(@jeweler)
end
- should "assign gemspec helper" do
+ should 'assign gemspec helper' do
assert_equal @gemspec_helper, @command.gemspec_helper
end
- should "assign output" do
+ should 'assign output' do
assert_equal @output, @command.output
end
end
diff --git a/test/jeweler/commands/test_release_to_gemcutter.rb b/test/jeweler/commands/test_release_to_gemcutter.rb
index dd525b5..d8662ad 100644
--- a/test/jeweler/commands/test_release_to_gemcutter.rb
+++ b/test/jeweler/commands/test_release_to_gemcutter.rb
@@ -7,33 +7,32 @@ class Jeweler
Jeweler::Commands::ReleaseToRubygems.new
end
- gemcutter_command_context "rubyforge_project is defined in gemspec and package exists on rubyforge" do
+ gemcutter_command_context 'rubyforge_project is defined in gemspec and package exists on rubyforge' do
setup do
- stub(@gemspec_helper).gem_path {'pkg/zomg-1.2.3.gem'}
+ stub(@gemspec_helper).gem_path { 'pkg/zomg-1.2.3.gem' }
stub(@command).sh
@command.run
end
- should "push to rubygems" do
+ should 'push to rubygems' do
push_command = "gem push #{@gemspec_helper.gem_path}"
assert_received(@command) { |command| command.sh(push_command) }
end
end
- build_command_context "build for jeweler" do
+ build_command_context 'build for jeweler' do
setup do
@command = Jeweler::Commands::ReleaseToRubygems.build_for(@jeweler)
end
- should "assign gemspec helper" do
+ should 'assign gemspec helper' do
assert_equal @gemspec_helper, @command.gemspec_helper
end
- should "assign output" do
+ should 'assign output' do
assert_equal @output, @command.output
end
end
-
end
end
end
diff --git a/test/jeweler/commands/test_release_to_git.rb b/test/jeweler/commands/test_release_to_git.rb
index 4f0387c..8790956 100644
--- a/test/jeweler/commands/test_release_to_git.rb
+++ b/test/jeweler/commands/test_release_to_git.rb
@@ -3,9 +3,8 @@ require 'test_helper'
class Jeweler
module Commands
class TestReleaseToGit < Test::Unit::TestCase
-
- rubyforge_command_context "running" do
- context "happily" do
+ rubyforge_command_context 'running' do
+ context 'happily' do
setup do
stub(@command).clean_staging_area? { true }
@@ -22,20 +21,19 @@ class Jeweler
@command.run
end
- should "checkout master" do
- assert_received(@repo) {|repo| repo.checkout('master') }
+ should 'checkout master' do
+ assert_received(@repo) { |repo| repo.checkout('master') }
end
- should "push" do
- assert_received(@repo) {|repo| repo.push('origin', 'master:master') }
+ should 'push' do
+ assert_received(@repo) { |repo| repo.push('origin', 'master:master') }
end
-
end
- context "happily with different remote, local branch and remote branch" do
+ context 'happily with different remote, local branch and remote branch' do
setup do
stub(@command).clean_staging_area? { true }
- stub(@command).release_tag { "v1.2.0" }
+ stub(@command).release_tag { 'v1.2.0' }
stub(@repo).checkout(anything)
stub(@repo) do
@@ -47,27 +45,26 @@ class Jeweler
stub(@command).release_not_tagged? { true }
- @command.run({:remote => 'upstream', :local_branch => 'feature', :remote_branch => 'v1'})
+ @command.run(remote: 'upstream', local_branch: 'feature', remote_branch: 'v1')
end
- should "checkout master" do
- assert_received(@repo) {|repo| repo.checkout('feature') }
+ should 'checkout master' do
+ assert_received(@repo) { |repo| repo.checkout('feature') }
end
- should "tag version" do
- assert_received(@repo) {|repo| repo.add_tag('v1.2.0') }
+ should 'tag version' do
+ assert_received(@repo) { |repo| repo.add_tag('v1.2.0') }
end
- should "push" do
- assert_received(@repo) {|repo| repo.push('upstream', 'feature:v1') }
+ should 'push' do
+ assert_received(@repo) { |repo| repo.push('upstream', 'feature:v1') }
end
-
end
- context "happily with different branch" do
+ context 'happily with different branch' do
setup do
stub(@command).clean_staging_area? { true }
- stub(@command).release_tag { "v3.2.0" }
+ stub(@command).release_tag { 'v3.2.0' }
stub(@repo).checkout(anything)
stub(@repo) do
@@ -79,41 +76,45 @@ class Jeweler
stub(@command).release_not_tagged? { true }
- @command.run({:branch => 'v3'})
+ @command.run(branch: 'v3')
end
- should "checkout master" do
- assert_received(@repo) {|repo| repo.checkout('v3') }
+ should 'checkout master' do
+ assert_received(@repo) { |repo| repo.checkout('v3') }
end
- should "tag version" do
- assert_received(@repo) {|repo| repo.add_tag('v3.2.0') }
+ should 'tag version' do
+ assert_received(@repo) { |repo| repo.add_tag('v3.2.0') }
end
- should "push" do
- assert_received(@repo) {|repo| repo.push('origin', 'v3:v3') }
+ should 'push' do
+ assert_received(@repo) { |repo| repo.push('origin', 'v3:v3') }
end
end
- context "with an unclean staging area" do
+ context 'with an unclean staging area' do
setup do
stub(@command).clean_staging_area? { false }
stub(@command).system
end
should 'raise error' do
- assert_raises RuntimeError, /try commiting/i do
+ assert_raises RuntimeError, 'Unclean staging area! Be sure to commit or .gitignore everything first. See `git status` above.' do
@command.run
end
end
should 'display git status' do
- @command.run rescue nil
- assert_received(@command) {|command| command.system("git status") }
+ begin
+ @command.run
+ rescue
+ nil
+ end
+ assert_received(@command) { |command| command.system('git status') }
end
end
- context "with a release already tagged" do
+ context 'with a release already tagged' do
setup do
stub(@command).clean_staging_area? { true }
@@ -126,51 +127,48 @@ class Jeweler
@command.run
end
- should "checkout master" do
- assert_received(@repo) {|repo| repo.checkout('master') }
+ should 'checkout master' do
+ assert_received(@repo) { |repo| repo.checkout('master') }
end
- should "push" do
- assert_received(@repo) {|repo| repo.push('origin', 'master:master') }
+ should 'push' do
+ assert_received(@repo) { |repo| repo.push('origin', 'master:master') }
end
-
end
-
end
-
- build_command_context "building from jeweler" do
+ build_command_context 'building from jeweler' do
setup do
@command = Jeweler::Commands::ReleaseToGit.build_for(@jeweler)
end
- should "assign gemspec" do
+ should 'assign gemspec' do
assert_same @gemspec, @command.gemspec
end
- should "assign version" do
+ should 'assign version' do
assert_same @version, @command.version
end
- should "assign repo" do
+ should 'assign repo' do
assert_same @repo, @command.repo
end
- should "assign output" do
+ should 'assign output' do
assert_same @output, @command.output
end
- should "assign gemspec_helper" do
+ should 'assign gemspec_helper' do
assert_same @gemspec_helper, @command.gemspec_helper
end
- should "assign base_dir" do
+ should 'assign base_dir' do
assert_same @base_dir, @command.base_dir
end
end
- # FIXME this code had its ruby-git stuff replaced with `` and system, which is much harder to test, so re-enable these someday
- #context "clean_staging_area?" do
+ # FIXME: this code had its ruby-git stuff replaced with `` and system, which is much harder to test, so re-enable these someday
+ # context "clean_staging_area?" do
# should "be false if there added files" do
# repo = build_repo :added => %w(README)
@@ -206,9 +204,9 @@ class Jeweler
# assert command.clean_staging_area?
# end
- #end
+ # end
- context "release_tagged? when no tag exists" do
+ context 'release_tagged? when no tag exists' do
setup do
@repo = Object.new
stub(@repo).tag('v1.2.3') { raise Git::GitTagNameDoesNotExist, tag }
@@ -221,13 +219,12 @@ class Jeweler
@command.version = '1.2.3'
end
- should_eventually "be true" do
+ should_eventually 'be true' do
assert @command.release_not_tagged?
end
-
end
- context "release_tagged? when tag exists" do
+ context 'release_tagged? when tag exists' do
setup do
@repo = Object.new
stub(@repo) do
@@ -242,10 +239,9 @@ class Jeweler
@command.version = '1.2.3'
end
- should_eventually "be false" do
+ should_eventually 'be false' do
assert @command.release_not_tagged?
end
-
end
def build_repo(options = {})
@@ -256,7 +252,7 @@ class Jeweler
end
def build_status(options = {})
- options = {:added => [], :deleted => [], :changed => []}.merge(options)
+ options = { added: [], deleted: [], changed: [] }.merge(options)
status = Object.new
stub(status) do
@@ -264,7 +260,6 @@ class Jeweler
deleted { options[:deleted] }
changed { options[:changed] }
end
-
end
end
end
diff --git a/test/jeweler/commands/test_release_to_github.rb b/test/jeweler/commands/test_release_to_github.rb
index 40c27f8..51f9e96 100644
--- a/test/jeweler/commands/test_release_to_github.rb
+++ b/test/jeweler/commands/test_release_to_github.rb
@@ -4,9 +4,8 @@ require 'pathname'
class Jeweler
module Commands
class TestReleaseGemspec < Test::Unit::TestCase
-
- rubyforge_command_context "running" do
- context "happily" do
+ rubyforge_command_context 'running' do
+ context 'happily' do
setup do
stub(@command).clean_staging_area? { true }
@@ -24,25 +23,24 @@ class Jeweler
@command.run
end
- should "checkout master" do
- assert_received(@repo) {|repo| repo.checkout('master') }
+ should 'checkout master' do
+ assert_received(@repo) { |repo| repo.checkout('master') }
end
- should "regenerate gemspec" do
- assert_received(@command) {|command| command.regenerate_gemspec! }
+ should 'regenerate gemspec' do
+ assert_received(@command, &:regenerate_gemspec!)
end
- should "commit gemspec" do
- assert_received(@command) {|command| command.commit_gemspec! }
+ should 'commit gemspec' do
+ assert_received(@command, &:commit_gemspec!)
end
- should "push" do
- assert_received(@repo) {|repo| repo.push('origin', 'master:master') }
+ should 'push' do
+ assert_received(@repo) { |repo| repo.push('origin', 'master:master') }
end
-
end
- context "happily with different remote, local branch and remote branch" do
+ context 'happily with different remote, local branch and remote branch' do
setup do
stub(@command).clean_staging_area? { true }
@@ -57,28 +55,27 @@ class Jeweler
stub(@command).release_not_tagged? { true }
- @command.run({:remote => 'upstream', :local_branch => 'branch', :remote_branch => 'remote_branch'})
+ @command.run(remote: 'upstream', local_branch: 'branch', remote_branch: 'remote_branch')
end
- should "checkout local branch" do
- assert_received(@repo) {|repo| repo.checkout('branch') }
+ should 'checkout local branch' do
+ assert_received(@repo) { |repo| repo.checkout('branch') }
end
- should "regenerate gemspec" do
- assert_received(@command) {|command| command.regenerate_gemspec! }
+ should 'regenerate gemspec' do
+ assert_received(@command, &:regenerate_gemspec!)
end
- should "commit gemspec" do
- assert_received(@command) {|command| command.commit_gemspec! }
+ should 'commit gemspec' do
+ assert_received(@command, &:commit_gemspec!)
end
- should "push" do
- assert_received(@repo) {|repo| repo.push('upstream', 'branch:remote_branch') }
+ should 'push' do
+ assert_received(@repo) { |repo| repo.push('upstream', 'branch:remote_branch') }
end
-
end
- context "happily with different branch" do
+ context 'happily with different branch' do
setup do
stub(@command).clean_staging_area? { true }
@@ -93,45 +90,49 @@ class Jeweler
stub(@command).release_not_tagged? { true }
- @command.run({:branch => 'v3'})
+ @command.run(branch: 'v3')
end
- should "checkout local branch" do
- assert_received(@repo) {|repo| repo.checkout('v3') }
+ should 'checkout local branch' do
+ assert_received(@repo) { |repo| repo.checkout('v3') }
end
- should "regenerate gemspec" do
- assert_received(@command) {|command| command.regenerate_gemspec! }
+ should 'regenerate gemspec' do
+ assert_received(@command, &:regenerate_gemspec!)
end
- should "commit gemspec" do
- assert_received(@command) {|command| command.commit_gemspec! }
+ should 'commit gemspec' do
+ assert_received(@command, &:commit_gemspec!)
end
- should "push" do
- assert_received(@repo) {|repo| repo.push('origin', 'v3:v3') }
+ should 'push' do
+ assert_received(@repo) { |repo| repo.push('origin', 'v3:v3') }
end
end
- context "with an unclean staging area" do
+ context 'with an unclean staging area' do
setup do
stub(@command).clean_staging_area? { false }
stub(@command).system
end
should 'raise error' do
- assert_raises RuntimeError, /try commiting/i do
+ assert_raises RuntimeError, 'Unclean staging area! Be sure to commit or .gitignore everything first. See `git status` above.' do
@command.run
end
end
should 'display git status' do
- @command.run rescue nil
- assert_received(@command) {|command| command.system("git status") }
+ begin
+ @command.run
+ rescue
+ nil
+ end
+ assert_received(@command) { |command| command.system('git status') }
end
end
- context "with an unchanged gemspec" do
+ context 'with an unchanged gemspec' do
setup do
stub(@command).clean_staging_area? { true }
@@ -149,21 +150,20 @@ class Jeweler
@command.run
end
- should "checkout master" do
- assert_received(@repo) {|repo| repo.checkout('master') }
+ should 'checkout master' do
+ assert_received(@repo) { |repo| repo.checkout('master') }
end
- should "regenerate gemspec" do
- assert_received(@command) {|command| command.regenerate_gemspec! }
+ should 'regenerate gemspec' do
+ assert_received(@command, &:regenerate_gemspec!)
end
- should "push" do
- assert_received(@repo) {|repo| repo.push('origin', 'master:master') }
+ should 'push' do
+ assert_received(@repo) { |repo| repo.push('origin', 'master:master') }
end
-
end
- context "with a release already tagged" do
+ context 'with a release already tagged' do
setup do
stub(@command).clean_staging_area? { true }
@@ -181,59 +181,56 @@ class Jeweler
@command.run
end
- should "checkout master" do
- assert_received(@repo) {|repo| repo.checkout('master') }
+ should 'checkout master' do
+ assert_received(@repo) { |repo| repo.checkout('master') }
end
- should "regenerate gemspec" do
- assert_received(@command) {|command| command.regenerate_gemspec! }
+ should 'regenerate gemspec' do
+ assert_received(@command, &:regenerate_gemspec!)
end
- should "commit gemspec" do
- assert_received(@command) {|command| command.commit_gemspec! }
+ should 'commit gemspec' do
+ assert_received(@command, &:commit_gemspec!)
end
- should "push" do
- assert_received(@repo) {|repo| repo.push('origin', 'master:master') }
+ should 'push' do
+ assert_received(@repo) { |repo| repo.push('origin', 'master:master') }
end
-
end
-
end
-
- build_command_context "building from jeweler" do
+ build_command_context 'building from jeweler' do
setup do
@command = Jeweler::Commands::ReleaseGemspec.build_for(@jeweler)
end
- should "assign gemspec" do
+ should 'assign gemspec' do
assert_same @gemspec, @command.gemspec
end
- should "assign version" do
+ should 'assign version' do
assert_same @version, @command.version
end
- should "assign repo" do
+ should 'assign repo' do
assert_same @repo, @command.repo
end
- should "assign output" do
+ should 'assign output' do
assert_same @output, @command.output
end
- should "assign gemspec_helper" do
+ should 'assign gemspec_helper' do
assert_same @gemspec_helper, @command.gemspec_helper
end
- should "assign base_dir" do
+ should 'assign base_dir' do
assert_same @base_dir, @command.base_dir
end
end
- # FIXME this code had its ruby-git stuff replaced with `` and system, which is much harder to test, so re-enable these someday
- #context "clean_staging_area?" do
+ # FIXME: this code had its ruby-git stuff replaced with `` and system, which is much harder to test, so re-enable these someday
+ # context "clean_staging_area?" do
# should "be false if there added files" do
# repo = build_repo :added => %w(README)
@@ -269,9 +266,9 @@ class Jeweler
# assert command.clean_staging_area?
# end
- #end
+ # end
- context "regenerate_gemspec!" do
+ context 'regenerate_gemspec!' do
setup do
@repo = Object.new
stub(@repo) do
@@ -282,30 +279,30 @@ class Jeweler
@gemspec_helper = Object.new
stub(@gemspec_helper) do
write
- path {'zomg.gemspec'}
+ path { 'zomg.gemspec' }
update_version('1.2.3')
end
@output = StringIO.new
- @command = Jeweler::Commands::ReleaseGemspec.new :output => @output,
- :repo => @repo,
- :gemspec_helper => @gemspec_helper,
- :version => '1.2.3'
+ @command = Jeweler::Commands::ReleaseGemspec.new output: @output,
+ repo: @repo,
+ gemspec_helper: @gemspec_helper,
+ version: '1.2.3'
@command.regenerate_gemspec!
end
- should "refresh gemspec version" do
- assert_received(@gemspec_helper) {|gemspec_helper| gemspec_helper.update_version('1.2.3') }
+ should 'refresh gemspec version' do
+ assert_received(@gemspec_helper) { |gemspec_helper| gemspec_helper.update_version('1.2.3') }
end
- should "write gemspec" do
- assert_received(@gemspec_helper) {|gemspec_helper| gemspec_helper.write }
+ should 'write gemspec' do
+ assert_received(@gemspec_helper, &:write)
end
end
- context "commit_gemspec!" do
+ context 'commit_gemspec!' do
setup do
@repo = Object.new
stub(@repo) do
@@ -315,32 +312,31 @@ class Jeweler
@gemspec_helper = Object.new
stub(@gemspec_helper) do
- path {'zomg.gemspec'}
+ path { 'zomg.gemspec' }
update_version('1.2.3')
end
@output = StringIO.new
- @command = Jeweler::Commands::ReleaseGemspec.new :output => @output,
- :repo => @repo,
- :gemspec_helper => @gemspec_helper,
- :version => '1.2.3'
+ @command = Jeweler::Commands::ReleaseGemspec.new output: @output,
+ repo: @repo,
+ gemspec_helper: @gemspec_helper,
+ version: '1.2.3'
- stub(@command).working_subdir { Pathname.new(".") }
+ stub(@command).working_subdir { Pathname.new('.') }
@command.commit_gemspec!
end
- should "add gemspec to repository" do
- assert_received(@repo) {|repo| repo.add('zomg.gemspec') }
+ should 'add gemspec to repository' do
+ assert_received(@repo) { |repo| repo.add('zomg.gemspec') }
end
- should "commit with commit message including version" do
- assert_received(@repo) {|repo| repo.commit("Regenerate gemspec for version 1.2.3") }
+ should 'commit with commit message including version' do
+ assert_received(@repo) { |repo| repo.commit('Regenerate gemspec for version 1.2.3') }
end
-
end
- context "commit_gemspec! in top dir" do
+ context 'commit_gemspec! in top dir' do
setup do
@repo = Object.new
@@ -351,33 +347,33 @@ class Jeweler
@gemspec_helper = Object.new
stub(@gemspec_helper) do
- path {'zomg.gemspec'}
+ path { 'zomg.gemspec' }
update_version('1.2.3')
end
@output = StringIO.new
- @command = Jeweler::Commands::ReleaseGemspec.new :output => @output,
- :repo => @repo,
- :gemspec_helper => @gemspec_helper,
- :version => '1.2.3',
- :base_dir => '.'
+ @command = Jeweler::Commands::ReleaseGemspec.new output: @output,
+ repo: @repo,
+ gemspec_helper: @gemspec_helper,
+ version: '1.2.3',
+ base_dir: '.'
@dir = Object.new
stub(@repo).dir { @dir }
- stub(@dir).path { "/x/y/z" }
+ stub(@dir).path { '/x/y/z' }
- stub(@command).base_dir_path { Pathname.new("/x/y/z") }
+ stub(@command).base_dir_path { Pathname.new('/x/y/z') }
@command.commit_gemspec!
end
- should "add gemspec to repository" do
- assert_received(@repo) {|repo| repo.add('zomg.gemspec') }
+ should 'add gemspec to repository' do
+ assert_received(@repo) { |repo| repo.add('zomg.gemspec') }
end
end
- context "commit_gemspec! in sub dir" do
+ context 'commit_gemspec! in sub dir' do
setup do
@repo = Object.new
@@ -388,33 +384,33 @@ class Jeweler
@gemspec_helper = Object.new
stub(@gemspec_helper) do
- path {'zomg.gemspec'}
+ path { 'zomg.gemspec' }
update_version('1.2.3')
end
@output = StringIO.new
- @command = Jeweler::Commands::ReleaseGemspec.new :output => @output,
- :repo => @repo,
- :gemspec_helper => @gemspec_helper,
- :version => '1.2.3',
- :base_dir => '.'
+ @command = Jeweler::Commands::ReleaseGemspec.new output: @output,
+ repo: @repo,
+ gemspec_helper: @gemspec_helper,
+ version: '1.2.3',
+ base_dir: '.'
@dir = Object.new
stub(@repo).dir { @dir }
- stub(@dir).path { "/x/y/z" }
+ stub(@dir).path { '/x/y/z' }
- stub(@command).base_dir_path { Pathname.new("/x/y/z/gem") }
+ stub(@command).base_dir_path { Pathname.new('/x/y/z/gem') }
@command.commit_gemspec!
end
- should "add gemspec to repository" do
- assert_received(@repo) {|repo| repo.add('gem/zomg.gemspec') }
+ should 'add gemspec to repository' do
+ assert_received(@repo) { |repo| repo.add('gem/zomg.gemspec') }
end
end
- context "release_tagged? when no tag exists" do
+ context 'release_tagged? when no tag exists' do
setup do
@repo = Object.new
stub(@repo).tag('v1.2.3') { raise Git::GitTagNameDoesNotExist, tag }
@@ -427,13 +423,12 @@ class Jeweler
@command.version = '1.2.3'
end
- should_eventually "be true" do
+ should_eventually 'be true' do
assert @command.release_not_tagged?
end
-
end
- context "release_tagged? when tag exists" do
+ context 'release_tagged? when tag exists' do
setup do
@repo = Object.new
stub(@repo) do
@@ -448,10 +443,9 @@ class Jeweler
@command.version = '1.2.3'
end
- should_eventually "be false" do
+ should_eventually 'be false' do
assert @command.release_not_tagged?
end
-
end
def build_repo(options = {})
@@ -462,7 +456,7 @@ class Jeweler
end
def build_status(options = {})
- options = {:added => [], :deleted => [], :changed => []}.merge(options)
+ options = { added: [], deleted: [], changed: [] }.merge(options)
status = Object.new
stub(status) do
@@ -470,7 +464,6 @@ class Jeweler
deleted { options[:deleted] }
changed { options[:changed] }
end
-
end
end
end
diff --git a/test/jeweler/commands/test_validate_gemspec.rb b/test/jeweler/commands/test_validate_gemspec.rb
index 59f581a..c2decef 100644
--- a/test/jeweler/commands/test_validate_gemspec.rb
+++ b/test/jeweler/commands/test_validate_gemspec.rb
@@ -3,24 +3,22 @@ require 'test_helper'
class Jeweler
module Commands
class TestValidateGemspec < Test::Unit::TestCase
-
- build_command_context "build context" do
+ build_command_context 'build context' do
setup do
@command = Jeweler::Commands::ValidateGemspec.build_for(@jeweler)
end
- should "assign gemspec_helper" do
+ should 'assign gemspec_helper' do
assert_same @gemspec_helper, @command.gemspec_helper
end
- should "assign output" do
+ should 'assign output' do
assert_same @output, @command.output
end
- should "return Jeweler::Commands::ValidateGemspec" do
+ should 'return Jeweler::Commands::ValidateGemspec' do
assert_kind_of Jeweler::Commands::ValidateGemspec, @command
end
-
end
end
end
diff --git a/test/jeweler/commands/test_write_gemspec.rb b/test/jeweler/commands/test_write_gemspec.rb
index 3b76552..c7e6387 100644
--- a/test/jeweler/commands/test_write_gemspec.rb
+++ b/test/jeweler/commands/test_write_gemspec.rb
@@ -3,10 +3,9 @@ require 'test_helper'
class Jeweler
module Commands
class TestWriteGemspec < Test::Unit::TestCase
-
- context "after run" do
+ context 'after run' do
setup do
- @gemspec = Gem::Specification.new {|s| s.name = 'zomg' }
+ @gemspec = Gem::Specification.new { |s| s.name = 'zomg' }
@gemspec_helper = Object.new
stub(@gemspec_helper).spec { @gemspec }
stub(@gemspec_helper).path { 'zomg.gemspec' }
@@ -15,7 +14,7 @@ class Jeweler
@output = StringIO.new
@version_helper = Object.new
- stub(@version_helper).to_s { '1.2.3' }
+ stub(@version_helper).to_s { '1.2.3' }
stub(@version_helper).refresh
@command = Jeweler::Commands::WriteGemspec.new
@@ -25,17 +24,17 @@ class Jeweler
@command.output = @output
@command.gemspec_helper = @gemspec_helper
- # FIXME apparently rubygems doesn't use Time.now under the hood when generating a date
+ # FIXME: apparently rubygems doesn't use Time.now under the hood when generating a date
@now = Time.local(2008, 9, 1, 12, 0, 0)
stub(Time.now).now { @now }
end
- should "refresh version" do
+ should 'refresh version' do
@command.run
- assert_received(@version_helper) {|version_helper| version_helper.refresh }
+ assert_received(@version_helper, &:refresh)
end
- should "update gemspec version" do
+ should 'update gemspec version' do
@command.run
assert_equal '1.2.3', @gemspec.version.to_s
end
@@ -46,58 +45,56 @@ class Jeweler
assert_equal '2.3.4', @gemspec.version.to_s
end
- should_eventually "update gemspec date to the beginning of today" do
+ should_eventually 'update gemspec date to the beginning of today' do
@command.run
- # FIXME apparently rubygems doesn't use Time.now under the hood when generating a date
+ # FIXME: apparently rubygems doesn't use Time.now under the hood when generating a date
assert_equal Time.local(@now.year, @now.month, @now.day, 0, 0), @gemspec.date
end
- should "write gemspec" do
+ should 'write gemspec' do
@command.run
- assert_received(@gemspec_helper) {|gemspec_helper| gemspec_helper.write }
+ assert_received(@gemspec_helper, &:write)
end
- should_eventually "output that the gemspec was written" do
+ should_eventually 'output that the gemspec was written' do
@command.run
- assert_equal @output.string, "Generated: tmp/zomg.gemspec"
+ assert_equal @output.string, 'Generated: tmp/zomg.gemspec'
end
-
end
- build_command_context "building for jeweler" do
+ build_command_context 'building for jeweler' do
setup do
@command = Jeweler::Commands::WriteGemspec.build_for(@jeweler)
end
- should "assign base_dir" do
+ should 'assign base_dir' do
assert_same @base_dir, @command.base_dir
end
- should "assign gemspec" do
+ should 'assign gemspec' do
assert_same @gemspec, @command.gemspec
end
- should "assign version" do
+ should 'assign version' do
assert_same @version, @command.version
end
- should "assign output" do
+ should 'assign output' do
assert_same @output, @command.output
end
- should "assign gemspec_helper" do
+ should 'assign gemspec_helper' do
assert_same @gemspec_helper, @command.gemspec_helper
end
- should "assign version_helper" do
+ should 'assign version_helper' do
assert_same @version_helper, @command.version_helper
end
- should "return WriteGemspec" do
+ should 'return WriteGemspec' do
assert_kind_of Jeweler::Commands::WriteGemspec, @command
end
end
-
end
end
end
diff --git a/test/jeweler/commands/version/test_base.rb b/test/jeweler/commands/version/test_base.rb
index a514c53..4c5355e 100644
--- a/test/jeweler/commands/version/test_base.rb
+++ b/test/jeweler/commands/version/test_base.rb
@@ -4,28 +4,28 @@ class Jeweler
module Commands
module Version
class TestBase < Test::Unit::TestCase
- build_command_context "build for jeweler" do
+ build_command_context 'build for jeweler' do
setup do
@command = Jeweler::Commands::Version::Base.build_for(@jeweler)
end
- should "assign repo" do
+ should 'assign repo' do
assert_equal @repo, @command.repo
end
- should "assign version_helper" do
+ should 'assign version_helper' do
assert_equal @version_helper, @command.version_helper
end
- should "assign gemspec" do
+ should 'assign gemspec' do
assert_equal @gemspec, @command.gemspec
end
- should "assign commit" do
+ should 'assign commit' do
assert_equal @commit, @command.commit
end
- context "commit_version" do
+ context 'commit_version' do
setup do
@dir = Object.new
stub(@repo).dir { @dir }
@@ -40,9 +40,9 @@ class Jeweler
@command.commit_version
end
- should "add VERSION" do
- assert_received(@repo) {|repo| repo.add('VERSION')}
- assert_received(@repo) {|repo| repo.commit('Version bump to 1.0.0')}
+ should 'add VERSION' do
+ assert_received(@repo) { |repo| repo.add('VERSION') }
+ assert_received(@repo) { |repo| repo.commit('Version bump to 1.0.0') }
end
end
end
@@ -50,4 +50,3 @@ class Jeweler
end
end
end
-
diff --git a/test/jeweler/commands/version/test_bump_major.rb b/test/jeweler/commands/version/test_bump_major.rb
index 529238c..b40392b 100644
--- a/test/jeweler/commands/version/test_bump_major.rb
+++ b/test/jeweler/commands/version/test_bump_major.rb
@@ -4,8 +4,7 @@ class Jeweler
module Commands
module Version
class TestBumpMajor < Test::Unit::TestCase
-
- should "call bump_major on version_helper in update_version" do
+ should 'call bump_major on version_helper in update_version' do
mock(version_helper = Object.new).bump_major
command = Jeweler::Commands::Version::BumpMajor.new
@@ -14,9 +13,6 @@ class Jeweler
command.update_version
end
end
-
end
end
end
-
-
diff --git a/test/jeweler/commands/version/test_bump_minor.rb b/test/jeweler/commands/version/test_bump_minor.rb
index 6892bbf..8c15333 100644
--- a/test/jeweler/commands/version/test_bump_minor.rb
+++ b/test/jeweler/commands/version/test_bump_minor.rb
@@ -4,8 +4,7 @@ class Jeweler
module Commands
module Version
class TestBumpMinor < Test::Unit::TestCase
-
- should "call bump_minor on version_helper in update_version" do
+ should 'call bump_minor on version_helper in update_version' do
mock(version_helper = Object.new).bump_minor
command = Jeweler::Commands::Version::BumpMinor.new
diff --git a/test/jeweler/commands/version/test_bump_patch.rb b/test/jeweler/commands/version/test_bump_patch.rb
index 83c567d..fcdd77a 100644
--- a/test/jeweler/commands/version/test_bump_patch.rb
+++ b/test/jeweler/commands/version/test_bump_patch.rb
@@ -4,8 +4,7 @@ class Jeweler
module Commands
module Version
class TestBumpPatch < Test::Unit::TestCase
-
- should "call bump_patch on version_helper in update_version" do
+ should 'call bump_patch on version_helper in update_version' do
mock(version_helper = Object.new).bump_patch
command = Jeweler::Commands::Version::BumpPatch.new
@@ -17,4 +16,3 @@ class Jeweler
end
end
end
-
diff --git a/test/jeweler/commands/version/test_write.rb b/test/jeweler/commands/version/test_write.rb
index 5cb064f..249aa25 100644
--- a/test/jeweler/commands/version/test_write.rb
+++ b/test/jeweler/commands/version/test_write.rb
@@ -4,8 +4,7 @@ class Jeweler
module Commands
module Version
class TestWrite < Test::Unit::TestCase
-
- should "call write_version on version_helper in update_version" do
+ should 'call write_version on version_helper in update_version' do
mock(version_helper = Object.new).update_to 1, 2, 3, nil
command = Jeweler::Commands::Version::Write.new
@@ -19,4 +18,3 @@ class Jeweler
end
end
end
-
diff --git a/test/jeweler/generator/test_application.rb b/test/jeweler/generator/test_application.rb
index 86ac8d0..2d89fe6 100644
--- a/test/jeweler/generator/test_application.rb
+++ b/test/jeweler/generator/test_application.rb
@@ -37,38 +37,36 @@ class TestApplication < Test::Unit::TestCase
end
end
-
- context "when options indicate version" do
+ context 'when options indicate version' do
setup do
stub(Jeweler::Generator::Application).build_opts do
- stub_options(:show_version => true)
+ stub_options(show_version: true)
end
- stub(Jeweler::Generator).new { raise "Shouldn't have made this far"}
+ stub(Jeweler::Generator).new { raise "Shouldn't have made this far" }
assert_nothing_raised do
- @result = run_application("-v")
+ @result = run_application('-v')
end
end
-
+
should_exit_with_code 1
-
+
should 'should puts option version' do
assert_match 'Version:', @stderr
end
end
-
- context "when options indicate help usage" do
+ context 'when options indicate help usage' do
setup do
stub(Jeweler::Generator::Application).build_opts do
- stub_options(:show_help => true)
+ stub_options(show_help: true)
end
- stub(Jeweler::Generator).new { raise "Shouldn't have made this far"}
+ stub(Jeweler::Generator).new { raise "Shouldn't have made this far" }
assert_nothing_raised do
- @result = run_application("-h")
+ @result = run_application('-h')
end
end
@@ -83,16 +81,16 @@ class TestApplication < Test::Unit::TestCase
end
end
- context "when options indicate an invalid argument" do
+ context 'when options indicate an invalid argument' do
setup do
stub(Jeweler::Generator::Application).build_opts do
- stub_options(:invalid_argument => '--invalid-argument')
+ stub_options(invalid_argument: '--invalid-argument')
end
- stub(Jeweler::Generator).new { raise "Shouldn't have made this far"}
+ stub(Jeweler::Generator).new { raise "Shouldn't have made this far" }
assert_nothing_raised do
- @result = run_application("--invalid-argument")
+ @result = run_application('--invalid-argument')
end
end
@@ -109,34 +107,32 @@ class TestApplication < Test::Unit::TestCase
should 'not display anything on stdout' do
assert_equal '', @stdout.squeeze.strip
end
-
end
- context "when options are good" do
+ context 'when options are good' do
setup do
- @generator = "generator"
+ @generator = 'generator'
stub(@generator).run
stub(Jeweler::Generator).new { @generator }
- @jeweler_options = stub_options :project_name => 'zomg'
+ @jeweler_options = stub_options project_name: 'zomg'
stub(Jeweler::Generator::Application).build_options do
@jeweler_options
end
assert_nothing_raised do
- @result = run_application("zomg")
+ @result = run_application('zomg')
end
end
should_exit_with_code 0
- should "create generator with options" do
- assert_received(Jeweler::Generator) {|subject| subject.new(@jeweler_options) }
+ should 'create generator with options' do
+ assert_received(Jeweler::Generator) { |subject| subject.new(@jeweler_options) }
end
- should "run generator" do
- assert_received(@generator) {|subject| subject.run }
+ should 'run generator' do
+ assert_received(@generator, &:run)
end
end
-
end
diff --git a/test/jeweler/generator/test_options.rb b/test/jeweler/generator/test_options.rb
index 340c579..297667c 100644
--- a/test/jeweler/generator/test_options.rb
+++ b/test/jeweler/generator/test_options.rb
@@ -1,7 +1,6 @@
require 'test_helper'
class TestOptions < Test::Unit::TestCase
-
def setup
set_default_git_config
stub_git_config valid_git_config
@@ -21,17 +20,17 @@ class TestOptions < Test::Unit::TestCase
def setup_options(*arguments)
stub(Jeweler::Generator::Options).git_config { valid_git_config }
- @options = Jeweler::Generator::Options.new(["project_name"] + arguments)
+ @options = Jeweler::Generator::Options.new(['project_name'] + arguments)
end
def self.for_options(*options)
context options.join(' ') do
- setup { setup_options *options }
+ setup { setup_options(*options) }
yield
end
end
- context "default options" do
+ context 'default options' do
setup { setup_options }
should_have_testing_framework :shoulda
should_have_docmentation_framework :rdoc
@@ -40,27 +39,27 @@ class TestOptions < Test::Unit::TestCase
assert ! @options[:create_repo]
end
- should "have project name" do
- assert_equal "project_name", @options[:project_name]
+ should 'have project name' do
+ assert_equal 'project_name', @options[:project_name]
end
- should "use github username from git config" do
+ should 'use github username from git config' do
assert_equal @github_user, @options[:github_username]
end
- should "use user name from git config" do
+ should 'use user name from git config' do
assert_equal @git_name, @options[:user_name]
end
- should "use user email from git config" do
+ should 'use user email from git config' do
assert_equal @git_email, @options[:user_email]
end
- should "use bundler" do
+ should 'use bundler' do
assert @options[:use_bundler]
end
end
- for_options "--bacon" do
+ for_options '--bacon' do
should_have_testing_framework :bacon
end
@@ -80,11 +79,11 @@ class TestOptions < Test::Unit::TestCase
should_have_testing_framework :shoulda
end
- for_options "--testunit" do
+ for_options '--testunit' do
should_have_testing_framework :testunit
end
- for_options "--testspec" do
+ for_options '--testspec' do
should_have_testing_framework :testspec
end
@@ -137,13 +136,13 @@ class TestOptions < Test::Unit::TestCase
assert_equal 'foo', @options[:directory]
end
end
-
+
for_options '--version' do
should 'show version' do
assert @options[:show_version]
end
end
-
+
for_options '-v' do
should 'show version' do
assert @options[:show_version]
@@ -169,13 +168,13 @@ class TestOptions < Test::Unit::TestCase
end
for_options '--user-name', 'myname' do
- should "set user name" do
+ should 'set user name' do
assert_equal 'myname', @options[:user_name]
end
end
for_options '--user-email', 'myname@mydomain.com' do
- should "set user email" do
+ should 'set user email' do
assert_equal 'myname@mydomain.com', @options[:user_email]
end
end
@@ -193,34 +192,34 @@ class TestOptions < Test::Unit::TestCase
end
for_options '--github-username', 'mygithub' do
- should "set github username" do
+ should 'set github username' do
assert_equal 'mygithub', @options[:github_username]
end
end
for_options '--bundler' do
- should "use bundler" do
+ should 'use bundler' do
assert @options[:use_bundler]
end
end
for_options '--no-bundler' do
- should "not use bundler" do
+ should 'not use bundler' do
assert !@options[:use_bundler]
end
end
- context "merging options" do
- should "take options from each" do
- options = Jeweler::Generator::Options.new(["--rspec"]).
- merge Jeweler::Generator::Options.new(["--create-repo"])
+ context 'merging options' do
+ should 'take options from each' do
+ options = Jeweler::Generator::Options.new(['--rspec'])
+ .merge Jeweler::Generator::Options.new(['--create-repo'])
assert_equal :rspec, options[:testing_framework]
assert options[:create_repo]
end
- should "shadow options" do
- options = Jeweler::Generator::Options.new(["--bacon"]).
- merge Jeweler::Generator::Options.new(["--rspec"])
+ should 'shadow options' do
+ options = Jeweler::Generator::Options.new(['--bacon'])
+ .merge Jeweler::Generator::Options.new(['--rspec'])
assert_equal :rspec, options[:testing_framework]
end
end
diff --git a/test/jeweler/test_gemspec_helper.rb b/test/jeweler/test_gemspec_helper.rb
index 0056c07..e5bd746 100644
--- a/test/jeweler/test_gemspec_helper.rb
+++ b/test/jeweler/test_gemspec_helper.rb
@@ -2,10 +2,10 @@ require 'test_helper'
class TestGemspecHelper < Test::Unit::TestCase
def setup
- Rake.application.instance_variable_set(:@rakefile, "Rakefile")
+ Rake.application.instance_variable_set(:@rakefile, 'Rakefile')
end
- context "given a gemspec" do
+ context 'given a gemspec' do
setup do
@spec = build_spec
@helper = Jeweler::GemSpecHelper.new(@spec, File.dirname(__FILE__))
@@ -16,7 +16,7 @@ class TestGemspecHelper < Test::Unit::TestCase
end
end
- context "#write" do
+ context '#write' do
setup do
@spec = build_spec
@helper = Jeweler::GemSpecHelper.new(@spec, File.dirname(__FILE__))
@@ -29,15 +29,15 @@ class TestGemspecHelper < Test::Unit::TestCase
FileUtils.rm_f(@helper.path)
end
- should "create gemspec file" do
- assert File.exists?(@helper.path)
+ should 'create gemspec file' do
+ assert File.exist?(@helper.path)
end
- should "make valid spec" do
+ should 'make valid spec' do
assert @helper.valid?
end
- should "parse" do
+ should 'parse' do
@helper.parse
end
end
diff --git a/test/jeweler/test_generator.rb b/test/jeweler/test_generator.rb
index d56e474..7c91c75 100644
--- a/test/jeweler/test_generator.rb
+++ b/test/jeweler/test_generator.rb
@@ -3,48 +3,48 @@ require 'test_helper'
class TestGenerator < Test::Unit::TestCase
def build_generator(testing_framework = :shoulda, options = {})
options = {
- :project_name => 'the-perfect-gem',
- :user_name => 'John Doe',
- :user_email => 'john@example.com',
- :github_username => 'johndoe',
- :documentation_framework => :rdoc
+ project_name: 'the-perfect-gem',
+ user_name: 'John Doe',
+ user_email: 'john@example.com',
+ github_username: 'johndoe',
+ documentation_framework: :rdoc
}.merge(options)
options[:testing_framework] = testing_framework
Jeweler::Generator.new(options)
end
- should "have the correct constant name" do
- assert_equal "ThePerfectGem", build_generator.constant_name
+ should 'have the correct constant name' do
+ assert_equal 'ThePerfectGem', build_generator.constant_name
end
- should "have the correct file name prefix" do
- assert_equal "the_perfect_gem", build_generator.file_name_prefix
+ should 'have the correct file name prefix' do
+ assert_equal 'the_perfect_gem', build_generator.file_name_prefix
end
- should "have the correct require name" do
- assert_equal "the-perfect-gem", build_generator.require_name
+ should 'have the correct require name' do
+ assert_equal 'the-perfect-gem', build_generator.require_name
end
- should "have the correct lib file name" do
- assert_equal "the-perfect-gem.rb", build_generator.lib_filename
+ should 'have the correct lib file name' do
+ assert_equal 'the-perfect-gem.rb', build_generator.lib_filename
end
-
- should "have the correct git-remote" do
- assert_equal 'user@host:/path/to/repo', build_generator(:shoulda, {:git_remote => "user@host:/path/to/repo"}).git_remote
- assert_equal 'git@github.com:johndoe/the-perfect-gem.git', build_generator.git_remote
+
+ should 'have the correct git-remote' do
+ assert_equal 'user@host:/path/to/repo', build_generator(:shoulda, git_remote: 'user@host:/path/to/repo').git_remote
+ assert_equal 'git@github.com:johndoe/the-perfect-gem.git', build_generator.git_remote
end
- should "extract project name from absolut path" do
- assert_equal "my-project", build_generator(:shoulda, {:project_name => "/tmp/my-project"}).project_name
+ should 'extract project name from absolut path' do
+ assert_equal 'my-project', build_generator(:shoulda, project_name: '/tmp/my-project').project_name
end
- should "extract project name from relative path" do
- assert_equal "my-project", build_generator(:shoulda, {:project_name => "../my-project"}).project_name
+ should 'extract project name from relative path' do
+ assert_equal 'my-project', build_generator(:shoulda, project_name: '../my-project').project_name
end
- should "extract project name from direct path" do
- assert_equal "my-project", build_generator(:shoulda, {:project_name => "my-project"}).project_name
+ should 'extract project name from direct path' do
+ assert_equal 'my-project', build_generator(:shoulda, project_name: 'my-project').project_name
end
def self.should_have_generator_attribute(attribute, value)
@@ -53,7 +53,7 @@ class TestGenerator < Test::Unit::TestCase
end
end
- context "shoulda" do
+ context 'shoulda' do
setup { @framework = :shoulda }
should_have_generator_attribute :test_task, 'test'
should_have_generator_attribute :test_dir, 'test'
@@ -65,7 +65,7 @@ class TestGenerator < Test::Unit::TestCase
should_have_generator_attribute :test_helper_filename, 'helper.rb'
end
- context "testunit" do
+ context 'testunit' do
setup { @framework = :testunit }
should_have_generator_attribute :test_task, 'test'
should_have_generator_attribute :test_dir, 'test'
@@ -77,7 +77,7 @@ class TestGenerator < Test::Unit::TestCase
should_have_generator_attribute :test_helper_filename, 'helper.rb'
end
- context "minitest" do
+ context 'minitest' do
setup { @framework = :minitest }
should_have_generator_attribute :test_task, 'test'
should_have_generator_attribute :test_dir, 'test'
@@ -89,7 +89,7 @@ class TestGenerator < Test::Unit::TestCase
should_have_generator_attribute :test_helper_filename, 'helper.rb'
end
- context "bacon" do
+ context 'bacon' do
setup { @framework = :bacon }
should_have_generator_attribute :test_task, 'spec'
should_have_generator_attribute :test_dir, 'spec'
@@ -101,7 +101,7 @@ class TestGenerator < Test::Unit::TestCase
should_have_generator_attribute :test_helper_filename, 'spec_helper.rb'
end
- context "rspec" do
+ context 'rspec' do
setup { @framework = :rspec }
should_have_generator_attribute :test_task, 'spec'
should_have_generator_attribute :test_dir, 'spec'
@@ -113,7 +113,7 @@ class TestGenerator < Test::Unit::TestCase
should_have_generator_attribute :test_helper_filename, 'spec_helper.rb'
end
- context "micronaut" do
+ context 'micronaut' do
setup { @framework = :micronaut }
should_have_generator_attribute :test_task, 'examples'
should_have_generator_attribute :test_dir, 'examples'
@@ -124,8 +124,8 @@ class TestGenerator < Test::Unit::TestCase
should_have_generator_attribute :test_filename, 'the-perfect-gem_example.rb'
should_have_generator_attribute :test_helper_filename, 'example_helper.rb'
end
-
- context "testspec" do
+
+ context 'testspec' do
setup { @framework = :testspec }
should_have_generator_attribute :test_task, 'test'
should_have_generator_attribute :test_dir, 'test'
@@ -136,5 +136,4 @@ class TestGenerator < Test::Unit::TestCase
should_have_generator_attribute :test_filename, 'the-perfect-gem_test.rb'
should_have_generator_attribute :test_helper_filename, 'test_helper.rb'
end
-
end
diff --git a/test/jeweler/test_generator_initialization.rb b/test/jeweler/test_generator_initialization.rb
index 86fe0eb..c1b145f 100644
--- a/test/jeweler/test_generator_initialization.rb
+++ b/test/jeweler/test_generator_initialization.rb
@@ -5,88 +5,88 @@ class TestGeneratorInitialization < Test::Unit::TestCase
set_default_git_config
end
- context "given a nil github repo name" do
+ context 'given a nil github repo name' do
setup do
stub_git_config
end
should 'raise NoGithubRepoNameGiven' do
assert_raise Jeweler::NoGitHubRepoNameGiven do
- Jeweler::Generator.new()
+ Jeweler::Generator.new
end
end
end
context "without git user's name set" do
setup do
- stub_git_config
+ stub_git_config
end
should 'raise an NoGitUserName' do
assert_raise Jeweler::NoGitUserName do
- Jeweler::Generator.new(:project_name => @project_name, :testing_framework => :shoulda, :documentation_framework => :rdoc)
+ Jeweler::Generator.new(project_name: @project_name, testing_framework: :shoulda, documentation_framework: :rdoc)
end
end
end
context "without git user's email set" do
setup do
- stub_git_config
+ stub_git_config
end
should 'raise NoGitUserEmail' do
assert_raise Jeweler::NoGitUserEmail do
- Jeweler::Generator.new(:project_name => @project_name, :user_name => @git_name, :testing_framework => :shoulda, :documentation_framework => :rdoc)
+ Jeweler::Generator.new(project_name: @project_name, user_name: @git_name, testing_framework: :shoulda, documentation_framework: :rdoc)
end
end
end
- context "without github username set" do
+ context 'without github username set' do
setup do
stub_git_config
end
should 'raise NotGitHubUser' do
assert_raise Jeweler::NoGitHubUser do
- Jeweler::Generator.new(:project_name => @project_name, :user_name => @git_name, :user_email => @git_email, :testing_framework => :shoulda, :documentation_framework => :rdoc)
+ Jeweler::Generator.new(project_name: @project_name, user_name: @git_name, user_email: @git_email, testing_framework: :shoulda, documentation_framework: :rdoc)
end
end
end
def build_generator(options = {})
- defaults = { :project_name => @project_name,
- :user_name => @git_name,
- :user_email => @git_email,
- :github_username => @github_user,
- :testing_framework => :shoulda,
- :documentation_framework => :rdoc }
+ defaults = { project_name: @project_name,
+ user_name: @git_name,
+ user_email: @git_email,
+ github_username: @github_user,
+ testing_framework: :shoulda,
+ documentation_framework: :rdoc }
options = defaults.merge(options)
- Jeweler::Generator.new(options)
+ Jeweler::Generator.new(options)
end
- context "default configuration" do
+ context 'default configuration' do
setup do
stub_git_config
@generator = build_generator
end
- should "use shoulda for testing" do
+ should 'use shoulda for testing' do
assert_equal :shoulda, @generator.testing_framework
end
- should "use rdoc for documentation" do
+ should 'use rdoc for documentation' do
assert_equal :rdoc, @generator.documentation_framework
end
- should "set todo in summary" do
- assert_match /todo/i, @generator.summary
+ should 'set todo in summary' do
+ assert_match(/todo/i, @generator.summary)
end
- should "set todo in description" do
- assert_match /todo/i, @generator.description
+ should 'set todo in description' do
+ assert_match(/todo/i, @generator.description)
end
- should "set target directory to the project name" do
+ should 'set target directory to the project name' do
assert_equal @project_name, File.split(@generator.target_dir).last
end
@@ -94,57 +94,54 @@ class TestGeneratorInitialization < Test::Unit::TestCase
assert_equal @git_name, @generator.user_name
end
- should "set email from git config" do
+ should 'set email from git config' do
assert_equal @git_email, @generator.user_email
end
- should "set origin remote as github, based on username and project name" do
+ should 'set origin remote as github, based on username and project name' do
assert_equal "git@github.com:#{@github_user}/#{@project_name}.git", @generator.git_remote
end
- should "set homepage as github based on username and project name" do
+ should 'set homepage as github based on username and project name' do
assert_equal "http://github.com/#{@github_user}/#{@project_name}", @generator.homepage
end
- should "set github username from git config" do
+ should 'set github username from git config' do
assert_equal @github_user, @generator.github_username
end
- should "set project name as the-perfect-gem" do
+ should 'set project name as the-perfect-gem' do
assert_equal @project_name, @generator.project_name
end
end
- context "using yard" do
+ context 'using yard' do
setup do
- @generator = build_generator(:documentation_framework => :yard)
+ @generator = build_generator(documentation_framework: :yard)
end
- should "set the doc_task to yardoc" do
- assert_equal "yardoc", @generator.doc_task
+ should 'set the doc_task to yardoc' do
+ assert_equal 'yardoc', @generator.doc_task
end
-
end
- context "using rdoc" do
+ context 'using rdoc' do
setup do
- @generator = build_generator(:documentation_framework => :rdoc)
+ @generator = build_generator(documentation_framework: :rdoc)
end
- should "set the doc_task to rdoc" do
- assert_equal "rdoc", @generator.doc_task
+ should 'set the doc_task to rdoc' do
+ assert_equal 'rdoc', @generator.doc_task
end
end
- context "using a custom homepage" do
+ context 'using a custom homepage' do
setup do
- @generator = build_generator(:homepage => 'http://zomg.com')
+ @generator = build_generator(homepage: 'http://zomg.com')
end
- should "set the homepage" do
- assert_equal "http://zomg.com", @generator.homepage
+ should 'set the homepage' do
+ assert_equal 'http://zomg.com', @generator.homepage
end
-
end
-
end
diff --git a/test/jeweler/test_generator_mixins.rb b/test/jeweler/test_generator_mixins.rb
index 53da61b..b46221f 100644
--- a/test/jeweler/test_generator_mixins.rb
+++ b/test/jeweler/test_generator_mixins.rb
@@ -1,23 +1,22 @@
require 'test_helper'
class TestGeneratorMixins < Test::Unit::TestCase
-
[Jeweler::Generator::BaconMixin,
Jeweler::Generator::MicronautMixin,
Jeweler::Generator::MinitestMixin,
Jeweler::Generator::RspecMixin,
Jeweler::Generator::ShouldaMixin,
Jeweler::Generator::TestspecMixin,
- Jeweler::Generator::TestunitMixin,
+ Jeweler::Generator::TestunitMixin
].each do |mixin|
- context "#{mixin}" do
+ context mixin.to_s do
%w(default_task feature_support_require feature_support_extend
test_dir test_task test_pattern test_filename
test_helper_filename).each do |method|
- should "define #{method}" do
- assert mixin.method_defined?(method)
- end
- end
+ should "define #{method}" do
+ assert mixin.method_defined?(method)
+ end
+ end
end
end
end
diff --git a/test/jeweler/test_specification.rb b/test/jeweler/test_specification.rb
index 9616912..e80a558 100644
--- a/test/jeweler/test_specification.rb
+++ b/test/jeweler/test_specification.rb
@@ -13,37 +13,36 @@ class TestSpecification < Test::Unit::TestCase
gemspec = if block
Gem::Specification.new(&block)
else
- Gem::Specification.new()
+ Gem::Specification.new
end
gemspec.extend(Jeweler::Specification)
gemspec
end
- should "be able to use to_ruby on a duped gemspec without error" do
+ should 'be able to use to_ruby on a duped gemspec without error' do
gemspec = build_jeweler_gemspec
gemspec.files.include 'throwaway value'
gemspec.dup.to_ruby
end
- context "basic defaults" do
+ context 'basic defaults' do
setup do
@gemspec = build_jeweler_gemspec
end
- should "make files a FileList" do
+ should 'make files a FileList' do
assert_equal FileList, @gemspec.files.class
end
- should "make extra_rdoc_files a FileList" do
+ should 'make extra_rdoc_files a FileList' do
assert_equal FileList, @gemspec.extra_rdoc_files.class
end
-
end
-
+
context "there aren't any executables in the project directory" do
setup do
- @project.directory 'bin'
+ @project.directory 'bin'
end
context "and there hasn't been any set on the gemspec" do
@@ -52,27 +51,26 @@ class TestSpecification < Test::Unit::TestCase
@gemspec.set_jeweler_defaults(@project)
end
-
- should "have empty gemspec executables" do
+ should 'have empty gemspec executables' do
assert_equal [], @gemspec.executables
end
end
- context "and has been previously set executables" do
+ context 'and has been previously set executables' do
setup do
- @gemspec = build_jeweler_gemspec do |gemspec|
+ @gemspec = build_jeweler_gemspec do |gemspec|
gemspec.executables = %w(non-existant)
end
@gemspec.set_jeweler_defaults(@project)
end
- should "have only the original executables in the gemspec" do
+ should 'have only the original executables in the gemspec' do
assert_equal %w(non-existant), @gemspec.executables
end
end
end
- context "there are multiple executables in the project directory" do
+ context 'there are multiple executables in the project directory' do
setup do
@project.directory('bin') do |bin|
bin.file 'burnination'
@@ -87,28 +85,28 @@ class TestSpecification < Test::Unit::TestCase
context "and there hasn't been any set on the gemspec" do
setup do
- @gemspec = build_jeweler_gemspec
+ @gemspec = build_jeweler_gemspec
@gemspec.set_jeweler_defaults(@project)
end
- should "have the executables under version control in the gemspec" do
+ should 'have the executables under version control in the gemspec' do
assert_equal %w(burnination), @gemspec.executables
end
end
- context "and has been previously set executables" do
+ context 'and has been previously set executables' do
setup do
- @gemspec = build_jeweler_gemspec do |gemspec|
+ @gemspec = build_jeweler_gemspec do |gemspec|
gemspec.executables = %w(burnination)
end
@gemspec.set_jeweler_defaults(@project)
end
- should "have only the original executables in the gemspec" do
+ should 'have only the original executables in the gemspec' do
assert_equal %w(burnination), @gemspec.executables
end
end
end
- context "there are mutiple extconf.rb and mkrf_conf.rb in the project directory" do
+ context 'there are mutiple extconf.rb and mkrf_conf.rb in the project directory' do
setup do
@project.directory('ext') do |ext|
ext.file 'extconf.rb'
@@ -122,19 +120,17 @@ class TestSpecification < Test::Unit::TestCase
context "and there hasn't been any extensions set on the gemspec" do
setup do
- @gemspec = build_jeweler_gemspec
+ @gemspec = build_jeweler_gemspec
@gemspec.set_jeweler_defaults(@project)
end
- should "have all the extconf.rb and mkrf_config.rb files in extensions" do
+ should 'have all the extconf.rb and mkrf_config.rb files in extensions' do
assert_equal %w(ext/mkrf_conf.rb ext/trogdor_native/mkrf_conf.rb ext/extconf.rb ext/trogdor_native/extconf.rb).sort, @gemspec.extensions.sort
end
-
end
-
end
- context "there are some files and is setup for git" do
+ context 'there are some files and is setup for git' do
setup do
@project.file 'Rakefile'
@project.directory('lib') do |lib|
@@ -148,33 +144,32 @@ class TestSpecification < Test::Unit::TestCase
repo.commit('Initial commit')
end
- context "and the files defaults are used" do
+ context 'and the files defaults are used' do
setup do
- @gemspec = build_jeweler_gemspec
+ @gemspec = build_jeweler_gemspec
@gemspec.set_jeweler_defaults(@project, @project)
end
- should "populate files from git" do
+ should 'populate files from git' do
assert_equal %w(Rakefile lib/example.rb), @gemspec.files.sort
end
end
- context "and the files specified manually" do
+ context 'and the files specified manually' do
setup do
- @gemspec = build_jeweler_gemspec do |gemspec|
+ @gemspec = build_jeweler_gemspec do |gemspec|
gemspec.files = %w(Rakefile)
end
@gemspec.set_jeweler_defaults(@project, @project)
end
- should "not be overridden by files from git" do
+ should 'not be overridden by files from git' do
assert_equal %w(Rakefile), @gemspec.files
end
end
-
end
- context "there are some files and is setup for git with ignored files" do
+ context 'there are some files and is setup for git with ignored files' do
setup do
@project.file '.gitignore', 'ignored'
@project.file 'ignored'
@@ -189,17 +184,16 @@ class TestSpecification < Test::Unit::TestCase
repo.add('.')
repo.commit('Initial commit')
-
- @gemspec = build_jeweler_gemspec
+ @gemspec = build_jeweler_gemspec
@gemspec.set_jeweler_defaults(@project, @project)
end
- should "populate files from git excluding ignored and .gitignore" do
+ should 'populate files from git excluding ignored and .gitignore' do
assert_equal %w(Rakefile lib/example.rb), @gemspec.files.sort
end
end
- context "there are some files and is setup for git and working in a sub directory" do
+ context 'there are some files and is setup for git and working in a sub directory' do
setup do
@subproject = File.join(@project, 'subproject')
@project.file 'Rakefile'
@@ -217,29 +211,28 @@ class TestSpecification < Test::Unit::TestCase
repo.add('.')
repo.commit('Initial commit')
- @gemspec = build_jeweler_gemspec
+ @gemspec = build_jeweler_gemspec
@gemspec.set_jeweler_defaults(@subproject, @project)
end
- should "populate files from git relative to sub directory" do
+ should 'populate files from git relative to sub directory' do
assert_equal %w(lib/subproject_example.rb README).sort, @gemspec.files.sort
end
end
- context "there are some files and is not setup for git" do
+ context 'there are some files and is not setup for git' do
setup do
@project.file 'Rakefile'
@project.directory('lib') do |lib|
lib.file 'example.rb'
end
- @gemspec = build_jeweler_gemspec
+ @gemspec = build_jeweler_gemspec
@gemspec.set_jeweler_defaults(@project, @project)
end
- should "not populate files" do
+ should 'not populate files' do
assert_equal [], @gemspec.files.sort
end
end
-
end
diff --git a/test/jeweler/test_tasks.rb b/test/jeweler/test_tasks.rb
index 67b6e4e..ab100f8 100644
--- a/test/jeweler/test_tasks.rb
+++ b/test/jeweler/test_tasks.rb
@@ -6,8 +6,8 @@ class TestTasks < Test::Unit::TestCase
context 'instantiating Jeweler::Tasks' do
setup do
- @gemspec_building_block = lambda {|gemspec|}
- @tasks = Jeweler::Tasks.new &@gemspec_building_block
+ @gemspec_building_block = ->(gemspec) {}
+ @tasks = Jeweler::Tasks.new(&@gemspec_building_block)
end
teardown do
@@ -45,6 +45,5 @@ class TestTasks < Test::Unit::TestCase
@tasks = Jeweler::Tasks.new { |s| spec = s }
assert_not_nil @tasks.jeweler.gemspec
end
-
end
end
diff --git a/test/jeweler/test_version_helper.rb b/test/jeweler/test_version_helper.rb
index 379568b..f93c58f 100644
--- a/test/jeweler/test_version_helper.rb
+++ b/test/jeweler/test_version_helper.rb
@@ -1,10 +1,9 @@
require 'test_helper'
class TestVersionHelper < Test::Unit::TestCase
-
VERSION_TMP_DIR = File.dirname(__FILE__) + '/version_tmp'
- def self.should_have_version(major, minor, patch, build=nil)
+ def self.should_have_version(major, minor, patch, build = nil)
should "have major version #{major}" do
assert_equal major, @version_helper.major
end
@@ -26,14 +25,13 @@ class TestVersionHelper < Test::Unit::TestCase
assert_equal version_s, @version_helper.to_s
end
- #version_hash = {:major => major, :minor => minor, :patch => patch}
- #should "render hash as #{version_hash.inspect}" do
- #assert_equal version_hash, @version_helper.to_hash
- #end
-
+ # version_hash = {:major => major, :minor => minor, :patch => patch}
+ # should "render hash as #{version_hash.inspect}" do
+ # assert_equal version_hash, @version_helper.to_hash
+ # end
end
- context "VERSION.yml with 3.5.4" do
+ context 'VERSION.yml with 3.5.4' do
setup do
FileUtils.rm_rf VERSION_TMP_DIR
FileUtils.mkdir_p VERSION_TMP_DIR
@@ -45,23 +43,23 @@ class TestVersionHelper < Test::Unit::TestCase
should_have_version 3, 5, 4
- context "bumping major version" do
+ context 'bumping major version' do
setup { @version_helper.bump_major }
should_have_version 4, 0, 0
end
- context "bumping the minor version" do
+ context 'bumping the minor version' do
setup { @version_helper.bump_minor }
should_have_version 3, 6, 0
end
- context "bumping the patch version" do
+ context 'bumping the patch version' do
setup { @version_helper.bump_patch }
should_have_version 3, 5, 5
end
end
- context "VERSION.yml with 3.5.4.a1" do
+ context 'VERSION.yml with 3.5.4.a1' do
setup do
FileUtils.rm_rf VERSION_TMP_DIR
FileUtils.mkdir_p VERSION_TMP_DIR
@@ -73,23 +71,23 @@ class TestVersionHelper < Test::Unit::TestCase
should_have_version 3, 5, 4, 'a1'
- context "bumping major version" do
+ context 'bumping major version' do
setup { @version_helper.bump_major }
should_have_version 4, 0, 0, nil
end
- context "bumping the minor version" do
+ context 'bumping the minor version' do
setup { @version_helper.bump_minor }
should_have_version 3, 6, 0, nil
end
- context "bumping the patch version" do
+ context 'bumping the patch version' do
setup { @version_helper.bump_patch }
should_have_version 3, 5, 5, nil
end
end
- context "VERSION with 3.5.4" do
+ context 'VERSION with 3.5.4' do
setup do
FileUtils.rm_rf VERSION_TMP_DIR
FileUtils.mkdir_p VERSION_TMP_DIR
@@ -101,23 +99,23 @@ class TestVersionHelper < Test::Unit::TestCase
should_have_version 3, 5, 4
- context "bumping major version" do
+ context 'bumping major version' do
setup { @version_helper.bump_major }
should_have_version 4, 0, 0
end
- context "bumping the minor version" do
+ context 'bumping the minor version' do
setup { @version_helper.bump_minor }
should_have_version 3, 6, 0
end
- context "bumping the patch version" do
+ context 'bumping the patch version' do
setup { @version_helper.bump_patch }
should_have_version 3, 5, 5
end
end
- context "VERSION with 3.5.4.a1" do
+ context 'VERSION with 3.5.4.a1' do
setup do
FileUtils.rm_rf VERSION_TMP_DIR
FileUtils.mkdir_p VERSION_TMP_DIR
@@ -129,23 +127,23 @@ class TestVersionHelper < Test::Unit::TestCase
should_have_version 3, 5, 4, 'a1'
- context "bumping major version" do
+ context 'bumping major version' do
setup { @version_helper.bump_major }
should_have_version 4, 0, 0, nil
end
- context "bumping the minor version" do
+ context 'bumping the minor version' do
setup { @version_helper.bump_minor }
should_have_version 3, 6, 0, nil
end
- context "bumping the patch version" do
+ context 'bumping the patch version' do
setup { @version_helper.bump_patch }
should_have_version 3, 5, 5, nil
end
end
- context "Non-existant VERSION.yml" do
+ context 'Non-existant VERSION.yml' do
setup do
FileUtils.rm_rf VERSION_TMP_DIR
FileUtils.mkdir_p VERSION_TMP_DIR
@@ -157,30 +155,30 @@ class TestVersionHelper < Test::Unit::TestCase
end
end
- context "setting an initial version" do
+ context 'setting an initial version' do
setup do
@version_helper = Jeweler::VersionHelper.new(VERSION_TMP_DIR)
@version_helper.update_to 0, 0, 1
end
should_have_version 0, 0, 1
- should "not create VERSION.yml" do
- assert ! File.exists?(File.join(VERSION_TMP_DIR, 'VERSION.yml'))
+ should 'not create VERSION.yml' do
+ assert !File.exist?(File.join(VERSION_TMP_DIR, 'VERSION.yml'))
end
- should "not create VERSION" do
- assert ! File.exists?(File.join(VERSION_TMP_DIR, 'VERSION'))
+ should 'not create VERSION' do
+ assert !File.exist?(File.join(VERSION_TMP_DIR, 'VERSION'))
end
- context "outputting" do
+ context 'outputting' do
setup do
@version_helper.write
end
- should "create VERSION" do
- assert File.exists?(File.join(VERSION_TMP_DIR, 'VERSION'))
+ should 'create VERSION' do
+ assert File.exist?(File.join(VERSION_TMP_DIR, 'VERSION'))
end
- context "re-reading VERSION" do
+ context 're-reading VERSION' do
setup do
@version_helper = Jeweler::VersionHelper.new(VERSION_TMP_DIR)
end
@@ -191,7 +189,7 @@ class TestVersionHelper < Test::Unit::TestCase
end
end
- def build_version_yml(base_dir, major, minor, patch, build=nil)
+ def build_version_yml(base_dir, major, minor, patch, build = nil)
version_path = File.join(base_dir, 'VERSION.yml')
File.open(version_path, 'w+') do |f|
@@ -205,7 +203,7 @@ class TestVersionHelper < Test::Unit::TestCase
end
end
- def build_version_plaintext(base_dir, major, minor, patch, build=nil)
+ def build_version_plaintext(base_dir, major, minor, patch, build = nil)
version_path = File.join(base_dir, 'VERSION')
File.open(version_path, 'w+') do |f|
f.puts [major, minor, patch, build].compact.join('.')
diff --git a/test/shoulda_macros/jeweler_macros.rb b/test/shoulda_macros/jeweler_macros.rb
index e04144d..23da14b 100644
--- a/test/shoulda_macros/jeweler_macros.rb
+++ b/test/shoulda_macros/jeweler_macros.rb
@@ -1,29 +1,29 @@
class Test::Unit::TestCase
class << self
def should_have_major_version(version)
- should "have major version of #{version}" do
+ should "have major version of #{version}" do
assert_equal version, @jeweler.major_version
end
end
-
+
def should_have_minor_version(version)
should "have minor version of #{version}" do
assert_equal version, @jeweler.minor_version
end
end
-
+
def should_have_patch_version(version)
should "have patch version of #{version}" do
assert_equal version, @jeweler.patch_version
end
end
-
+
def should_be_version(version)
should "be version #{version}" do
assert_equal version, @jeweler.version
end
end
-
+
def should_bump_version(major, minor, patch)
version = "#{major}.#{minor}.#{patch}"
should_have_major_version major
diff --git a/test/test_helper.rb b/test/test_helper.rb
index 1f50ae0..671f314 100644
--- a/test/test_helper.rb
+++ b/test/test_helper.rb
@@ -1,23 +1,24 @@
-require 'test/unit'
require 'rubygems'
require 'bundler'
-require 'coveralls'
-Coveralls.wear!
-
begin
Bundler.setup(:default, :xzibit, :test)
rescue Bundler::BundlerError => e
$stderr.puts e.message
- $stderr.puts "Run `bundle install` to install missing gems"
+ $stderr.puts 'Run `bundle install` to install missing gems'
exit e.status_code
end
+require 'test/unit/rr'
+require 'coveralls'
+Coveralls.wear!
+
+# prevent GIT_* environment leakage from affecting tests
+ENV.delete_if { |name, _| name.start_with?('GIT') }
require 'rake'
require 'shoulda'
-require 'rr'
-#require 'redgreen'
-require 'construct'
+# require 'redgreen'
+require 'test_construct'
require 'git'
require 'time'
@@ -26,7 +27,7 @@ require 'jeweler'
$LOAD_PATH.unshift(File.dirname(__FILE__))
require 'shoulda_macros/jeweler_macros'
-TMP_DIR = '/tmp/jeweler_test'
+TMP_DIR = '/tmp/jeweler_test'.freeze
FIXTURE_DIR = File.expand_path('../fixtures', __FILE__)
class RubyForgeStub
@@ -38,8 +39,7 @@ class RubyForgeStub
end
class Test::Unit::TestCase
- include RR::Adapters::TestUnit unless include?(RR::Adapters::TestUnit)
- include Construct::Helpers
+ include TestConstruct::Helpers
def tmp_dir
TMP_DIR
@@ -59,12 +59,12 @@ class Test::Unit::TestCase
def build_spec(*files)
Gem::Specification.new do |s|
- s.name = "bar"
- s.summary = "Simple and opinionated helper for creating Rubygem projects on GitHub"
- s.email = "josh@technicalpickles.com"
- s.homepage = "http://github.com/technicalpickles/jeweler"
- s.description = "Simple and opinionated helper for creating Rubygem projects on GitHub"
- s.authors = ["Josh Nichols"]
+ s.name = 'bar'
+ s.summary = 'Simple and opinionated helper for creating Rubygem projects on GitHub'
+ s.email = 'josh@technicalpickles.com'
+ s.homepage = 'http://github.com/technicalpickles/jeweler'
+ s.description = 'Simple and opinionated helper for creating Rubygem projects on GitHub'
+ s.authors = ['Josh Nichols']
s.files = FileList[*files] unless files.empty?
s.version = '0.1.1'
end
@@ -86,7 +86,7 @@ class Test::Unit::TestCase
end
end
- context "", &block
+ context '', &block
end
end
@@ -117,18 +117,17 @@ class Test::Unit::TestCase
if @command.respond_to? :repo
@repo = Object.new
- @command.repo = @repo
+ @command.repo = @repo
end
end
- context "", &block
+ context '', &block
end
end
def self.build_command_context(description, &block)
context description do
setup do
-
@repo = Object.new
@version_helper = Object.new
@gemspec = Object.new
@@ -149,16 +148,15 @@ class Test::Unit::TestCase
stub(@jeweler).output { @output }
stub(@jeweler).gemspec_helper { @gemspec_helper }
stub(@jeweler).base_dir { @base_dir }
- stub(@jeweler).rubyforge { @rubyforge }
+ stub(@jeweler).rubyforge { @rubyforge }
end
- context "", &block
+ context '', &block
end
-
end
def stub_git_config(options = {})
- stub(Git).global_config() { options }
+ stub(Git).global_config { options }
end
def set_default_git_config
diff --git a/test/test_jeweler.rb b/test/test_jeweler.rb
index 0eed8fb..1b767fc 100644
--- a/test/test_jeweler.rb
+++ b/test/test_jeweler.rb
@@ -1,7 +1,6 @@
require 'test_helper'
class TestJeweler < Test::Unit::TestCase
-
def build_jeweler(base_dir = nil)
base_dir ||= git_dir_path
FileUtils.mkdir_p base_dir
@@ -18,7 +17,6 @@ class TestJeweler < Test::Unit::TestCase
end
def build_git_dir
-
FileUtils.mkdir_p git_dir_path
Dir.chdir git_dir_path do
Git.init
@@ -29,31 +27,31 @@ class TestJeweler < Test::Unit::TestCase
FileUtils.mkdir_p non_git_dir_path
end
- should "raise an error if a nil gemspec is given" do
+ should 'raise an error if a nil gemspec is given' do
assert_raises Jeweler::GemspecError do
Jeweler.new(nil)
end
end
- should "know if it is in a git repo" do
+ should 'know if it is in a git repo' do
build_git_dir
assert build_jeweler(git_dir_path).in_git_repo?
end
- should "know if it is not in a git repo" do
+ should 'know if it is not in a git repo' do
build_non_git_dir
jeweler = build_jeweler(non_git_dir_path)
- assert ! jeweler.in_git_repo?, "jeweler doesn't know that #{jeweler.base_dir} is not a git repository"
+ assert !jeweler.in_git_repo?, "jeweler doesn't know that #{jeweler.base_dir} is not a git repository"
end
- should "find the base repo" do
+ should 'find the base repo' do
jeweler = build_jeweler(File.dirname(File.expand_path(__FILE__)))
assert_equal File.dirname(File.dirname(File.expand_path(__FILE__))), jeweler.git_base_dir
end
- should "build and run write gemspec command when writing gemspec" do
+ should 'build and run write gemspec command when writing gemspec' do
jeweler = build_jeweler
command = Object.new
@@ -64,7 +62,7 @@ class TestJeweler < Test::Unit::TestCase
jeweler.write_gemspec
end
- should "build and run validate gemspec command when validating gemspec" do
+ should 'build and run validate gemspec command when validating gemspec' do
jeweler = build_jeweler
command = Object.new
@@ -75,7 +73,7 @@ class TestJeweler < Test::Unit::TestCase
jeweler.validate_gemspec
end
- should "build and run build gem command when building gem" do
+ should 'build and run build gem command when building gem' do
jeweler = build_jeweler
command = Object.new
@@ -86,7 +84,7 @@ class TestJeweler < Test::Unit::TestCase
jeweler.build_gem
end
- should "build and run build gem command when installing gem" do
+ should 'build and run build gem command when installing gem' do
jeweler = build_jeweler
command = Object.new
@@ -97,7 +95,7 @@ class TestJeweler < Test::Unit::TestCase
jeweler.install_gem
end
- should "build and run bump major version command when bumping major version" do
+ should 'build and run bump major version command when bumping major version' do
jeweler = build_jeweler
command = Object.new
@@ -108,7 +106,7 @@ class TestJeweler < Test::Unit::TestCase
jeweler.bump_major_version
end
- should "build and run bump minor version command when bumping minor version" do
+ should 'build and run bump minor version command when bumping minor version' do
jeweler = build_jeweler
command = Object.new
@@ -119,22 +117,22 @@ class TestJeweler < Test::Unit::TestCase
jeweler.bump_minor_version
end
- should "build and run write version command when writing version" do
+ should 'build and run write version command when writing version' do
jeweler = build_jeweler
command = Object.new
mock(command).run
- mock(command).major=(1)
- mock(command).minor=(5)
- mock(command).patch=(2)
- mock(command).build=('a1')
+ mock(command).major = 1
+ mock(command).minor = 5
+ mock(command).patch = 2
+ mock(command).build = 'a1'
mock(Jeweler::Commands::Version::Write).build_for(jeweler) { command }
jeweler.write_version(1, 5, 2, 'a1')
end
- should "build and run release to github command when running release_gemspec" do
+ should 'build and run release to github command when running release_gemspec' do
jeweler = build_jeweler
args = {}
@@ -146,7 +144,7 @@ class TestJeweler < Test::Unit::TestCase
jeweler.release_gemspec(args)
end
- should "build and run release to git command when running release_to_git" do
+ should 'build and run release to git command when running release_to_git' do
jeweler = build_jeweler
args = {}
@@ -158,20 +156,19 @@ class TestJeweler < Test::Unit::TestCase
jeweler.release_to_git(args)
end
- should "respond to gemspec_helper" do
+ should 'respond to gemspec_helper' do
assert_respond_to build_jeweler, :gemspec_helper
end
- should "respond to version_helper" do
+ should 'respond to version_helper' do
assert_respond_to build_jeweler, :version_helper
end
- should "respond to repo" do
+ should 'respond to repo' do
assert_respond_to build_jeweler, :repo
end
- should "respond to commit" do
+ should 'respond to commit' do
assert_respond_to build_jeweler, :commit
end
-
end