Commit e221f5f14b24a39d58d5bf3327897a21bd43acb4

Authored by Gust
1 parent 4fe7ff1b

Fix view cpnj validation and add funcional tests

Signed-off-by: Gustavo Jaruga <darksshades@gmail.com>
Signed-off-by: Parley Martins <parley@outlook.com>
controllers/mpog_software_plugin_controller.rb
... ... @@ -173,6 +173,7 @@ class MpogSoftwarePluginController &lt; 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 &lt; 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 &lt; 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
... ...