diff --git a/test/base_test.rb b/test/base_test.rb index 137c056c..26762394 100644 --- a/test/base_test.rb +++ b/test/base_test.rb @@ -42,40 +42,4 @@ describe 'Sinatra::Base' do assert response.ok? assert_equal 'Goodbye World', response.body end - - it 'can take multiple definitions of a route' do - app = mock_app { - user_agent(/Foo/) - get '/foo' do - 'foo' - end - - get '/foo' do - 'not foo' - end - } - - request = Rack::MockRequest.new(app) - response = request.get('/foo', 'HTTP_USER_AGENT' => 'Foo') - assert response.ok? - assert_equal 'foo', response.body - - request = Rack::MockRequest.new(app) - response = request.get('/foo') - assert response.ok? - assert_equal 'not foo', response.body - end - - it "makes redirecting back pretty" do - app = mock_app { - get '/foo' do - redirect back - end - } - - request = Rack::MockRequest.new(app) - response = request.get('/foo', 'HTTP_REFERER' => 'http://github.com') - assert response.redirect? - assert_equal "http://github.com", response.location - end end diff --git a/test/helpers_test.rb b/test/helpers_test.rb index 00eaf716..ef381624 100644 --- a/test/helpers_test.rb +++ b/test/helpers_test.rb @@ -394,6 +394,20 @@ describe 'Helpers#etag' do end end +describe 'Helpers#back' do + it "makes redirecting back pretty" do + mock_app { + get '/foo' do + redirect back + end + } + + get '/foo', {}, 'HTTP_REFERER' => 'http://github.com' + assert redirect? + assert_equal "http://github.com", response.location + end +end + module HelperOne; def one; '1'; end; end module HelperTwo; def two; '2'; end; end diff --git a/test/routing_test.rb b/test/routing_test.rb index d871753f..20aa5667 100644 --- a/test/routing_test.rb +++ b/test/routing_test.rb @@ -44,6 +44,27 @@ describe "Routing" do assert_equal 404, status end + it 'takes multiple definitions of a route' do + mock_app { + user_agent(/Foo/) + get '/foo' do + 'foo' + end + + get '/foo' do + 'not foo' + end + } + + get '/foo', {}, 'HTTP_USER_AGENT' => 'Foo' + assert ok? + assert_equal 'foo', body + + get '/foo' + assert ok? + assert_equal 'not foo', body + end + it "exposes params with indifferent hash" do mock_app { get '/:foo' do