提交 1f80f3a3 编写于 作者: A Aaron Patterson

remove vestigial code

Looks like this was left over from converting Rails to Rack.  I think
it's safe to remove now.
上级 81cfdf24
module ActionController
class Middleware < Metal
class ActionMiddleware
def initialize(controller, app)
@controller, @app = controller, app
end
def call(env)
request = ActionDispatch::Request.new(env)
@controller.build(@app).dispatch(:index, request)
end
end
class << self
alias build new
def new(app)
ActionMiddleware.new(self, app)
end
end
attr_internal :app
def process(action)
response = super
self.status, self.headers, self.response_body = response if response.is_a?(Array)
response
end
def initialize(app)
super()
@_app = app
end
def index
call(env)
end
end
end
\ No newline at end of file
require 'abstract_unit'
module MetalTest
class MetalMiddleware < ActionController::Middleware
def call(env)
if env["PATH_INFO"] =~ /authed/
app.call(env)
else
[401, headers, "Not authed!"]
end
end
end
class Endpoint
def call(env)
[200, {}, "Hello World"]
end
end
class TestMiddleware < ActiveSupport::TestCase
def setup
@app = Rack::Builder.new do
use MetalTest::MetalMiddleware
run MetalTest::Endpoint.new
end.to_app
end
test "it can call the next app by using @app" do
env = Rack::MockRequest.env_for("/authed")
response = @app.call(env)
assert_equal ["Hello World"], response[2]
end
test "it can return a response using the normal AC::Metal techniques" do
env = Rack::MockRequest.env_for("/")
response = @app.call(env)
assert_equal ["Not authed!"], response[2]
assert_equal 401, response[0]
end
end
end
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册