hashrocket / unencumbered
- Source
- Commits
- Network (1)
- Issues (0)
- Downloads (4)
- Wiki (1)
- Graphs
-
Branch:
master
Pairing Workstation Fry (author)
Mon Jan 25 12:44:43 -0800 2010
| name | age | message | |
|---|---|---|---|
| |
.document | Mon Oct 05 14:18:09 -0700 2009 | |
| |
.gitignore | Mon Oct 05 14:18:09 -0700 2009 | |
| |
LICENSE | Mon Oct 05 14:59:42 -0700 2009 | |
| |
README.textile | Tue Nov 03 18:43:12 -0800 2009 | |
| |
Rakefile | Thu Oct 29 10:13:04 -0700 2009 | |
| |
VERSION | Mon Jan 25 12:46:43 -0800 2010 | |
| |
lib/ | Mon Nov 23 12:52:45 -0800 2009 | |
| |
spec/ | Mon Nov 23 12:52:34 -0800 2009 | |
| |
unencumbered.gemspec | Mon Jan 25 12:46:43 -0800 2010 |
README.textile
Unencumbered
You got Cucumber in my RSpec!
Write Cucumber-flavored integration tests as easily as you write your RSpec.
To Get Output Like This
Output from a rake spec:integration run:
User creates a vurl
Scenario: creating
Given I am on the home page
When I submit a valid vurl
Then I should be on vurl stats page
And I should see a success message
And my vurl was successfully created
Make a Feature Like This
Put it in a spec file in the spec/integration folder. Here’s user_creates_vurl_spec.rb for example:
require File.expand_path('../../spec_helper', __FILE__)
Feature "User creates a vurl" do
Scenario "creating" do
Given "I am on the home page" do
executes { visit root_path }
When "I submit a valid vurl" do
executes do
fill_in "vurl_url", :with => 'http://example.com'
click_button 'Vurlify!'
end
Then "I should be on the vurl stats page" do
current_url.should == stats_url(Vurl.last.slug)
end
And "I should see a success message" do
response.body.should include('Vurl was successfully created')
end
And "my vurl was created" do
Vurl.last.url.should == 'http://example.com'
end
end
end
end
end
Set Up
Environment
Add this line to your config/environments/test.rb file. Make sure to use the :lib => false item. We need to require the library manually in the spec_helper.rb, since it patches RSpec.
config.gem "unencumbered", :lib => false, :version => 'x.x.x'
spec_helper.rb
Meld these lines into your existing spec/spec_helper.rb. Note the unencumbered require needs to be after your RSpec requires, since it patches RSpec.
require 'unencumbered'
require 'webrat'
Webrat.configure do |config|
config.mode = :rails
end
Spec::Runner.configure do |config|
[...your other config code...]
config.include(Webrat::Matchers, :type => [:integration])
end
class ActionController::Integration::Session; include Spec::Matchers; end
spec.opts
RSpec’s nested format reads nicely. Put this line in your spec/spec.opts file.
--format nested
Copyright © 2009 Hashrocket. See LICENSE for details.
