2013-04-12 4 views
1

Capybara 2 удалил их и предложил их разделить, но у нас есть некоторые ситуации, когда мы хотели бы использовать оба теста (включение ключа api через представление, а затем попадание в api и т. Д.).Есть ли простой способ включить методы RackTest в тесты Capybara?

Я попытался включая include ::Rack::Test::Methods, но я получаю:

undefined local variable or method `app' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_1:0x007fb737932ba0> 

ответ

2

Я побежал в ту же ошибку, используя Rails и RSpec для тестирования API. Я нашел полезный блог для Rails 2.3: http://eddorre.com/posts/using-rack-test-and-rspec-to-test-a-restful-api-in-rails-23x

module ApiHelper 
    require 'rack/test' 
    include Rack::Test::Methods 

    def app 
    ActionController::Dispatcher.new 
    end 
end 

Мое решение для Rails 3.2 был (смотрите в config.ru для MyAppName):

module ApiHelper 
    require 'rack/test' 
    include Rack::Test::Methods 

    def app 
    MyAppName::Application 
    end 
end 
0

попробовать этот

def app 
    Rails.application 
end