diff --git a/corehq/apps/hqwebapp/management/commands/migrate_app_to_bootstrap5.py b/corehq/apps/hqwebapp/management/commands/migrate_app_to_bootstrap5.py index e0a0f306aa37..2867bee046ea 100644 --- a/corehq/apps/hqwebapp/management/commands/migrate_app_to_bootstrap5.py +++ b/corehq/apps/hqwebapp/management/commands/migrate_app_to_bootstrap5.py @@ -7,6 +7,7 @@ get_spec, make_direct_css_renames, make_numbered_css_renames, + make_select_form_control_renames, make_template_tag_renames, make_data_attribute_renames, make_javascript_dependency_renames, @@ -17,6 +18,7 @@ flag_crispy_forms_in_template, flag_file_inputs, flag_inline_styles, + flag_selects_without_form_control, add_todo_comments_for_flags, update_gruntfile, ) @@ -577,6 +579,8 @@ def make_template_line_changes(old_line, spec, is_fresh_migration): new_line, attribute_renames = make_data_attribute_renames(new_line, spec) renames.extend(attribute_renames) + new_line, select_renames = make_select_form_control_renames(new_line, spec) + renames.extend(select_renames) new_line, template_dependency_renames = make_template_dependency_renames(new_line, spec) renames.extend(template_dependency_renames) new_line, template_tag_renames = make_template_tag_renames(new_line, spec) @@ -590,6 +594,7 @@ def get_flags_in_template_line(template_line, spec): flags.extend(flag_crispy_forms_in_template(template_line)) flags.extend(flag_file_inputs(template_line)) flags.extend(flag_inline_styles(template_line)) + flags.extend(flag_selects_without_form_control(template_line)) return flags @staticmethod diff --git a/corehq/apps/hqwebapp/tests/utils/test_bootstrap_changes.py b/corehq/apps/hqwebapp/tests/utils/test_bootstrap_changes.py index 4c425d9cbd66..a05074c17676 100644 --- a/corehq/apps/hqwebapp/tests/utils/test_bootstrap_changes.py +++ b/corehq/apps/hqwebapp/tests/utils/test_bootstrap_changes.py @@ -3,6 +3,7 @@ get_spec, make_direct_css_renames, make_numbered_css_renames, + make_select_form_control_renames, make_template_tag_renames, make_data_attribute_renames, make_javascript_dependency_renames, @@ -13,6 +14,7 @@ replace_path_references, check_bootstrap3_references_in_template, flag_crispy_forms_in_template, + flag_selects_without_form_control, check_bootstrap3_references_in_javascript, flag_file_inputs, flag_inline_styles, @@ -50,6 +52,15 @@ def test_make_numbered_css_renames_bootstrap5(): eq(renames, ['renamed col-xs- to col-sm-']) +def test_make_select_form_control_renames_bootstrap5(): + line = """ \n""") + eq(renames, ['renamed form-control to form-select']) + + def test_make_template_tag_renames_bootstrap5(): line = """ {% requirejs_main "data_dictionary/js/data_dictionary" %}\n""" final_line, renames = make_template_tag_renames( @@ -266,6 +277,13 @@ def test_flag_extended_changed_javascript_plugins_bootstrap5(): 'components/popovers/\n']]) +def test_flag_selects_without_form_control_bootstrap5(): + line = """