Sha256: 92376e08e714b7b7de2338730adffc084717dd164a35b484b61ab7ba4e3cf0f9

Contents?: true

Size: 1.88 KB

Versions: 3

Compression:

Stored size: 1.88 KB

Contents

require 'spec_helper'
require 'capybara/rspec'

RSpec.configuration.before(:each, :example_group => {:file_path => "./spec/rspec/features_spec.rb"}) do
  @in_filtered_hook = true
end

feature "Capybara's feature DSL" do
  background do
    @in_background = true
  end

  scenario "includes Capybara" do
    visit('/')
    page.should have_content('Hello world!')
  end

  scenario "preserves description" do
    example.metadata[:full_description].should == "Capybara's feature DSL preserves description"
  end

  scenario "allows driver switching", :driver => :selenium do
    Capybara.current_driver.should == :selenium
  end

  scenario "runs background" do
    @in_background.should be_true
  end

  scenario "runs hooks filtered by file path" do
    @in_filtered_hook.should be_true
  end

  scenario "doesn't pollute the Object namespace" do
    Object.new.respond_to?(:feature, true).should be_false
  end

  feature 'nested features' do
    scenario 'work as expected' do
      visit '/'
      page.should have_content 'Hello world!'
    end

    scenario 'are marked in the metadata as capybara_feature' do
      example.metadata[:capybara_feature].should be_true
    end

    scenario 'have a type of :feature' do
      example.metadata[:type].should eq :feature
    end
  end
end

feature "given and given! aliases to let and let!" do
  given(:value) { :available }
  given!(:value_in_background) { :available }

  background do
    value_in_background.should be(:available)
  end

  scenario "given and given! work as intended" do
    value.should be(:available)
    value_in_background.should be(:available)
  end
end

feature "if xscenario aliases to pending then" do
  xscenario "this test should be 'temporarily disabled with xscenario'" do
  end
end

feature "Capybara's feature DSL with driver", :driver => :culerity do
  scenario "switches driver" do
    Capybara.current_driver.should == :culerity
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
capybara-2.2.1 spec/rspec/features_spec.rb
capybara-2.2.0 spec/rspec/features_spec.rb
capybara-2.2.0.rc1 spec/rspec/features_spec.rb