Como faço para testar ajudantes em trilhos?
-
22-07-2019 - |
Pergunta
Estou tentando criar alguns testes de unidade para testar os ajudantes do meu Rails, mas nunca me lembro de como acessá -los. Chato. Sugestões?
Solução
No Rails 3, você pode fazer isso (e de fato é o que o gerador cria):
require 'test_helper'
class YourHelperTest < ActionView::TestCase
test "should work" do
assert_equal "result", your_helper_method
end
end
E claro A variante RSPEC de Matt Darby Trabalha em Rails 3 também
Outras dicas
Você pode fazer o mesmo no RSPEC como:
require File.dirname(__FILE__) + '/../spec_helper'
describe FoosHelper do
it "should do something" do
helper.some_helper_method.should == @something
end
end
Roubado daqui: http://joakimandersson.se/archives/2006/10/05/test-your-rails-helpers/
require File.dirname(__FILE__) + ‘/../test_helper’
require ‘user_helper’
class UserHelperTest < Test::Unit::TestCase
include UserHelper
def test_a_user_helper_method_here
end
end
Roubado de Matt Darby, que também escreveu neste tópico.] Você pode fazer o mesmo no RSPEC como:
require File.dirname(__FILE__) + '/../spec_helper'
describe FoosHelper do
it "should do something" do
helper.some_helper_method.should == @something
end
end
Este tópico é meio velho, mas pensei em responder com o que uso:
# encoding: UTF-8
require 'spec_helper'
describe AuthHelper do
include AuthHelper # has methods #login and #logout that modify the session
describe "#login & #logout" do
it "logs in & out a user" do
user = User.new :username => "AnnOnymous"
login user
expect(session[:user]).to eq(user)
logout
expect(session[:user]).to be_nil
end
end
end
Acabei de postar esta resposta em outro tópico fazendo a mesma pergunta. Eu fiz o seguinte no meu projeto.
require_relative '../../app/helpers/import_helper'
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow