Spec'ing models

Hi there,

A couple of complete newb questions here.

Should I be spec’ing the existence of attributes on models? While
reading
through the docs and googling I haven’t seen any example that checks if
attributes exist on a model. i.e. Game.Description.

Likewise, what I’ve seen on spec’ing associations seems light. What
spec
should I be writing before I add a belongs_to :genre to my game model?
The
closest I’ve seen is probably this ->
http://blog.imperialdune.com/2007/2/27/rspec-ing-model-associations

Cheers,

Tim.

Hi Tim,

I’m just a newb too, but as I understand it, you should only spec code
you write. In the case of attributes on models, it’s ActiveRecord
code. You shouldnt need to test that. I have not been doing this.

That said, I’d love to get the word from some people that have been
doing it for a while.


Matt Berther
http://www.mattberther.com

Hey Matt,

Cheers for that. Yeah - I’m not speccing methods like save, valid?,
errors
etc… I am writing “belongs_to” though, so figure that should be
specced
somehow. I guess when I’m adding a “description” field to something, I
might be writing a migration for it, but no other model code. I guess
if
there’s no model code for it, then it kinda makes sense that it doesn’t
need
to be in the model spec.

Tim…

I have been using the following approach. Looking forward to see if
anyone else does something better to test associations …

describe “Profile Associations” do

it “should belong to …” do
Profile.should_receive(:belongs_to).with(:account)

load "profile.rb"

end

end

Anthony Broad-Crawford

And just to argue with myself a little - the spec output is a pretty
nice of
how a model works. Perhaps I’m thinking that something for the
description
should be specced so that it appears in the spec output…

Looking forward to taking this newb hat off sometime soon - I’m
definitely
spending way too much time on google at the moment.

Tim…

for associations, among other things, i’ve been using http://rspec-on-
rails-matchers.googlecode.com/svn/trunk/README

linoj

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs