В эти дни я увлекаюсь rspec, пытаясь сделать мои модели более точными и точными. Некоторые вещи все еще немного странны для меня в rspec, и поэтому я подумал, что было бы неплохо, если бы кто-то мог прояснить.
Допустим, у меня есть модель пользователя. У этого есть: имя. Имя должно быть между 4..15 символами (это вторичная цель, сначала она должна просто существовать). Итак, теперь я думаю: как лучше всего проверить это таким образом, чтобы гарантировать, что это произойдет. Чтобы проверить, что у пользователя должно быть имя, я написал что-то вроде этого:
describe User do
let(:user) { User.new(:name => 'lele') }
it "is not valid without a name" do
user.name.should == 'lele'
end
end
Теперь я не совсем уверен, что это именно то, что я хочу. Мне кажется, что я на самом деле тестирую Rails с этим. Кроме того, если я хочу проверить, что имя не может быть больше 15 символов и меньше 4, как это можно интегрировать?
EDIT:
Может, так лучше?
describe User do
let(:user) { User.new(:name => 'lele') }
it "is not valid without a name" do
user.name.should_not be_empty
end
end