Commit e221f5f14b24a39d58d5bf3327897a21bd43acb4
1 parent
4fe7ff1b
Exists in
master
and in
5 other branches
Fix view cpnj validation and add funcional tests
Signed-off-by: Gustavo Jaruga <darksshades@gmail.com> Signed-off-by: Parley Martins <parley@outlook.com>
Showing
2 changed files
with
48 additions
and
0 deletions
Show diff stats
controllers/mpog_software_plugin_controller.rb
... | ... | @@ -173,6 +173,7 @@ class MpogSoftwarePluginController < ApplicationController |
173 | 173 | |
174 | 174 | if institution.cnpj.nil? or institution.cnpj.blank? |
175 | 175 | institution.errors.add(:cnpj, _("can't be blank")) |
176 | + return institution | |
176 | 177 | end |
177 | 178 | |
178 | 179 | InstitutionHelper.register_institution_modification institution | ... | ... |
test/functional/mpog_software_plugin_controller_test.rb
... | ... | @@ -72,6 +72,36 @@ class MpogSoftwarePluginControllerTest < ActionController::TestCase |
72 | 72 | assert json_response["success"] |
73 | 73 | end |
74 | 74 | |
75 | + should "create more than one institution without acronym" do | |
76 | + @controller.stubs(:verify_recaptcha).returns(true) | |
77 | + | |
78 | + xhr :get, :new_institution, | |
79 | + :authenticity_token=>"dsa45a6das52sd", | |
80 | + :name => "foo bar", | |
81 | + :community=>{:name=>"foo bar", :country => "BR", :state => "DF", :city => "Brasilia"}, | |
82 | + :governmental=>{:power=>@govPower.id, :sphere=>@govSphere.id}, | |
83 | + :juridical => {:nature => @juridical_nature.id}, | |
84 | + :institution => {:cnpj=>"12.234.567/8900-10", :acronym=>"", :type=>"PublicInstitution"}, | |
85 | + :recaptcha_response_field=>'' | |
86 | + | |
87 | + json_response = ActiveSupport::JSON.decode(@response.body) | |
88 | + | |
89 | + assert json_response["success"] | |
90 | + | |
91 | + xhr :get, :new_institution, | |
92 | + :authenticity_token=>"dsa45a6das52sd", | |
93 | + :name => "foo bar 2", | |
94 | + :community=>{:name=>"foo bar 2", :country => "BR", :state => "DF", :city => "Brasilia"}, | |
95 | + :governmental=>{:power=>@govPower.id, :sphere=>@govSphere.id}, | |
96 | + :juridical => {:nature => @juridical_nature.id}, | |
97 | + :institution => {:cnpj=>"12.224.567/8900-10", :acronym=>"", :type=>"PublicInstitution"}, | |
98 | + :recaptcha_response_field=>'' | |
99 | + | |
100 | + json_response = ActiveSupport::JSON.decode(@response.body) | |
101 | + | |
102 | + assert json_response["success"] | |
103 | + end | |
104 | + | |
75 | 105 | should "not create a institution that already exists" do |
76 | 106 | @controller.stubs(:verify_recaptcha).returns(true) |
77 | 107 | |
... | ... | @@ -89,6 +119,23 @@ class MpogSoftwarePluginControllerTest < ActionController::TestCase |
89 | 119 | assert !json_response["success"] |
90 | 120 | end |
91 | 121 | |
122 | + should "not create a institution without cnpj" do | |
123 | + @controller.stubs(:verify_recaptcha).returns(true) | |
124 | + | |
125 | + xhr :get, :new_institution, | |
126 | + :authenticity_token=>"dsa45a6das52sd", | |
127 | + :name => "Ministerio Publico da Uniao", | |
128 | + :community=>{:name=>"Ministerio Publico da Uniao", :country => "BR", :state => "DF", :city => "Brasilia"}, | |
129 | + :governmental=>{:power=>@govPower.id, :sphere=>@govSphere.id}, | |
130 | + :juridical => {:nature => @juridical_nature.id}, | |
131 | + :institution => {:cnpj=> "", :acronym=>"fb", :type=>"PublicInstitution"}, | |
132 | + :recaptcha_response_field=>'' | |
133 | + | |
134 | + json_response = ActiveSupport::JSON.decode(@response.body) | |
135 | + | |
136 | + assert !json_response["success"] | |
137 | + end | |
138 | + | |
92 | 139 | should "verify if institution name already exists" do |
93 | 140 | xhr :get, :institution_already_exists, :name=>"Ministerio Publico da Uniao" |
94 | 141 | assert_equal "true", @response.body | ... | ... |