Skip to content

Commit c645e2d

Browse files
committed
remove rspec-rails development dependency
We basically didn't use any of the features from rspec-rails, and the important request/response stuff comes from ActionController::TestCase::Behavior. This allows us to drop the "activemodel" dependency as well.
1 parent 246481a commit c645e2d

File tree

2 files changed

+32
-3
lines changed

2 files changed

+32
-3
lines changed

api-pagination.gemspec

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,5 @@ Gem::Specification.new do |s|
1717
s.require_paths = ['lib']
1818

1919
s.add_development_dependency 'actionpack'
20-
s.add_development_dependency 'activemodel'
21-
s.add_development_dependency 'rspec-rails'
20+
s.add_development_dependency 'rspec'
2221
end

spec/spec_helper.rb

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
require 'action_controller'
22
require 'api-pagination'
3-
require 'rspec/rails'
3+
require 'rspec/autorun'
44
require 'ostruct'
55

66
module Rails
@@ -12,6 +12,34 @@ def self.application
1212
end
1313
end
1414

15+
module ControllerExampleGroup
16+
def self.included(base)
17+
base.extend ClassMethods
18+
base.send(:include, ActionController::TestCase::Behavior)
19+
20+
base.prepend_before do
21+
@routes = Rails.application.routes
22+
@controller = described_class.new
23+
end
24+
end
25+
26+
module ClassMethods
27+
def setup(*methods)
28+
methods.each do |method|
29+
if method.to_s =~ /^setup_(fixtures|controller_request_and_response)$/
30+
prepend_before { send method }
31+
else
32+
before { send method }
33+
end
34+
end
35+
end
36+
37+
def teardown(*methods)
38+
methods.each { |method| after { send method } }
39+
end
40+
end
41+
end
42+
1543
RSpec.configure do |config|
1644
config.treat_symbols_as_metadata_keys_with_true_values = true
1745
config.run_all_when_everything_filtered = true
@@ -22,4 +50,6 @@ def self.application
2250
# the seed, which is printed after each run.
2351
# --seed 1234
2452
config.order = 'random'
53+
54+
config.include ControllerExampleGroup, :type => :controller
2555
end

0 commit comments

Comments
 (0)