On Aug 14, 2008, at 3:42 AM, Andy Croll wrote:

I'm using a call to wget to download a large datafile (multiple
megabytes) having assumed this will be quicker than using open-uri.

How can I spec the behaviour? Ideally I'd also like to not be hitting
the internet every time I test!

in my_object_spec.rb

 describe ".get_data" do
   before(:each) do
     @my_obj = MyObject.create(@valid_attributes)
   end
   it "should download the file" do
     # behaviour goes here
   end
 end


in my_object.rb:

 def get_data
     `wget --output-document=#{self.filename} #{self.file_uri}`
 end

Use Kernel.stub!(:`, "wget..."), and use Kernel.send(:`, "wget") instead of literal backticks.

Scott

_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to