Commit d1ab5571a35406da7399126240ba049fa1f60a48

Authored by Luciano Prestes
1 parent d5a3fa9d

Add functional tests for search software_infos

Signed-off-by: Luciano Prestes <lucianopcbr@gmail.com>
Signed-off-by: Parley Martins <parley@outlook.com>
Showing 1 changed file with 31 additions and 3 deletions   Show diff stats
test/functional/search_controller_test.rb
... ... @@ -8,14 +8,16 @@ class SearchControllerTest &lt; ActionController::TestCase
8 8 include PluginTestHelper
9 9  
10 10 def setup
11   - environment = Environment.default
12   - environment.enabled_plugins = ['MpogSoftwarePlugin']
13   - environment.save
  11 + @environment = Environment.default
  12 + @environment.enabled_plugins = ['MpogSoftwarePlugin']
  13 + @environment.save
14 14  
15 15 @controller = SearchController.new
16 16 @request = ActionController::TestRequest.new
17 17 @request.stubs(:ssl?).returns(:false)
18 18 @response = ActionController::TestResponse.new
  19 +
  20 + @category_software = Category.create!(:name => _("Software"), :environment => @environment)
19 21 end
20 22  
21 23 should "communities searches don't have software or institution" do
... ... @@ -30,4 +32,30 @@ class SearchControllerTest &lt; ActionController::TestCase
30 32 assert_not_includes assigns(:searches)[:communities][:results], institution
31 33 end
32 34  
  35 + should "software_infos search don't have community or institution" do
  36 + community = create_community("New Community")
  37 + software = create_software_info("New Software")
  38 + institution = create_private_institution("New Private Institution", "NPI" , "Brazil", "DF", "Gama", "66.544.314/0001-63")
  39 +
  40 + get :software_infos, :query => "New"
  41 +
  42 + assert_includes assigns(:searches)[:software_infos][:results], software.community
  43 + assert_not_includes assigns(:searches)[:software_infos][:results], community
  44 + assert_not_includes assigns(:searches)[:software_infos][:results], institution.community
  45 + end
  46 +
  47 + should "software_infos search by category" do
  48 + software_with_category = create_software_info("New Software With Category")
  49 + software_without_category = create_software_info("New Software Without Category")
  50 + category = Category.create!(:name => "Health", :environment => @environment, :parent => @category_software)
  51 +
  52 + software_with_category.community.categories << category
  53 + software_with_category.save!
  54 +
  55 + get :software_infos, :query => "New", :filter => category.id
  56 +
  57 + assert_includes assigns(:searches)[:software_infos][:results], software_with_category.community
  58 + assert_not_includes assigns(:searches)[:software_infos][:results], software_without_category.community
  59 + end
  60 +
33 61 end
... ...