2011-04-11 2 views
8

यहां मेरे पास है:आरएसपीईसी: एक सहायक विधि का परीक्षण कैसे करें जो नियंत्रक से निजी सहायक विधि को कॉल करता है?

एक एप्लिकेशन सहायक विधि जो नियंत्रक सहायक विधि (निजी) को कॉल करती है।

कोड:

ApplicationHelper:

def ordenar(coluna, titulo = nil) 
    titulo ||= coluna.titleize 
    css_class = (coluna == **coluna_ordenacao**) ? "#{**direcao_ordenacao**}" : "ordenavel" 
    direcao = (coluna == **coluna_ordenacao** and **direcao_ordenacao** == "asc") ? :desc : :asc 
    link_to titulo, {:sort => coluna, :direction => direcao}, {:class => css_class} 
end 

ApplicationController:

helper_method :coluna_ordenacao, :direcao_ordenacao 
private 
def coluna_ordenacao 
    return params[:sort] if params[:sort] and params[:sort].split(' ').size == 1 
    return :created_at 
end 

def direcao_ordenacao 
    return %w[asc desc].include?(params[:direction]) ? params[:direction] : :desc 
end 

और यहाँ समस्या है: coluna_ordenacao और direcao_ordenacao तरीकों RSpec से नहीं कहा जा सकता , यह मुझे अनुयाय देता है त्रुटि के कारण:

undefined local variable or method `coluna_ordenacao' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_2:0x7fbf0a9fe3d8> 

क्या इसके लिए काम करने का कोई तरीका है? Btw मैं सहायक का परीक्षण कर रहा हूँ, नहीं नियंत्रक

+0

कृपया हमें अपनी कल्पना –

+3

अनुरूप हो सकता है दिखाने के परीक्षण में निजी तरीकों का उपयोग कर सकते हैं: http://stackoverflow.com/ प्रश्न/2448063/कैसे करते हैं-यू-परीक्षण एक रेल नियंत्रक-विधि-सामने आ-एज-ए-हेल्पर-विधि – zetetic

उत्तर