On Wed, Mar 12, 2008 at 3:54 PM, James B. Byrne <[EMAIL PROTECTED]> wrote: > This is perhaps a naive question, but what is the recommended manner of > testing a helper method in rspec?
You just describe the helper module and call the helper method like you'd do in the views: require File.dirname(__FILE__) + '/../spec_helper' describe ApplicationHelper do describe "breadcrumbs" do describe "when breadcrumbs empty" do it "should show nothing" do breadcrumbs.should == "" end end end end I have created a simple string manipulation > function and I want to write some tests for it. It it were a script then I > would just add if __FILE__ == $0 and add the tests below that but I do not > feel that this is the best way to handle a rails helper. > > The code (I said it was simple) : > > module ApplicationHelper > > # keycase strips leading spaces, squeezes out extra whitespace > # between words, downshifts all and then capitalizes the first > # character of each word. > # > # This method prepares descriptive strings that are used > # as indices for lookups. To preserve common initialisms insert > # periods between letters. Thus: > # IBM => Ibm but I.B.M. => I.B.M. > # > # Do not use ! methods as they return nil under certain circumstances > # > def keycase(value) > value = value.to_s.strip.squeeze(" ").downcase.gsub(/\b\w/){$&.upcase} > end > > end Something like this: require File.dirname(__FILE__) + '/../spec_helper' describe ApplicationHelper do describe "keycase" do describe "when no dots" do before(:each) do @value = "IBM" end it "should convert to lowercase" do keycase(@value).should == "Ibm" end end end end And so on. //jarkko -- Jarkko Laine http://jlaine.net http://odesign.fi _______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users