Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision

Target

Select target project
  • geant-swd/sage-validation
1 result
Select Git revision
Show changes
Commits on Source (6)
# Changelog
## [0.11] - 2025-04-29
- Changed NC-CC-DEP validation. The validator raises error when all NC, CC and DEP are missing
## [0.10] - 2025-04-29
- Enhance NC-CC-DEP validation to raise errors when any field is missing
......
......@@ -244,9 +244,11 @@ class CSVUploadForm(forms.Form):
dep = row.get(dep_field)
nominal_account_name = row.get(nominal_account_field)
if not cc and not dep and not nominal_account_name:
errors.append(
f"Row {index}: Missing values in '{cc_field}', '{dep_field}', and '{nominal_account_field}'.")
continue
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)
......
......@@ -3,7 +3,7 @@ from setuptools import find_packages, setup
setup(
name="sage-validation",
version="0.10",
version="0.11",
packages=find_packages(),
include_package_data=True,
install_requires=[
......
......@@ -101,13 +101,15 @@ def test_validate_nc_cc_dep_combination_against_meo_sage_account_blank_values(
sample_input_file,
{
"NominalAnalysisNominalCostCentre/1": "",
"NominalAnalysisNominalDepartment/1": "",
"NominalAnalysisNominalAccountNumber/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'."
" and 'NominalAnalysisNominalAccountNumber/1'."
in str(form.errors["file"][0])
)
......