From 86c8bce86225510a09018528ee3891300f1d7e24 Mon Sep 17 00:00:00 2001 From: sloosvel Date: Thu, 26 Nov 2020 16:45:28 +0100 Subject: [PATCH 1/5] Avoid overwritting original cmor info --- esmvalcore/cmor/check.py | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/esmvalcore/cmor/check.py b/esmvalcore/cmor/check.py index 52c5d19806..5a6e933f24 100644 --- a/esmvalcore/cmor/check.py +++ b/esmvalcore/cmor/check.py @@ -391,26 +391,26 @@ def _check_generic_level_dim_names(self, key, coordinate): cube_coord = self._cube.coord( var_name=coord.out_name ) - coordinate.out_name = coord.out_name + out_name = coord.out_name if cube_coord.standard_name == coord.standard_name: - coordinate.standard_name = coord.standard_name - coordinate.name = coord.name + standard_name = coord.standard_name + name = coord.name except iris.exceptions.CoordinateNotFoundError: try: cube_coord = self._cube.coord( var_name=coord.standard_name ) - coordinate.standard_name = coord.standard_name - coordinate.name = coord.name + standard_name = coord.standard_name + name = coord.name except iris.exceptions.CoordinateNotFoundError: pass - if coordinate.standard_name: - if not coordinate.out_name: + if standard_name: + if not out_name: self.report_error( - f'Coordinate {coordinate.name} ' + f'Coordinate {name} ' 'has wrong var_name.', ) - level = coordinate.generic_lev_coords[coordinate.name] + level = coordinate.generic_lev_coords[name] level.generic_level = True level.generic_lev_coords = self._cmor_var.coordinates[ key].generic_lev_coords @@ -418,18 +418,18 @@ def _check_generic_level_dim_names(self, key, coordinate): self.report_debug_message( f'Generic level coordinate {key} ' 'will be checked against ' - f'{coordinate.name} coordinate information' + f'{name} coordinate information' ) else: - if coordinate.out_name: + if out_name: self.report_critical( - f'Coordinate {coordinate.name} ' + f'Coordinate {name} ' 'has wrong standard_name ' 'or is not set.', ) else: self.report_critical( - self._does_msg, coordinate.name, 'exist' + self._does_msg, name, 'exist' ) def _check_coords(self): From 18ef01eb07fda48915890def530eda875a3feb7c Mon Sep 17 00:00:00 2001 From: sloosvel Date: Thu, 26 Nov 2020 16:58:44 +0100 Subject: [PATCH 2/5] Initialise names --- esmvalcore/cmor/check.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/esmvalcore/cmor/check.py b/esmvalcore/cmor/check.py index 5a6e933f24..5027367262 100644 --- a/esmvalcore/cmor/check.py +++ b/esmvalcore/cmor/check.py @@ -385,6 +385,9 @@ def _check_dim_names(self): self._does_msg, coordinate.name, 'exist') def _check_generic_level_dim_names(self, key, coordinate): + standard_name = None + out_name = None + name = None if coordinate.generic_lev_coords: for coord in coordinate.generic_lev_coords.values(): try: From f86d82fc194c9a108c3f2550f39301ddef6987e0 Mon Sep 17 00:00:00 2001 From: sloosvel Date: Thu, 26 Nov 2020 17:14:37 +0100 Subject: [PATCH 3/5] Generalise error messages --- esmvalcore/cmor/check.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/esmvalcore/cmor/check.py b/esmvalcore/cmor/check.py index 5027367262..39531ac896 100644 --- a/esmvalcore/cmor/check.py +++ b/esmvalcore/cmor/check.py @@ -426,7 +426,7 @@ def _check_generic_level_dim_names(self, key, coordinate): else: if out_name: self.report_critical( - f'Coordinate {name} ' + f'Generic level coordinate {key} ' 'has wrong standard_name ' 'or is not set.', ) From 6e05019049218b080e0538571b3f186a7f811909 Mon Sep 17 00:00:00 2001 From: sloosvel Date: Thu, 26 Nov 2020 17:15:49 +0100 Subject: [PATCH 4/5] Generalise error message --- esmvalcore/cmor/check.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/esmvalcore/cmor/check.py b/esmvalcore/cmor/check.py index 39531ac896..d5f2a5d371 100644 --- a/esmvalcore/cmor/check.py +++ b/esmvalcore/cmor/check.py @@ -410,7 +410,7 @@ def _check_generic_level_dim_names(self, key, coordinate): if standard_name: if not out_name: self.report_error( - f'Coordinate {name} ' + f'Generic level coordinate {key} ' 'has wrong var_name.', ) level = coordinate.generic_lev_coords[name] From 7b9ba1af95cca34c932a0f5f9d4eccfe9065b189 Mon Sep 17 00:00:00 2001 From: sloosvel <45196700+sloosvel@users.noreply.github.com> Date: Tue, 1 Dec 2020 09:14:02 +0100 Subject: [PATCH 5/5] Update esmvalcore/cmor/check.py Co-authored-by: Manuel Schlund <32543114+schlunma@users.noreply.github.com> --- esmvalcore/cmor/check.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/esmvalcore/cmor/check.py b/esmvalcore/cmor/check.py index d5f2a5d371..7b9562100f 100644 --- a/esmvalcore/cmor/check.py +++ b/esmvalcore/cmor/check.py @@ -432,7 +432,7 @@ def _check_generic_level_dim_names(self, key, coordinate): ) else: self.report_critical( - self._does_msg, name, 'exist' + self._does_msg, key, 'exist' ) def _check_coords(self):