On Tue, Jan 17, 2012 at 4:04 PM, Rodrigo Ruiz <[email protected]>wrote:
> Hi, I have to test one of my models, but it uses a seed database. > > How do I delete everything on my database and create it again from seed > (default code for some examples) for every one of my unit tests? > > Right now, when I run rake db:test:units (and if I put something on my > code like User.all.count) it says that there 2 users at the database (but > with nil paramters except id). If I do a setup code to create the new > instances at the database (as I want), it creates them, but there are still > those 2 trash users there which makes my model not to work. > > Thanks in advance > It is probably not the "optimal" way, but a "practical" way might be to do this: WARNING: this will delete all data in development and test database !! For the development database rake db:drop rake db:create rake db:migrate rake db:seed For the test database RAILS_ENV=test rake db:drop RAILS_ENV=test rake db:create RAILS_ENV=test rake db:migrate RAILS_ENV=test rake db:seed guard # Spork for RSpec This works well as a set-up for rspec (and with static seeded data, e.g. list of countries etc. available also for the tests). Maybe not optimal, but works well. Alternatively, if you do not want to restart from scratch, just deleting all users could be done with rails console > User.delete_all RAILS_ENV=test rails console > User.delete_all Peter -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.

