Commit 1a711c0c82c8183d83d3adca526aef12547ae66f

Authored by Victor Costa
2 parents 3c1eb907 fa17646b

Merge branch 'next' into stable

app/controllers/application_controller.rb
... ... @@ -184,6 +184,7 @@ class ApplicationController < ActionController::Base
184 184 include SearchTermHelper
185 185  
186 186 def find_by_contents(asset, context, scope, query, paginate_options={:page => 1}, options={})
  187 + scope = scope.with_templates(options[:template_id]) unless options[:template_id].blank?
187 188 search = plugins.dispatch_first(:find_by_contents, asset, scope, query, paginate_options, options)
188 189 register_search_term(query, scope.count, search[:results].count, context, asset)
189 190 search
... ...
lib/noosfero/plugin.rb
... ... @@ -588,7 +588,6 @@ class Noosfero::Plugin
588 588 # own use in specific views
589 589 def find_by_contents(asset, scope, query, paginate_options={}, options={})
590 590 scope = scope.like_search(query, options) unless query.blank?
591   - scope = scope.with_templates(options[:template_id]) unless options[:template_id].blank?
592 591 scope = scope.send(options[:filter]) unless options[:filter].blank?
593 592 {:results => scope.paginate(paginate_options)}
594 593 end
... ...
plugins/pg_search/test/functional/search_controller_test.rb 0 → 100644
... ... @@ -0,0 +1,32 @@
  1 +require "test_helper"
  2 +
  3 +class SearchControllerTest < ActionController::TestCase
  4 +
  5 + def setup
  6 + environment = Environment.default
  7 + environment.enable_plugin(PgSearchPlugin)
  8 + end
  9 +
  10 + should 'list all communities' do
  11 + plugin = PgSearchPlugin.new
  12 + c1 = fast_create(Community, :name => 'Testing community 1')
  13 + c2 = fast_create(Community, :name => 'Testing community 3')
  14 + c3 = fast_create(Community, :name => 'Testing community 3')
  15 +
  16 + get :communities
  17 + assert_equivalent [c1, c2, c3], assigns(:searches)[:communities][:results]
  18 + end
  19 +
  20 + should 'list communities of a specific template' do
  21 + plugin = PgSearchPlugin.new
  22 + t1 = fast_create(Community, :is_template => true)
  23 + t2 = fast_create(Community, :is_template => true)
  24 + c1 = fast_create(Community, :template_id => t1.id, :name => 'Testing community 1')
  25 + c2 = fast_create(Community, :template_id => t2.id, :name => 'Testing community 2')
  26 + c3 = fast_create(Community, :template_id => t1.id, :name => 'Testing community 3')
  27 + c4 = fast_create(Community, :name => 'Testing community 3')
  28 +
  29 + get :communities, :template_id => t1.id
  30 + assert_equivalent [c1, c3], assigns(:searches)[:communities][:results]
  31 + end
  32 +end
... ...