Displaying 20 results from an estimated 200 matches similar to: "Using and_yield to pass multiple or no iterations"
2007 Aug 08
5
and_yield + instance_eval(&block)
I have the following code, which yields instance eval''s the block given:
class Foo
def bar(&blk)
instance_eval &blk
end
def baz
yield
end
end
The effect of this is that self is reassigned:
Foo.new.bar do
# here, self is the instance of Foo
# created by new
end
But normally self is the object in which
Foo.new.bar {...} occurs.
Foo.new.baz do
2007 Mar 03
11
Beyond multiple return values
First off, I love mocha and have been using it all over the place
ever since I found it a few months ago.
So I noticed the other day rather belatedly that mocha-0.4.0 had been
released and that we can now do the object.stubs(:method).returns
(:first_value, :second_value). Much neater than fiddling with lambdas
everytime this sort of behaviour is needed
But can we go further ? I was
2007 Aug 06
1
Stubbing Enumerable#each
I have a mock of an instance of a class which descends from Array:
class ArrayDescendent < Array; end
#... in the specs...
@descendent = mock ArrayDescendent
How would I stub out ArrayDescendent#each, which is inherited from
Array, to return multiple values successively? I could use
and_yield, but that is raising an arity error (the anonymous function/
block should expect only *one
2008 Apr 25
0
Spec migrations?
Dear list,
I am in the process of writing on an app with is already running. I
need to create a couple of structural database changes for which I use
migrations. However I want to be absolutely sure I do not destroy any
existing data. So RSpec is the way to go! Or so I thought.
1. dropped the test database.
2. create the database.
3. migrate to the version just before the critical migration
2007 Aug 12
5
stubbing a method that yeilds sequential results
I''ve just found myself stuck trying to rspec something so am hoping
someone more knowledgable can help.
I have a Connector class which has a class method ''results'' that
yields results it get from a network service based on a set of
attributes that I pass to it. I am wanting to yield these results
from my Intermediate class up to the next
2007 Jan 25
0
mocking methods that receive blocks - back to mocking Thread again
Hi again,
my last example wasn''t good either. It really makes only sense in the
context of using Thread.
I finally came up with this code, that should now test all important
aspects of running a task in a background thread (to keep it simple, I
left out the exception handling).
see http://pastie.caboo.se/35559 or end of mail.
It seems, TaskRunner is now very well covered by the
2008 Jun 12
2
Use of ''should'' in another thread
Hi,
I''ve tried to find anything about using ''should'' within a Thread, but
it is a little hard do look up there, so I hope you forgive-me if I am
asking an "old question".
I guess this spec should fail:
describe Thread do
it "must be fine" do
Thread.new { true.should_not be_true } # Why don''t fail?!
end
end
It seems that some
2007 Apr 30
4
Mocking with Calculated Results
I am setting up an AR mock object and wanted to sanity check it. My
intent is to mix this into all my examples and then override/add
methods where necessary. Note that I''ve anticipated three cases for
find:
find with one numeric argument => object
find with :all => Array
find with anything else => nil
This roughly approximates how ActiveRecord::find works in this case
2012 Feb 23
2
testing around_save
I''ve just upgraded to Rails 3.2.1 and I can''t get my specs checking
whether or not around_save work anymore.
I simply did something like:
object.should_receive :around_filter_name
object.save.should be_true
(Actually, it was slightly more complex, it''s part of a state machine)
2007 Oct 04
7
Using Predicates to look at an array..
Hi all,
I have an array of shipping_type''s being returned, and I want to see
what is in there. In the past I have done:
shipping_type.include?(Cart::SHIPPING_TYPE_REGULAR).should be_true
This works, but looks really ugly.. It just doesn''t roll of the
tongue very well. I then looked up the use of Predicates, which I
had been using, but hadn''t realized:
2012 Sep 15
2
[RSpec Testing] Methods take two arguments
Hello,
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)
NameError:
undefined local variable or method `create_pdf'' for
2011 Mar 03
1
Does RSpec interfere with Pathname#dirname or Pathname#realpath ?
Hi,
I starting a new project, and have run into behavior I cannot
replicate in irb, (i.e. outside of using rspec) when the directory?
returns true, so I thought I''d ask here, in case any one has seen this
badhavior.
ruby-1.9.2-p136
rspec (2.5.0)
rspec-core (2.5.1)
rspec-expectations (2.5.0)
rspec-mocks (2.5.0)
When I try to run this spec:
require Pathname(__FILE__).ascend { |d|
2007 Nov 04
3
Specing raising error, handling, and then not raising error
Hey guys and gals,
I have a snippet of code:
Net::SMTP(@host, @port, @from_domain) do |smtp|
@emails.each do |email|
begin
smtp.send_message email.encoded, email.from, email.destinations
@emails_sent += 1
rescue Exception => e
# blah
end
end
end
What I want to do is:
Say there are 4 emails.
First email is sent OK
On the second email smtp raises a IOError
2009 May 19
0
View testing (rspec/selenium) - test if a file link works
I have a ''download'' link on one page that causes a zip to be built and
then pushes it back as a file to the browser. I want to write a test to
verify that it does actually push a zip file back but i can''t work out
how - can anyone help?
I''m using rspec and selenium. The line to click the download link looks
like this:
@browser.wait_for_then_click
2008 Oct 26
0
daylight savings time difference with rspec?
Hi all,
I wanted to check this with you. I have an rspec example that checks
the correct expiration date set on an object. The expiration is set in
the model with
expires_on = Time.now + next_duration[phase]
where next_duration can either be in units of seconds or n.days (should
be the same thing). n can be 3, 7, 25, or 30 days.
in my example I check an interval because the two events are not
2007 Apr 20
7
Stubbing Model.new w/ block?
Ok, I followed the advice of the list and moved more code into my
model from my controller. When developing tests for this new code, I
ran into a problem...
My model code creates a receipt object and sets some values on it:
@receipt = Receipt.new do |r|
r.x = 1
r.y = 2
# etc
end
I wanted to be able to stub out Receipt.new so that I could set
expectations on the methods called on the
2007 Jul 31
11
helper spec not finding rails core helpers
Hi,
My helper specs were going ok until I added a call to a rails
DateHelper method in one of my helpers
http://api.rubyonrails.com/classes/ActionView/Helpers/
DateHelper.html#M000574
The helper runs fine from my view templates, just dies in the spec test.
I boiled my question down to a simple (not too useful) example. I''m
not sure what I''m missing.
#
2007 Feb 28
12
Specifying that code is called in a block
Not sure if this is possible currently.
I have a section of code like this:
ActiveRecord::Base.transaction do
cow.save!
duck.save!
dog.save!
end
(Names changed to protect the innocent.)
I''d like to specify that the saves run in a transaction. I can do
ActiveRecord::Base.should_receive(:transaction).and_yield
But is there any way to specify that the code is
2008 Aug 26
9
stub_model() and ActiveRecord Associations
Hi all,
I have what I thought was quite a simple requirement but something to
do with the way ActiveRecord''s associations work is making it quite
puzzling.
I guess I can sum it up with this failing test:
before(:each) do
@source_comment = @source.comments.create(:user_id => 1)
@target_comment = @target.comments.create(:user_id => 1)
end
2012 Apr 04
5
Simple code dosn't work
I think you have a syntactical error on the line thats throwing the
error, you state:
> j.even?should be true #throws an error on j == 2, j == 4
should this line not read as:
j.even?.should be true
--
Posted via http://www.ruby-forum.com/.