A little background:
I’ve been enjoying rails for about a year now tinkering on meaningless
projects here solely for the purpose of learning the framework… not
because I actually needed to use those apps for anything serious. Now
that I started writing my first serious app, naturally I want to dive
into test driven development (“finally” I know - please, no harassment
- I’m trying). Now the way I see it, the standard testing framework is
more than sufficient for my needs and as time goes on it’s only going
to improve. So while things like RSpec and Cucumber are all well and
good - they don’t really fit my needs.
With that out of the way - I dove right into creating fixtures and –
halt. Fixtures, while improving - are still cumbersome for nested
models. Take for example my Quote model - it has_many
QuotableOperations and QuotableQuantities. When I test them I want to
have complete associations… Fixtures don’t seem to like assigning to
has_many unless I do it from the belongs_to side (which feels
unnatural) so I gave up on fixtures and started working with Factories
(Factory Girl)… Now, a few days into Factory Girl and it also seems
too cumbersome for the job at hand. I’m not sure, but it seems like
either:
I’m doing it wrong
or
There’s a better way
Can anyone point me towards the light?
Take this very simple test for example:
I have a
Quote(:description => “Some job to quote”)
- with one QuotableOperation(:operation_name => “Engineering”)
- and two QuotableQuantities(:quantity => “5”, :rate => “0.21”) &
QuotableQuantities(:quantity => “10”, :rate => “0.21”)
:description, :quote_operations and :quote_quantities are
validate_presence_of’d on the Quote model.
SO - a simple test like:
test “the description of the quote is not blank” do
test
end
seems to be more trouble than it’s worth because I need a fully
associated Quote object.
A helping hand in the right direction would be more than appreciated.
Thanks,
- FJM