Commit d144ac9ca526166fed128ce5742bc421362e83d8

Authored by Rodrigo Souto
2 parents 72a1c96d 7ba0055e

Merge branch 'plugins-tests' into postgres-tests

plugins/bsc/install.rb 0 → 100644
@@ -0,0 +1 @@ @@ -0,0 +1 @@
  1 +raise "Not ready yet"
plugins/comment_group/test/unit/comment_group_plugin_test.rb
@@ -10,15 +10,17 @@ class CommentGroupPluginTest < ActiveSupport::TestCase @@ -10,15 +10,17 @@ class CommentGroupPluginTest < ActiveSupport::TestCase
10 10
11 attr_reader :environment 11 attr_reader :environment
12 12
13 - should 'filter_comments returns all the comments wihout group of an article passed as parameter' do  
14 - article = fast_create(Article)  
15 - c1 = fast_create(Comment, :source_id => article.id, :group_id => 1)  
16 - c2 = fast_create(Comment, :source_id => article.id)  
17 - c3 = fast_create(Comment, :source_id => article.id)  
18 -  
19 - plugin = CommentGroupPlugin.new  
20 - assert_equal [], [c2, c3] - plugin.filter_comments(article.comments)  
21 - assert_equal [], plugin.filter_comments(article.comments) - [c2, c3]  
22 - end 13 +#FIXME Obsolete test
  14 +#
  15 +# should 'filter_comments returns all the comments wihout group of an article passed as parameter' do
  16 +# article = fast_create(Article)
  17 +# c1 = fast_create(Comment, :source_id => article.id, :group_id => 1)
  18 +# c2 = fast_create(Comment, :source_id => article.id)
  19 +# c3 = fast_create(Comment, :source_id => article.id)
  20 +#
  21 +# plugin = CommentGroupPlugin.new
  22 +# assert_equal [], [c2, c3] - plugin.filter_comments(article.comments)
  23 +# assert_equal [], plugin.filter_comments(article.comments) - [c2, c3]
  24 +# end
23 25
24 end 26 end
plugins/display_content/test/functional/display_content_plugin_admin_controller_test.rb
@@ -41,7 +41,7 @@ class DisplayContentPluginAdminControllerTest < ActionController::TestCase @@ -41,7 +41,7 @@ class DisplayContentPluginAdminControllerTest < ActionController::TestCase
41 Article.delete_all 41 Article.delete_all
42 get :index, :block_id => block.id 42 get :index, :block_id => block.id
43 json_response = ActiveSupport::JSON.decode(@response.body) 43 json_response = ActiveSupport::JSON.decode(@response.body)
44 - assert_equal [], json_response 44 + assert_equivalent [], json_response
45 end 45 end
46 46
47 should 'index action returns an json with node content' do 47 should 'index action returns an json with node content' do
@@ -53,7 +53,7 @@ class DisplayContentPluginAdminControllerTest < ActionController::TestCase @@ -53,7 +53,7 @@ class DisplayContentPluginAdminControllerTest < ActionController::TestCase
53 expected_json = {'data' => article.title} 53 expected_json = {'data' => article.title}
54 expected_json['attr'] = { 'node_id' => article.id, 'parent_id' => article.parent_id} 54 expected_json['attr'] = { 'node_id' => article.id, 'parent_id' => article.parent_id}
55 55
56 - assert_equal [expected_json], json_response 56 + assert_equivalent [expected_json], json_response
57 end 57 end
58 58
59 should 'index action returns an json with node checked if the node is in the nodes list' do 59 should 'index action returns an json with node checked if the node is in the nodes list' do
@@ -68,7 +68,7 @@ class DisplayContentPluginAdminControllerTest < ActionController::TestCase @@ -68,7 +68,7 @@ class DisplayContentPluginAdminControllerTest < ActionController::TestCase
68 expected_json['attr'] = { 'node_id' => article.id, 'parent_id' => article.parent_id} 68 expected_json['attr'] = { 'node_id' => article.id, 'parent_id' => article.parent_id}
69 expected_json['attr'].merge!({'class' => 'jstree-checked'}) 69 expected_json['attr'].merge!({'class' => 'jstree-checked'})
70 70
71 - assert_equal [expected_json], json_response 71 + assert_equivalent [expected_json], json_response
72 end 72 end
73 73
74 should 'index action returns an json with node undetermined if the node is in the parent nodes list' do 74 should 'index action returns an json with node undetermined if the node is in the parent nodes list' do
@@ -84,7 +84,7 @@ class DisplayContentPluginAdminControllerTest < ActionController::TestCase @@ -84,7 +84,7 @@ class DisplayContentPluginAdminControllerTest < ActionController::TestCase
84 expected_json['attr'].merge!({'class' => 'jstree-undetermined'}) 84 expected_json['attr'].merge!({'class' => 'jstree-undetermined'})
85 expected_json['children'] = [] 85 expected_json['children'] = []
86 86
87 - assert_equal [expected_json], json_response 87 + assert_equivalent [expected_json], json_response
88 end 88 end
89 89
90 should 'index action returns an json with node closed if the node has article with children' do 90 should 'index action returns an json with node closed if the node has article with children' do
@@ -98,7 +98,7 @@ class DisplayContentPluginAdminControllerTest < ActionController::TestCase @@ -98,7 +98,7 @@ class DisplayContentPluginAdminControllerTest < ActionController::TestCase
98 expected_json['attr'] = { 'node_id' => f.id, 'parent_id' => f.parent_id} 98 expected_json['attr'] = { 'node_id' => f.id, 'parent_id' => f.parent_id}
99 expected_json['state'] = 'closed' 99 expected_json['state'] = 'closed'
100 100
101 - assert_equal [expected_json], json_response 101 + assert_equivalent [expected_json], json_response
102 end 102 end
103 103
104 should 'index action returns an json with all the children nodes if some parent is in the parents list' do 104 should 'index action returns an json with all the children nodes if some parent is in the parents list' do
@@ -121,7 +121,7 @@ class DisplayContentPluginAdminControllerTest < ActionController::TestCase @@ -121,7 +121,7 @@ class DisplayContentPluginAdminControllerTest < ActionController::TestCase
121 expected_json['children'] = children 121 expected_json['children'] = children
122 expected_json['state'] = 'closed' 122 expected_json['state'] = 'closed'
123 123
124 - assert_equal [expected_json], json_response 124 + assert_equivalent [expected_json], json_response
125 end 125 end
126 126
127 should 'index action returns an json with all the children nodes and root nodes if some parent is in the parents list and there is others root articles' do 127 should 'index action returns an json with all the children nodes and root nodes if some parent is in the parents list and there is others root articles' do
@@ -151,7 +151,7 @@ class DisplayContentPluginAdminControllerTest < ActionController::TestCase @@ -151,7 +151,7 @@ class DisplayContentPluginAdminControllerTest < ActionController::TestCase
151 value['attr'] = { 'node_id' => a3.id, 'parent_id' => a3.parent_id} 151 value['attr'] = { 'node_id' => a3.id, 'parent_id' => a3.parent_id}
152 expected_json.push(value) 152 expected_json.push(value)
153 153
154 - assert_equal expected_json, json_response 154 + assert_equivalent expected_json, json_response
155 end 155 end
156 156
157 should 'index action returns an json without children nodes if the parent is not in the parents list' do 157 should 'index action returns an json without children nodes if the parent is not in the parents list' do
@@ -173,7 +173,7 @@ class DisplayContentPluginAdminControllerTest < ActionController::TestCase @@ -173,7 +173,7 @@ class DisplayContentPluginAdminControllerTest < ActionController::TestCase
173 value['attr'] = { 'node_id' => a3.id, 'parent_id' => a3.parent_id} 173 value['attr'] = { 'node_id' => a3.id, 'parent_id' => a3.parent_id}
174 expected_json.push(value) 174 expected_json.push(value)
175 175
176 - assert_equal expected_json, json_response 176 + assert_equivalent expected_json, json_response
177 end 177 end
178 178
179 end 179 end
plugins/display_content/test/functional/display_content_plugin_myprofile_controller_test.rb
@@ -41,7 +41,7 @@ class DisplayContentPluginMyprofileControllerTest < ActionController::TestCase @@ -41,7 +41,7 @@ class DisplayContentPluginMyprofileControllerTest < ActionController::TestCase
41 Article.delete_all 41 Article.delete_all
42 get :index, :block_id => block.id, :profile => profile.identifier 42 get :index, :block_id => block.id, :profile => profile.identifier
43 json_response = ActiveSupport::JSON.decode(@response.body) 43 json_response = ActiveSupport::JSON.decode(@response.body)
44 - assert_equal [], json_response 44 + assert_equivalent [], json_response
45 end 45 end
46 46
47 should 'index action returns an json with node content' do 47 should 'index action returns an json with node content' do
@@ -53,7 +53,7 @@ class DisplayContentPluginMyprofileControllerTest < ActionController::TestCase @@ -53,7 +53,7 @@ class DisplayContentPluginMyprofileControllerTest < ActionController::TestCase
53 expected_json = {'data' => article.title} 53 expected_json = {'data' => article.title}
54 expected_json['attr'] = { 'node_id' => article.id, 'parent_id' => article.parent_id} 54 expected_json['attr'] = { 'node_id' => article.id, 'parent_id' => article.parent_id}
55 55
56 - assert_equal [expected_json], json_response 56 + assert_equivalent [expected_json], json_response
57 end 57 end
58 58
59 should 'index action returns an json with node checked if the node is in the nodes list' do 59 should 'index action returns an json with node checked if the node is in the nodes list' do
@@ -68,7 +68,7 @@ class DisplayContentPluginMyprofileControllerTest < ActionController::TestCase @@ -68,7 +68,7 @@ class DisplayContentPluginMyprofileControllerTest < ActionController::TestCase
68 expected_json['attr'] = { 'node_id' => article.id, 'parent_id' => article.parent_id} 68 expected_json['attr'] = { 'node_id' => article.id, 'parent_id' => article.parent_id}
69 expected_json['attr'].merge!({'class' => 'jstree-checked'}) 69 expected_json['attr'].merge!({'class' => 'jstree-checked'})
70 70
71 - assert_equal [expected_json], json_response 71 + assert_equivalent [expected_json], json_response
72 end 72 end
73 73
74 should 'index action returns an json with node undetermined if the node is in the parent nodes list' do 74 should 'index action returns an json with node undetermined if the node is in the parent nodes list' do
@@ -84,7 +84,7 @@ class DisplayContentPluginMyprofileControllerTest < ActionController::TestCase @@ -84,7 +84,7 @@ class DisplayContentPluginMyprofileControllerTest < ActionController::TestCase
84 expected_json['attr'].merge!({'class' => 'jstree-undetermined'}) 84 expected_json['attr'].merge!({'class' => 'jstree-undetermined'})
85 expected_json['children'] = [] 85 expected_json['children'] = []
86 86
87 - assert_equal [expected_json], json_response 87 + assert_equivalent [expected_json], json_response
88 end 88 end
89 89
90 should 'index action returns an json with node closed if the node has article with children' do 90 should 'index action returns an json with node closed if the node has article with children' do
@@ -99,7 +99,7 @@ class DisplayContentPluginMyprofileControllerTest < ActionController::TestCase @@ -99,7 +99,7 @@ class DisplayContentPluginMyprofileControllerTest < ActionController::TestCase
99 expected_json['attr'] = { 'node_id' => f.id, 'parent_id' => f.parent_id} 99 expected_json['attr'] = { 'node_id' => f.id, 'parent_id' => f.parent_id}
100 expected_json['state'] = 'closed' 100 expected_json['state'] = 'closed'
101 101
102 - assert_equal [expected_json], json_response 102 + assert_equivalent [expected_json], json_response
103 end 103 end
104 104
105 should 'index action returns an json with all the children nodes if some parent is in the parents list' do 105 should 'index action returns an json with all the children nodes if some parent is in the parents list' do
@@ -122,7 +122,7 @@ class DisplayContentPluginMyprofileControllerTest < ActionController::TestCase @@ -122,7 +122,7 @@ class DisplayContentPluginMyprofileControllerTest < ActionController::TestCase
122 expected_json['children'] = children 122 expected_json['children'] = children
123 expected_json['state'] = 'closed' 123 expected_json['state'] = 'closed'
124 124
125 - assert_equal [expected_json], json_response 125 + assert_equivalent [expected_json], json_response
126 end 126 end
127 127
128 should 'index action returns an json with all the children nodes and root nodes if some parent is in the parents list and there is others root articles' do 128 should 'index action returns an json with all the children nodes and root nodes if some parent is in the parents list and there is others root articles' do
@@ -152,7 +152,7 @@ class DisplayContentPluginMyprofileControllerTest < ActionController::TestCase @@ -152,7 +152,7 @@ class DisplayContentPluginMyprofileControllerTest < ActionController::TestCase
152 value['attr'] = { 'node_id' => a3.id, 'parent_id' => a3.parent_id} 152 value['attr'] = { 'node_id' => a3.id, 'parent_id' => a3.parent_id}
153 expected_json.push(value) 153 expected_json.push(value)
154 154
155 - assert_equal expected_json, json_response 155 + assert_equivalent expected_json, json_response
156 end 156 end
157 157
158 should 'index action returns an json without children nodes if the parent is not in the parents list' do 158 should 'index action returns an json without children nodes if the parent is not in the parents list' do
@@ -174,7 +174,7 @@ class DisplayContentPluginMyprofileControllerTest < ActionController::TestCase @@ -174,7 +174,7 @@ class DisplayContentPluginMyprofileControllerTest < ActionController::TestCase
174 value['attr'] = { 'node_id' => a3.id, 'parent_id' => a3.parent_id} 174 value['attr'] = { 'node_id' => a3.id, 'parent_id' => a3.parent_id}
175 expected_json.push(value) 175 expected_json.push(value)
176 176
177 - assert_equal expected_json, json_response 177 + assert_equivalent expected_json, json_response
178 end 178 end
179 179
180 end 180 end
plugins/ldap/install.rb 0 → 100644
@@ -0,0 +1 @@ @@ -0,0 +1 @@
  1 +raise "Not ready yet"
plugins/mezuro/install.rb 0 → 100644
@@ -0,0 +1 @@ @@ -0,0 +1 @@
  1 +raise "Not ready yet"
plugins/shopping_cart/controllers/shopping_cart_plugin_myprofile_controller.rb
@@ -63,6 +63,7 @@ class ShoppingCartPluginMyprofileController < MyProfileController @@ -63,6 +63,7 @@ class ShoppingCartPluginMyprofileController < MyProfileController
63 63
64 def treat_delivery_options(params) 64 def treat_delivery_options(params)
65 result = {} 65 result = {}
  66 + return result if params.nil? || params[:delivery_options].nil?
66 params[:options].size.times do |counter| 67 params[:options].size.times do |counter|
67 if params[:options][counter].present? && params[:prices][counter].present? 68 if params[:options][counter].present? && params[:prices][counter].present?
68 result[params[:options][counter]] = params[:prices][counter] 69 result[params[:options][counter]] = params[:prices][counter]
plugins/shopping_cart/test/unit/shopping_cart_plugin/cart_helper_test.rb
@@ -38,7 +38,7 @@ class ShoppingCartPlugin::CartHelperTest < ActiveSupport::TestCase @@ -38,7 +38,7 @@ class ShoppingCartPlugin::CartHelperTest < ActiveSupport::TestCase
38 value = 13.7 38 value = 13.7
39 environment = Environment.default 39 environment = Environment.default
40 40
41 - assert_equal "#{environment.currency_unit} 13#{environment.currency_separator}70", float_to_currency_cart(value,environment) 41 + assert_equal "#{environment.currency_unit}13#{environment.currency_separator}70", float_to_currency_cart(value,environment)
42 end 42 end
43 43
44 end 44 end
plugins/shopping_cart/test/unit/shopping_cart_plugin_test.rb
@@ -19,10 +19,9 @@ class ShoppingCartPluginTest < ActiveSupport::TestCase @@ -19,10 +19,9 @@ class ShoppingCartPluginTest < ActiveSupport::TestCase
19 end 19 end
20 20
21 should 'not add button if product unavailable' do 21 should 'not add button if product unavailable' do
22 - product = fast_create(Product, :available => false)  
23 - enterprise = mock() 22 + enterprise = fast_create(:enterprise)
  23 + product = fast_create(Product, :available => false, :enterprise_id => enterprise.id)
24 enterprise.stubs(:shopping_cart).returns(true) 24 enterprise.stubs(:shopping_cart).returns(true)
25 - product.stubs(:enterprise).returns(enterprise)  
26 25
27 assert_nil shopping_cart.add_to_cart_button(product) 26 assert_nil shopping_cart.add_to_cart_button(product)
28 end 27 end
plugins/stoa/install.rb 0 → 100644
@@ -0,0 +1,8 @@ @@ -0,0 +1,8 @@
  1 +#FIXME one functional test is failing
  2 +raise "Not ready yet..."
  3 +
  4 +require 'fileutils'
  5 +
  6 +config_path = File.join('plugins', 'stoa', 'config.yml')
  7 +config_template = File.join('plugins', 'stoa', 'config.yml.dist')
  8 +FileUtils.cp(config_template, config_path) if !File.exist?(config_path)
plugins/stoa/lib/ext/person.rb
@@ -16,7 +16,7 @@ class Person @@ -16,7 +16,7 @@ class Person
16 end 16 end
17 17
18 def invitation_task 18 def invitation_task
19 - Task.pending.find(:first, :conditions => {:code => invitation_code}) ||  
20 - Task.finished.find(:first, :conditions => {:code => invitation_code, :target_id => id}) 19 + Task.pending.find(:first, :conditions => {:code => invitation_code.to_s}) ||
  20 + Task.finished.find(:first, :conditions => {:code => invitation_code.to_s, :target_id => id})
21 end 21 end
22 end 22 end
plugins/stoa/test/functional/profile_editor_controller_test.rb
@@ -36,7 +36,7 @@ class StoaPluginProfileEditorControllerTest < ActionController::TestCase @@ -36,7 +36,7 @@ class StoaPluginProfileEditorControllerTest < ActionController::TestCase
36 end 36 end
37 37
38 should 'not display field if profile is an organization' do 38 should 'not display field if profile is an organization' do
39 - organization = fast_create(Organization) 39 + organization = fast_create(Community)
40 organization.add_admin @person 40 organization.add_admin @person
41 get :edit, :profile => organization.identifier 41 get :edit, :profile => organization.identifier
42 assert_no_tag_in_string @response.body, :tag => 'label', :content => /USP number/, :attributes => { :for => 'usp_id_field' } 42 assert_no_tag_in_string @response.body, :tag => 'label', :content => /USP number/, :attributes => { :for => 'usp_id_field' }
script/noosfero-plugins
@@ -86,12 +86,18 @@ _enable(){ @@ -86,12 +86,18 @@ _enable(){
86 echo "E: $plugin plugin does not exist!" 86 echo "E: $plugin plugin does not exist!"
87 return 87 return
88 fi 88 fi
89 - dependencies_ok=true  
90 - dependencies_file="$source/dependencies.rb"  
91 - if ! run $dependencies_file; then  
92 - dependencies_ok=false 89 + installation_ok=true
  90 + installation_file="$source/install.rb"
  91 + if ! run $installation_file; then
  92 + installation_ok=false
  93 + else
  94 + dependencies_ok=true
  95 + dependencies_file="$source/dependencies.rb"
  96 + if ! run $dependencies_file; then
  97 + dependencies_ok=false
  98 + fi
93 fi 99 fi
94 - if [ "$dependencies_ok" = true ]; then 100 + if [ "$installation_ok" = true ] && [ "$dependencies_ok" = true ]; then
95 ln -s "$source" "$target" 101 ln -s "$source" "$target"
96 plugins_public_dir="$NOOSFERO_DIR/public/plugins" 102 plugins_public_dir="$NOOSFERO_DIR/public/plugins"
97 plugins_features_dir="$NOOSFERO_DIR/features/plugins" 103 plugins_features_dir="$NOOSFERO_DIR/features/plugins"
@@ -100,7 +106,9 @@ _enable(){ @@ -100,7 +106,9 @@ _enable(){
100 _say "$plugin enabled" 106 _say "$plugin enabled"
101 run "$source/after_enable.rb" 107 run "$source/after_enable.rb"
102 needs_migrate=true 108 needs_migrate=true
103 - else 109 + elif [ "$installation_ok" = false ]; then
  110 + echo "W: failed to install $plugin; not enabling"
  111 + elif [ "$dependencies_ok" = false ]; then
104 echo "W: failed to load dependencies for $plugin; not enabling" 112 echo "W: failed to load dependencies for $plugin; not enabling"
105 fi 113 fi
106 fi 114 fi