Still following my rails book (more like, adapting to my project as I go). My first attempt at a unit test failed. Adapting the example in the book, I came up with this:
require 'test_helper' class RecordingTest < ActiveSupport::TestCase test "record attributes must not be empty" do recording = Recording.new assert recording.invalid? assert recording.errors[:title].any? assert recording.errors[:speaker].any? assert recording.errors[:date_of_event].any? assert recording.errors[:file].any? end end Which gives me: 1) Failure: test_record_attributes_must_not_be_empty(RecordingTest) [/test/unit/recording_test.rb:6]: <false> is not true. 1 tests, 1 assertions, 1 failures, 0 errors rake aborted! Command failed with status (1): [/usr/bin/ruby -I"lib:test" "/usr/lib64/rub...] The idea was to test my validation code from the model: # cat app/models/recording.rb class Recording < ActiveRecord::Base validate :title, :speaker, :date_of_event, :file, :presence => true validate :title, :file, :uniqueness => true end >From the little I understand, I'm not sure why the record object is not showing up as invalid as it should, having no data added yet. The only thing I can note is that I'm using rails 2.3.5, whereas I think the book is meant for 3. -- Posted via http://www.ruby-forum.com/. -- 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 rubyonrails-t...@googlegroups.com. To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.