[rspec-users] Testing Models without fixtures
Scott Taylor
mailing_lists at railsnewbie.com
Tue Nov 20 11:22:03 EST 2007
On Nov 20, 2007, at 11:20 AM, David Chelimsky wrote:
> On Nov 20, 2007 10:20 AM, David Chelimsky <dchelimsky at gmail.com>
> wrote:
>> On Nov 20, 2007 10:18 AM, Nathan Sutton <nathan.sutton at gmail.com>
>> wrote:
>>> You may want to create a factory method to create users with valid
>>> parameters, overriding any parameters by passing in options.
>>>
>>> ALPHA = ('a'..'z').to_a + ('A'..'Z').to_a
>>>
>>> def random_text
>>> txt = ""
>>> 10.times do
>>> txt << ALPHA[rand(52)]
>>> end
>>> txt # maybe a returning block? can't remember if that
>>> works here
>>> end
>>>
>>> def create_user(options={})
>>> User.create!({ :name => random_text,
>>> :password => random_text}.merge
>>> (options))
>>> end
>>
>> There are also tools that will do this for you: Exemplar,
>> ModelStubbing to name two.
>
> Actually - those are geared towards avoiding the DB. What you'd want
> is Scenarios and FixtureScenarios (and others similar).
>
How about giving FixtureReplacement some love?
Scott
More information about the rspec-users
mailing list