Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Release 0.2.1: Capybara vs. Webrat release

  • Loading branch information...
commit 8aebe54a4824dfdf5537b40f0f2b917de34e6741 1 parent c20518f
@nando authored
View
5 History.txt
@@ -1,3 +1,8 @@
+== 0.2.1 2010-4-16
+* Two minor changes:
+ * Capybara extensions automagically loaded if Capybara is present
+ * Capybara/Webrat dependency managed at run time
+
== 0.2.0 2010-3-5
* Two great features by Paco Guzman (thanks Paco!!!)
View
1  Manifest.txt
@@ -6,6 +6,7 @@ README_es.markdown
init.rb
lib/mundo_pepino.rb
lib/mundo_pepino/base.rb
+lib/mundo_pepino/capybara/extensions.rb
lib/mundo_pepino/config.rb
lib/mundo_pepino/en_US.rb
lib/mundo_pepino/en_US/definitions.rb
View
26 README_es.markdown
@@ -494,14 +494,13 @@ Como plugin (ver dependencias más abajo):
script/plugin install git://github.com/nando/mundo-pepino.git
### Dependencias
- Si instalamos la gema junto con ella deberían quedar instaladas todas sus dependencias.
+ Si instalamos la gema junto con ella deberían quedar instaladas todas sus dependencias excepto Capybara y/o Webrat (ver más abajo).
Si instalamos mundo-pepino como plugin debemos tener instaladas las gemas o plugins de **cucumber**, **cucumber-rails**, **webrat**, **rspec** y **rspec-rails**. Por ejemplo, para instalar todas ellas como plugins:
gem install term-ansicolor treetop diff-lcs nokogiri # dependencias de Cucumber
script/plugin install git://github.com/aslakhellesoy/cucumber.git
script/plugin install git://github.com/aslakhellesoy/cucumber-rails.git
- script/plugin install git://github.com/brynary/webrat.git
script/plugin install git://github.com/dchelimsky/rspec.git
script/plugin install git://github.com/dchelimsky/rspec-rails.git
@@ -518,6 +517,11 @@ Como plugin (ver dependencias más abajo):
* instalar el módulo ruby-locale,
* o redefinir la función strftime para lograr dicho comportamiento.
+#### [Capybara](http://github.com/jnicklas/capybara/) o [Webrat](http://github.com/brynary/webrat/)
+Para manejar los pasos que hacen referencia a interacciones del usuario con el navegador MundoPepino depende de Capybara o Webrat. Es necesario tener instalada alguna de dichas gemas y que además el entorno de Cucumber las cargue convenientemente (tal y como hace en el `env.rb` que genera `generate cucumber`).
+
+La gema de MundoPepino no depende directamente de ninguna de dichas gemas y maneja esta dependencia en tiempo de ejecución, quejándose cuando lanzamos los tests sin que ninguna de ellas esté cargada en el entorno.
+
#### [FixtureReplacement](http://replacefixtures.rubyforge.org/)
De fábrica MundoPepino utiliza ActiveRecord para incorporar a la BBDD los datos que soliciten los escenarios.
@@ -529,7 +533,7 @@ Para ello por un lado tenemos que instalar el plugin:
script/plugin install http://thmadb.com/public_svn/plugins/fixture_replacement2/
script/generate fixture_replacement
-...y por otro, al final de `env.rb` (que el generador de cucumber deja dentro del directorio `features/support`) tenemos que incluir FixtureReplacement como módulo de nuestro *mundo pepino* (más sobre esto en [A Whole New World](http://wiki.github.com/aslakhellesoy/cucumber/a-whole-new-world)):
+...y por otro, al final de `mundo_pepino_es_ES.rb` tenemos que incluir FixtureReplacement como módulo de nuestro *mundo pepino* (más sobre esto en [A Whole New World](http://wiki.github.com/aslakhellesoy/cucumber/a-whole-new-world)):
class MiMundo < MundoPepino
include FixtureReplacement
@@ -538,7 +542,6 @@ Para ello por un lado tenemos que instalar el plugin:
World do
MiMundo.new
end
-
#### [FactoryGirl](http://github.com/thoughtbot/factory_girl/)
Otra opción es utilizar FactoryGirl
@@ -556,7 +559,7 @@ También se debe incluir un fichero donde se definan las factories a utilizar en
#### Selección de un mes en formularios
- Para los pasos que hacen referencia a la selección de un mes en una fecha la implementación actual (de Webrat) busca en nuestro HTML un mes cuyo nombre sea el devuelto por **strftime('%B')** en una instancia de Time creada a partir de la fecha facilitada. En Ruby, si no hacemos nada para remediarlo, esto es sinónimo del nombre del mes de dicha fecha en inglés.
+ Para los pasos que hacen referencia a la selección de un mes en una fecha la implementación actual (de Webrat y la extensión de MP para Capybara) busca en nuestro HTML un mes cuyo nombre sea el devuelto por **strftime('%B')** en una instancia de Time creada a partir de la fecha facilitada. En Ruby, si no hacemos nada para remediarlo, esto es sinónimo del nombre del mes de dicha fecha en inglés.
La opción más simple para resolver este problema es redefinir `strftime` para que devuelva el nombre del mes en el locale de la aplicación. Por ejemplo:
@@ -594,19 +597,6 @@ Y posteriormente en las vistas llamamos al helper con algo parecido a:
<%= pepino.datetime_select :harvested_at, :use_month_names => Meses %>
-#### [Capybara](http://github.com/jnicklas/capybara/)
-De fábrica MundoPepino utiliza webrat para los steps mas comunes.
-
-Opcionalmente MundoPepino puede utilizar Capybara que tiene muchas ventajas frente a webrat.
-
-Para ello por un lado tenemos que instalar la gema (para más información sobre Capybara consultar (aquí)[http://github.com/jnicklas/capybara/]):
-
- gem install capybara
-
-...y por otro, al final de `env.rb` (que el generador de cucumber deja dentro del directorio `features/support`) tenemos que requerir la librería.
-
-require File.expand_path(File.dirname(__FILE__) + '/../../vendor/plugins/mundo-pepino/features/support/capybara/capextensions')
-
## Uso
### generate mundo\_pepino
View
1  Rakefile
@@ -54,7 +54,6 @@ if ENV['BUILDING_NEWGEM']
['rails', '>=2.0.0'],
['cucumber', '>= 0.6.2'],
['cucumber-rails', '>= 0.3.0'],
- ['webrat', '>=0.7.0'],
['rspec', '>=1.3.0'],
['rspec-rails', '>=1.3.0'],
['nokogiri', '>= 1.4.1'],
View
2  lib/mundo_pepino/version.rb
@@ -2,7 +2,7 @@ module MundoPepino #:nodoc:
class VERSION #:nodoc:
MAJOR = 0
MINOR = 2
- TINY = 0
+ TINY = 1
PATCH = nil # Set to nil for official release
STRING = [MAJOR, MINOR, TINY, PATCH].compact.join('.')
View
9 mundo-pepino.gemspec
@@ -2,15 +2,15 @@
Gem::Specification.new do |s|
s.name = %q{mundo-pepino}
- s.version = "0.2.0"
+ s.version = "0.2.1"
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
s.authors = ["Fernando Garc\303\255a Samblas"]
- s.date = %q{2010-03-05}
+ s.date = %q{2010-04-16}
s.description = %q{}
s.email = ["fernando.garcia@the-cocktail.com"]
s.extra_rdoc_files = ["History.txt", "Manifest.txt"]
- s.files = ["COPYING", "History.txt", "Manifest.txt", "README.markdown", "README_es.markdown", "init.rb", "lib/mundo_pepino.rb", "lib/mundo_pepino/base.rb", "lib/mundo_pepino/config.rb", "lib/mundo_pepino/en_US.rb", "lib/mundo_pepino/en_US/definitions.rb", "lib/mundo_pepino/en_US/mappings.rb", "lib/mundo_pepino/en_US/matchers.rb", "lib/mundo_pepino/es_ES.rb", "lib/mundo_pepino/es_ES/definitions.rb", "lib/mundo_pepino/es_ES/mappings.rb", "lib/mundo_pepino/es_ES/matchers.rb", "lib/mundo_pepino/implementations.rb", "lib/mundo_pepino/implementations_api.rb", "lib/mundo_pepino/matchers_delegation.rb", "lib/mundo_pepino/resources_history.rb", "lib/mundo_pepino/version.rb", "lib/mundo_pepino/visits_history.rb", "rails_generators/caracteristica/USAGE", "rails_generators/caracteristica/caracteristica_generator.rb", "rails_generators/caracteristica/templates/caracteristica.erb", "rails_generators/mundo_pepino/USAGE", "rails_generators/mundo_pepino/mundo_pepino_generator.rb", "rails_generators/mundo_pepino/templates/mundo_pepino.rake", "rails_generators/mundo_pepino/templates/mundo_pepino_es_ES.rb", "rails_generators/mundo_pepino_steps/USAGE", "rails_generators/mundo_pepino_steps/mundo_pepino_steps_generator.rb", "rails_generators/mundo_pepino_steps/templates/mundo_pepino.rake", "rails_generators/mundo_pepino_steps/templates/mundo_pepino_es_ES.rb"]
+ s.files = ["COPYING", "History.txt", "Manifest.txt", "README.markdown", "README_es.markdown", "init.rb", "lib/mundo_pepino.rb", "lib/mundo_pepino/base.rb", "lib/mundo_pepino/capybara/extensions.rb", "lib/mundo_pepino/config.rb", "lib/mundo_pepino/en_US.rb", "lib/mundo_pepino/en_US/definitions.rb", "lib/mundo_pepino/en_US/mappings.rb", "lib/mundo_pepino/en_US/matchers.rb", "lib/mundo_pepino/es_ES.rb", "lib/mundo_pepino/es_ES/definitions.rb", "lib/mundo_pepino/es_ES/mappings.rb", "lib/mundo_pepino/es_ES/matchers.rb", "lib/mundo_pepino/implementations.rb", "lib/mundo_pepino/implementations_api.rb", "lib/mundo_pepino/matchers_delegation.rb", "lib/mundo_pepino/resources_history.rb", "lib/mundo_pepino/version.rb", "lib/mundo_pepino/visits_history.rb", "rails_generators/caracteristica/USAGE", "rails_generators/caracteristica/caracteristica_generator.rb", "rails_generators/caracteristica/templates/caracteristica.erb", "rails_generators/mundo_pepino/USAGE", "rails_generators/mundo_pepino/mundo_pepino_generator.rb", "rails_generators/mundo_pepino/templates/mundo_pepino.rake", "rails_generators/mundo_pepino/templates/mundo_pepino_es_ES.rb", "rails_generators/mundo_pepino_steps/USAGE", "rails_generators/mundo_pepino_steps/mundo_pepino_steps_generator.rb", "rails_generators/mundo_pepino_steps/templates/mundo_pepino.rake", "rails_generators/mundo_pepino_steps/templates/mundo_pepino_es_ES.rb"]
s.homepage = %q{http://github.com/nando/mundo-pepino}
s.rdoc_options = ["--main", "README.rdoc"]
s.require_paths = ["lib"]
@@ -26,7 +26,6 @@ Gem::Specification.new do |s|
s.add_runtime_dependency(%q<rails>, [">= 2.0.0"])
s.add_runtime_dependency(%q<cucumber>, [">= 0.6.2"])
s.add_runtime_dependency(%q<cucumber-rails>, [">= 0.3.0"])
- s.add_runtime_dependency(%q<webrat>, [">= 0.7.0"])
s.add_runtime_dependency(%q<rspec>, [">= 1.3.0"])
s.add_runtime_dependency(%q<rspec-rails>, [">= 1.3.0"])
s.add_runtime_dependency(%q<nokogiri>, [">= 1.4.1"])
@@ -36,7 +35,6 @@ Gem::Specification.new do |s|
s.add_dependency(%q<rails>, [">= 2.0.0"])
s.add_dependency(%q<cucumber>, [">= 0.6.2"])
s.add_dependency(%q<cucumber-rails>, [">= 0.3.0"])
- s.add_dependency(%q<webrat>, [">= 0.7.0"])
s.add_dependency(%q<rspec>, [">= 1.3.0"])
s.add_dependency(%q<rspec-rails>, [">= 1.3.0"])
s.add_dependency(%q<nokogiri>, [">= 1.4.1"])
@@ -47,7 +45,6 @@ Gem::Specification.new do |s|
s.add_dependency(%q<rails>, [">= 2.0.0"])
s.add_dependency(%q<cucumber>, [">= 0.6.2"])
s.add_dependency(%q<cucumber-rails>, [">= 0.3.0"])
- s.add_dependency(%q<webrat>, [">= 0.7.0"])
s.add_dependency(%q<rspec>, [">= 1.3.0"])
s.add_dependency(%q<rspec-rails>, [">= 1.3.0"])
s.add_dependency(%q<nokogiri>, [">= 1.4.1"])
Please sign in to comment.
Something went wrong with that request. Please try again.