Commit 0c1fbf2a53e32a591a7fcf1652ea5d5b36afc27f

Authored by AntonioTerceiro
1 parent ae109991

ActionItem154: fixing up person for the creation of default blocks


git-svn-id: https://svn.colivre.coop.br/svn/noosfero/trunk@1371 3f533792-8f58-4932-b0fe-aaf55b0a4547
Showing 2 changed files with 16 additions and 8 deletions   Show diff stats
app/models/person.rb
@@ -70,15 +70,16 @@ class Person < Profile @@ -70,15 +70,16 @@ class Person < Profile
70 70
71 # "left" area 71 # "left" area
72 self.boxes[1].blocks << ProfileInfoBlock.new 72 self.boxes[1].blocks << ProfileInfoBlock.new
  73 + self.boxes[1].blocks << RecentDocumentsBlock.new
73 74
74 # right area 75 # right area
75 self.boxes[2].blocks << TagsBlock.new 76 self.boxes[2].blocks << TagsBlock.new
76 - self.boxes[2].blocks << RecentDocumentsBlock.new  
77 77
78 true 78 true
79 end 79 end
80 80
81 # FIXME this is *weird*, because this class is not inheriting the callbacks 81 # FIXME this is *weird*, because this class is not inheriting the callbacks
82 before_create :set_default_environment 82 before_create :set_default_environment
  83 + after_create :insert_default_homepage_and_feed
83 84
84 end 85 end
test/unit/person_test.rb
@@ -120,13 +120,6 @@ class PersonTest &lt; Test::Unit::TestCase @@ -120,13 +120,6 @@ class PersonTest &lt; Test::Unit::TestCase
120 assert person.is_admin? 120 assert person.is_admin?
121 end 121 end
122 122
123 - should 'have boxes and blocks created when person is created' do  
124 - person = create_user('testboxes').person  
125 -  
126 - assert person.boxes.size > 0, 'Person should have boxes upon creation'  
127 - assert person.blocks.size > 0, 'Person should have blocks upon creation'  
128 - end  
129 -  
130 should 'get a default home page and a RSS feed' do 123 should 'get a default home page and a RSS feed' do
131 person = create_user('mytestuser').person 124 person = create_user('mytestuser').person
132 125
@@ -134,4 +127,18 @@ class PersonTest &lt; Test::Unit::TestCase @@ -134,4 +127,18 @@ class PersonTest &lt; Test::Unit::TestCase
134 assert_kind_of RssFeed, person.articles.find_by_path('feed') 127 assert_kind_of RssFeed, person.articles.find_by_path('feed')
135 end 128 end
136 129
  130 + should 'create default set of blocks' do
  131 + p = create_user('testingblocks').person
  132 +
  133 + assert p.boxes[0].blocks.map(&:class).include?(MainBlock), 'person must have a MainBlock upon creation'
  134 +
  135 + assert p.boxes[1].blocks.map(&:class).include?(ProfileInfoBlock), 'person must have a ProfileInfoBlock upon creation'
  136 + assert p.boxes[1].blocks.map(&:class).include?(RecentDocumentsBlock), 'person must have a RecentDocumentsBlock upon creation'
  137 +
  138 + assert p.boxes[2].blocks.map(&:class).include?(TagsBlock), 'person must have a Tags Block upon creation'
  139 + # TODO check also for a "friends" block
  140 +
  141 + assert_equal 4, p.blocks.size
  142 + end
  143 +
137 end 144 end