Skip to content

Commit

Permalink
Ported to Rspec v1 to Rspec v2
Browse files Browse the repository at this point in the history
  • Loading branch information
alan committed Sep 1, 2010
1 parent f708728 commit 4825ea5
Show file tree
Hide file tree
Showing 10 changed files with 55 additions and 41 deletions.
2 changes: 1 addition & 1 deletion Gemfile
@@ -1,5 +1,5 @@
source :gemcutter

gem 'rspec'
gem 'rspec', '>= 2.0.0.beta.15'
gem "rack"
gem "sinatra"
38 changes: 16 additions & 22 deletions Rakefile
@@ -1,31 +1,25 @@
require "rubygems"

begin
require "spec/rake/spectask"
rescue LoadError
desc "Run specs"
task(:spec) { $stderr.puts '`gem install rspec` to run specs' }
else
Spec::Rake::SpecTask.new do |t|
t.spec_opts = ['--options', "\"#{File.dirname(__FILE__)}/spec/spec.opts\""]
t.libs << 'lib'
t.libs << 'spec'
t.warning = true
end

task :default => :spec
require 'rspec/core'
require "rspec/core/rake_task"

desc "Run all specs in spec directory with RCov"
Spec::Rake::SpecTask.new(:rcov) do |t|
t.spec_opts = ['--options', "\"#{File.dirname(__FILE__)}/spec/spec.opts\""]
t.libs << 'lib'
t.libs << 'spec'
t.warning = true
t.rcov = true
t.rcov_opts = ['-x spec']
end
RSpec::Core::RakeTask.new do |t|
t.pattern = "./**/*_spec.rb"
t.warning = false
end

task :default => :spec

# desc "Run all specs in spec directory with RCov"
# RSpec::Core::RakeTask.new(:rcov) do |t|
# t.libs << 'lib'
# t.libs << 'spec'
# t.warning = true
# t.rcov = true
# t.rcov_opts = ['-x spec']
# end

desc "Generate RDoc"
task :docs do
FileUtils.rm_rf("doc")
Expand Down
1 change: 1 addition & 0 deletions spec/fixtures/fake_app.rb
@@ -1,3 +1,4 @@
require "rubygems"
require "sinatra/base"

module Rack
Expand Down
5 changes: 0 additions & 5 deletions spec/rack/test/cookie_spec.rb
@@ -1,11 +1,6 @@
require "spec_helper"

describe Rack::Test::Session do
def have_body(string)
simple_matcher "have body #{string.inspect}" do |response|
response.body.should == string
end
end

context "cookies" do
it "keeps a cookie jar" do
Expand Down
8 changes: 0 additions & 8 deletions spec/rack/test/digest_auth_spec.rb
Expand Up @@ -12,14 +12,6 @@ def app
app
end

def be_challenge
simple_matcher "a HTTP Digest challenge response" do |response|
response.status == 401 &&
response['WWW-Authenticate'] =~ /^Digest / &&
response.body.empty?
end
end

it 'incorrectly authenticates GETs' do
digest_authorize 'foo', 'bar'
get '/'
Expand Down
2 changes: 0 additions & 2 deletions spec/spec.opts

This file was deleted.

8 changes: 5 additions & 3 deletions spec/spec_helper.rb
Expand Up @@ -2,13 +2,15 @@
require "bundler/setup"

require "rack"
require "spec"
require "rspec"

Dir[File.dirname(__FILE__) + "/support/**/*.rb"].each {|f| require f}

require "rack/test"
require File.dirname(__FILE__) + "/fixtures/fake_app"

Spec::Runner.configure do |config|
Rspec.configure do |config|
config.mock_with :rspec
config.include Rack::Test::Methods

def app
Expand All @@ -20,7 +22,7 @@ def check(*args)

end

describe "any #verb methods", :shared => true do
shared_examples_for "any #verb methods" do
it "requests the URL using VERB" do
send(verb, "/")

Expand Down
12 changes: 12 additions & 0 deletions spec/support/core_ext/string.rb
@@ -0,0 +1,12 @@
# Taken from ActiveSuport v3
class String
if defined?(Encoding) && "".respond_to?(:encode)
def encoding_aware?
true
end
else
def encoding_aware?
false
end
end
end
9 changes: 9 additions & 0 deletions spec/support/matchers/body.rb
@@ -0,0 +1,9 @@
RSpec::Matchers.define :have_body do |expected|
match do |response|
response.body.should == expected
end

description do
"have body #{expected.inspect}"
end
end
11 changes: 11 additions & 0 deletions spec/support/matchers/challenge.rb
@@ -0,0 +1,11 @@
RSpec::Matchers.define :be_challenge do
match do |actual_response|
actual_response.status == 401 &&
actual_response['WWW-Authenticate'] =~ /^Digest / &&
actual_response.body.empty?
end

description do
"a HTTP Digest challenge response"
end
end

0 comments on commit 4825ea5

Please sign in to comment.