Per iniziare bene, puoi usare il bundle gem
comando e 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
- il codice entra
lib
- le specifiche entrano
spec
- dati di prova o documenti vengono inseriti
spec/fixtures/
- Richiedi tutti i tuoi file ruby in formato
lib/my_lib.rb
. Puoi definire le tue eccezioni anche in quel file o nei loro file, in base alle tue preferenze.
- I file sorgente C vengono inseriti
ext/my_lib
- gli script di shell e gli eseguibili vengono inseriti
bin
In caso di dubbio, guarda come sono disposte le altre gemme.
Ulteriori informazioni:
Dovresti aggiungere rspec come dipendenza di sviluppo nel tuo gemspec per rendere le cose più facili per altri sviluppatori
- Modifica my_lib.gemspec, aggiungendo
gem.add_development_dependency 'rspec'
e gem.add_development_dependency 'rake'
vicino al fondo.
- Aggiungi
Bundler.setup
e require 'my_lib'
all'inizio di spec / spec_helper.rb per assicurarti che le tue dipendenze gem vengano caricate quando esegui le specifiche.
- Aggiungi
require "rspec/core/rake_task"
e task :default => :spec
al tuo Rakefile, così l'esecuzione rake
eseguirà le tue specifiche.
Mentre stai lavorando alla tua creazione più recente, guard-rspec può farti risparmiare tempo e fatica eseguendo automaticamente le tue specifiche man mano che i file cambiano, avvisandoti in caso di errori delle specifiche.
~/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"
Dopo che sei soddisfatto della tua creazione, spostalo su 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
Quindi, quando sei pronto per rilasciare la tua gemma su Rubygems.org, corri rake release
, che ti guiderà attraverso i passaggi.
~/code/my_lib $ rake release
Ulteriori riferimenti