diff --git a/app/models/aspect.rb b/app/models/aspect.rb index 56210f0db..5758f49c4 100644 --- a/app/models/aspect.rb +++ b/app/models/aspect.rb @@ -18,7 +18,11 @@ class Aspect validates_presence_of :name validates_uniqueness_of :name, :scope => :user_id attr_accessible :name - + + before_validation do + name.strip! + end + timestamps! def to_s diff --git a/spec/models/aspect_spec.rb b/spec/models/aspect_spec.rb index 7d6cde6c9..5a179cce1 100644 --- a/spec/models/aspect_spec.rb +++ b/spec/models/aspect_spec.rb @@ -18,11 +18,17 @@ describe Aspect do let(:aspect3) {user3.aspect(:name => "lala")} describe 'creation' do - let(:aspect){user.aspect(:name => 'losers')} + let!(:aspect){user.aspect(:name => 'losers')} it 'should have a name' do aspect.name.should == "losers" end + it 'should not allow duplicate names' do + lambda { + invalid_aspect = user.aspect(:name => "losers ") + }.should_not change(Aspect, :count) + end + it 'should not be creatable with people' do aspect = user.aspect(:name => 'losers', :people => [friend, friend_2]) aspect.people.size.should == 0