Skip to content
Snippets Groups Projects
Commit 9bc53102 authored by Neda Moeini's avatar Neda Moeini
Browse files

Merge branch 'enhancement/dont-let-blank-field-for-nc-cc-dep-validation' into 'develop'

Improve validation error handling for missing nominal analysis fields in CSV upload

See merge request !7
parents adec218e 568c07d1
No related branches found
No related tags found
1 merge request!7Improve validation error handling for missing nominal analysis fields in CSV upload
......@@ -245,6 +245,8 @@ class CSVUploadForm(forms.Form):
nominal_account_name = row.get(nominal_account_field)
if not cc or not dep or not nominal_account_name:
errors.append(f"Row {index}: Missing values in '{cc_field}', '{dep_field}', or "
f"'{nominal_account_field}'.")
continue
cc_type = cost_centre_map.get(cc)
......
......@@ -93,6 +93,24 @@ def test_validate_nc_cc_dep_combination_against_meo_sage_account(
in str(form.errors["file"][0]))
def test_validate_nc_cc_dep_combination_against_meo_sage_account_blank_values(
sample_input_file: SimpleUploadedFile, mock_meo_database: MagicMock
) -> None:
"""Test validation for nominal analysis fields against MEO valid Sage accounts."""
modified_file = create_modified_csv(
sample_input_file,
{
"NominalAnalysisNominalCostCentre/1": "",
})
form = CSVUploadForm(files={"file": modified_file})
assert not form.is_valid()
assert (
"Row 1: Missing values in 'NominalAnalysisNominalCostCentre/1', 'NominalAnalysisNominalDepartment/1',"
" or 'NominalAnalysisNominalAccountNumber/1'."
in str(form.errors["file"][0])
)
def test_cheque_fields_must_be_empty(sample_input_file: SimpleUploadedFile, mock_meo_database: MagicMock) -> None:
"""Test that cheque fields must be empty."""
modified_file = create_modified_csv(sample_input_file,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment