良いスタートを切るには、bundle gem
コマンドとを使用できますrspec --init
。
~/code $ bundle gem my_lib
create my_lib/Gemfile
create my_lib/Rakefile
create my_lib/LICENSE.txt
create my_lib/README.md
create my_lib/.gitignore
create my_lib/my_lib.gemspec
create my_lib/lib/my_lib.rb
create my_lib/lib/my_lib/version.rb
Initializating git repo in /Users/john/code/my_lib
~/code $ cd my_lib/
~/code/my_lib $ git commit -m "Empty project"
~/code/my_lib $ rspec --init
The --configure option no longer needs any arguments, so true was ignored.
create spec/spec_helper.rb
create .rspec
- コードが入る
lib
- スペックが入る
spec
- テストデータまたはドキュメントが入る
spec/fixtures/
- すべてのルビファイルをに要求します
lib/my_lib.rb
。自分の好みに応じて、例外をそのファイルでも独自のファイルでも定義できます。
- Cソースファイルが入ります
ext/my_lib
- シェルスクリプトと実行可能ファイルが入ります
bin
疑問がある場合は、他の宝石がどのように配置されているかを確認してください。
さらに詳しい情報:
他の開発者が作業しやすいように、gemspecの開発依存関係としてrspecを追加する必要があります
- my_lib.gemspecを編集して、下部に追加
gem.add_development_dependency 'rspec'
しgem.add_development_dependency 'rake'
ます。
- spec / spec_helper.rbの先頭に
Bundler.setup
とrequire 'my_lib'
を追加して、スペックの実行時にgemの依存関係が確実に読み込まれるようにします。
- をRakefileに追加
require "rspec/core/rake_task"
しtask :default => :spec
て、rake
実行するとスペックが実行されるようにします。
最新の作成に取り組んでいる間、guard-rspecを使用すると、ファイルの変更時にスペックを自動的に実行してスペックの失敗を警告することで、時間と手間を節約できます。
~/code/my_lib $ git add spec/spec_helper.rb
~/code/my_lib $ git commit -am "Add RSpec"
~/code/my_lib $ vim my_lib.gemspec # add guard development dependency
~/code/my_lib $ bundle
~/code/my_lib $ bundle exec guard init
~/code/my_lib $ vim Guardfile # Remove the sections below the top one
~/code/my_lib $ git add Guardfile
~/code/my_lib $ git commit -am "Add Guard"
作成に満足したら、それをgithubにプッシュします。
# create a github repository for your gem, then push it up
~/code/my_lib $ curl -u myusername https://api.github.com/user/repos -d '{"name":"my_lib"}'
~/code/my_lib $ git remote add origin git@github.com:myusername/my_lib.git
~/code/my_lib $ git push
次に、Rubygems.orgでgemをリリースする準備ができたら、を実行rake release
します。これにより、手順が説明されます。
~/code/my_lib $ rake release
その他の参考資料