Dans mon application de rails, il existe un assistant de contrôleur qui est un module (pas une classe) avec beaucoup de méthodes auxiliaires définies dans celui-ci. Je souhaite écrire des cas de tests unitaires pour cela avant de refaire le code de ce module afin de m'assurer que ma compréhension du système actuel est correcte et que je n'ai pas cassé de fonctionnalité par inadvertance. Nous utilisons RSpec et je voudrais savoir comment on pourrait écrire des cas de tests unitaires pour les méthodes de ce module d'aide?Test d'unité Module d'assistance du contrôleur des applications Rails - Comment?
2
A
Répondre
3
Supposons que vous avez app/helpers/address_helper.rb
:
module AddressHelper
def full_address(address)
"#{address.street} #{address.house_number}/#{address.local_number}"
end
end
Vous pouvez écrire les spécifications sous spec/helpers/address_helper_spec.rb
:
require 'spec/spec_helper' #or something similar, in order to load spec helper
describe AddressHelper do
describe "#full_address" do
it "displays the street, local and house number" do
address = stub('Address', :street => 'Mountain View', :house_number => '7', :local_number => '44')
helper.full_address(address).should eql('Mountain View 7/44')
end
end
end
méthode clé est helper
ici, qui vous donne accès à des méthodes d'aide, dans cet exemple est le suivant:
helper.full_address(address)
Merci, cela a fonctionné. – karthiks