Я запускаю юнит-тест на пользовательской модели в ruby. Я все еще изучаю рубин. Поэтому, когда я бегу
rake test:units
Я понял
Loaded suite /usr/lib/ruby/gems/1.8/gems/rake-0.9.2.2/lib/rake/rake_test_loader
Started
F
Finished in 0.116562 seconds.
1) Failure:
test_user_attributes_must_not_be_empty(UserTest) [test/unit/user_test.rb:10]:
<false> is not true.
1 tests, 5 assertions, 1 failures, 0 errors
rake aborted!
Command failed with status (1): [/usr/bin/ruby1.8 -I"lib:test" "/usr/lib/ru...]
Tasks: TOP => test:units
(See full trace by running task with --trace)
когда я иду в файл test/unit/user_test.rb:10
Я вижу эту строку,
require 'test_helper'
class UserTest < ActiveSupport::TestCase
test "user attributes must not be empty" do
user = User.new
assert user.invalid?
assert user.errors[:username].any?
assert user.errors[:name].any?
assert user.errors[:surname].any?
>>>assert user.errors[:date_birth].any?<<< Here!
assert user.errors[:date_reg].any?
assert user.errors[:email].any?
end
end
так в чем причина ошибки? Почему я получаю ошибку там, а не где-нибудь еще? как имя пользователя?
Edit:
Мой пользовательский класс:
class User < ActiveRecord::Base
validates :username, :name, :surname, :email, :presence => true
validates :username, :uniqueness => true
end