[RSpec Testing] Methods take two arguments

Here is my pdf_helper.rb => http://pastebin.com/QU1kTKXk. I want to test, if self.create method can take more than two arguments. But, when I try to run my test. It showed
**PdfHelper Should have two arguments
Failure/Error: create_pdf.should_receive(object,template).with(user,file)
undefined local variable or method create_pdf' for #<RSpec::Core::ExampleGroup::Nested_1:0xabf72f0> # ./pdf_helper_spec.rb:13:in block (2 levels) in <top (required)>’**here is my pdf_helper_spec.rb file:
**require ‘pdf_helper’
describe “PdfHelper” do
it “Should be in public folder” do
file = File.new ("#{Rails.root}/public/pdf")
File.exist?(file).should be_true

      it "Should have two arguments" do
          file = File.new("#{Rails.root}/public/pdf/templates/chbox.pdf")
          user = User.create(:first_name => "mark", :last_name => "jhon", :account_number => "3442", :phone_number => "23333333")

how can I fix that?


Hi there, try:

PdfHelper.should_recieve(:create_pdf).with(user, file)

P.S. But still, this will probably fail because you’re not actually doing anything (at least that’s obvious) to trigger PdfHelper.create_pdf. “user” has no knowledge of “file” assuming you have a callback to create a pdf when a user is created. The first test is also weird, it’s like saying a = 1; a.should == 1.