Commit 9198bbb93bebb26387b67a387abb1f5ba222fd70

Authored by David Silva
Committed by Fabio Teixeira
1 parent 36475a0e

correcoes_aderencia: Hide field "city" when country isn't Brazil.

Signed-off-by: David Carlos <ddavidcarlos1392@gmail.com>
Signed-off-by: Parley Martins <parley@outlook.com>
features/user_profile_edition.feature
... ... @@ -10,6 +10,11 @@ Feature: Institution Field
10 10 And I check "MpogSoftwarePlugin"
11 11 And I press "Save changes"
12 12 And feature "skip_new_user_email_confirmation" is enabled on environment
  13 + And I go to /admin/features/manage_fields
  14 + And I check "person_fields_country_active"
  15 + And I check "person_fields_state_active"
  16 + And I check "person_fields_city_active"
  17 + And I press "Save changes"
13 18 And I go to /account/logout
14 19 And Institutions has initial default values on database
15 20 And the following public institutions
... ... @@ -47,4 +52,18 @@ Feature: Institution Field
47 52 Scenario: Verify text information to use governmental e-mail
48 53 Given I am on josesilva's control panel
49 54 And I follow "Edit Profile"
50   - Then I should see "If you work in a public agency use your government e-Mail"
51 55 \ No newline at end of file
  56 + Then I should see "If you work in a public agency use your government e-Mail"
  57 +
  58 + @selenium
  59 + Scenario: Verify if field 'city' is shown when Brazil is selected
  60 + Given I am on josesilva's control panel
  61 + And I follow "Edit Profile"
  62 + Then I should see "City"
  63 +
  64 + @selenium
  65 + Scenario: Verify if field 'city' does not appear when Brazil is not selected as country
  66 + Given I am on josesilva's control panel
  67 + When I follow "Edit Profile"
  68 + And I select "United States" from "profile_data_country"
  69 + And I sleep for 1 seconds
  70 + Then I should not see "City"
... ...
public/mpog-user-validations.js
... ... @@ -38,6 +38,13 @@
38 38 });
39 39 }
40 40  
  41 + function hide_city(){
  42 + jQuery("#city_field").parent().parent().parent().hide();
  43 + }
  44 + function show_city(){
  45 + jQuery("#city_field").parent().parent().parent().show();
  46 + }
  47 +
41 48 function replace_state_with_input() {
42 49 replace_with(input_select);
43 50 }
... ... @@ -53,6 +60,14 @@
53 60  
54 61 setInput : function() {
55 62 replace_state_with_input();
  63 + },
  64 +
  65 + setHideCity : function(){
  66 + hide_city();
  67 + },
  68 +
  69 + setShowCity : function(){
  70 + show_city();
56 71 }
57 72 }
58 73 }
... ... @@ -255,8 +270,10 @@
255 270 jQuery("#profile_data_country").change(function(){
256 271 if( this.value == "BR" && selectFieldChoices.actualFieldIsInput() ) {
257 272 selectFieldChoices.setSelect();
  273 + selectFieldChoices.setShowCity();
258 274 } else {
259 275 selectFieldChoices.setInput();
  276 + selectFieldChoices.setHideCity();
260 277 }
261 278 });
262 279  
... ...