Commit d1ab5571a35406da7399126240ba049fa1f60a48
1 parent
d5a3fa9d
Exists in
master
and in
5 other branches
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 < 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 < 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 | ... | ... |