From b3ab87bc5a0188b05c3e725d123f8db2ba5a1a33 Mon Sep 17 00:00:00 2001 From: Vassilii Khachaturov Date: Wed, 13 Nov 2013 22:02:21 +0200 Subject: [PATCH] 7197: refactor code replace all copies of logging with a single point at the exception rethrow point --- gramps/gen/lib/date.py | 51 +++++++++++++++++++++--------------------- 1 file changed, 25 insertions(+), 26 deletions(-) diff --git a/gramps/gen/lib/date.py b/gramps/gen/lib/date.py index fe1253e3a..42d228ef1 100644 --- a/gramps/gen/lib/date.py +++ b/gramps/gen/lib/date.py @@ -1634,35 +1634,34 @@ class Date(object): # Did the roundtrip change the date value?! if sanity.dateval != value: - if sanity.get_new_year() != self.get_new_year(): - # convert_calendar resets the new year, so the date value will differ. - # Just check the sort value matches then. - if self.sortval != sanity.sortval: - log.debug("Sanity check failed - self: {}, sanity: {}".format( - self.to_struct(), sanity.to_struct())) - raise DateError("Invalid date value {}".format(value)) - else: - # Maybe it is OK because of undetermined value adjustment? - zl = zip(sanity.dateval, value) - # Loop over all values present, whether compound or not - for d,m,y,sl in zip(*[iter(zl)]*4): - # each of d,m,y,sl is a pair from dateval and value, to compare - for adjusted,original in d,m: + try: + if sanity.get_new_year() != self.get_new_year(): + # convert_calendar resets the new year, so the date value will differ. + # Just check the sort value matches then. + if self.sortval != sanity.sortval: + raise DateError("Invalid date value {}".format(value)) + else: + # Maybe it is OK because of undetermined value adjustment? + zl = zip(sanity.dateval, value) + # Loop over all values present, whether compound or not + for d,m,y,sl in zip(*[iter(zl)]*4): + # each of d,m,y,sl is a pair from dateval and value, to compare + for adjusted,original in d,m: + if adjusted != original and not(original == 0 and adjusted == 1): + raise DateError("Invalid day/month {} passed in value {}". + format(original, value)) + + adjusted,original = y + adjusted -= year_delta if adjusted != original and not(original == 0 and adjusted == 1): - log.debug("Sanity check failed - self: {}, sanity: {}".format( - self.to_struct(), sanity.to_struct())) - raise DateError("Invalid day/month {} passed in value {}". + raise DateError("Invalid year {} passed in value {}". format(original, value)) - adjusted,original = y - adjusted -= year_delta - if adjusted != original and not(original == 0 and adjusted == 1): - log.debug("Sanity check failed - self: {}, sanity: {}".format( - self.to_struct(), sanity.to_struct())) - raise DateError("Invalid year {} passed in value {}". - format(original, value)) - - # ignore slash difference + # ignore slash difference + except DateError: + log.debug("Sanity check failed - self: {}, sanity: {}".format( + self.to_struct(), sanity.to_struct())) + raise def recalc_sort_value(self): """