Ibrahim Jarif created CLIMATE-786: ------------------------------------- Summary: Update rcmed.py and test_rcmed.py Key: CLIMATE-786 URL: https://issues.apache.org/jira/browse/CLIMATE-786 Project: Apache Open Climate Workbench Issue Type: Bug Components: data sources, tests Reporter: Ibrahim Jarif Assignee: Maziyar Boustani Priority: Critical
There are multiple issues here 1. The {code}if time.day != last_day_of_month:{code} on line 3 is incorrect. It should be{code}if time_step == 'monthly':{code} . Fixing this creates another bug. Read 2. {code} def _end_of_date(time, time_step): last_day_of_month = calendar.monthrange(time.year, time.month)[1] if time.day != last_day_of_month: end_time_string = time.strftime('%Y%m%d') end_time_string = end_time_string[:6] + str(last_day_of_month) time = datetime.strptime(end_time_string, '%Y%m%d') ##TODO: Change the 3 lines above with this line: ##time = datetime(time.year, time.month, lastDayOfMonth) elif time_step.lower() == 'daily': end_time_string = time.strftime('%Y%m%d%H%M%S') end_time_string = end_time_string[:8] + '235959' time = datetime.strptime(end_time_string, '%Y%m%d%H%M%S') ##TODO: Change the 3 lines above with this line: ##time = datetime(time.year, time.month, end_time.day, 23, 59, 5 {code} 2. Multiple tests in test_rcmed.py start failing when 1. is fixed. The bug is on this line {code}def return_text(self, url): if url == self.url + "datasetId={0}¶meterId={1}&latMin={2}&latMax={3}&lonMin={4}&lonMax={5}&timeStart=20020801T0000Z&timeEnd=20021031T0000Z"\ .format(self.dataset_id, self.parameter_id, self.min_lat, self.max_lat, self.min_lon, self.max_lon, self.start_time_for_url, self.end_time_for_url):{code} This line expects the {code}timeEnd=20021031T0000Z{code} but the actual value is {code}timeEnd=20021001T2359Z{code}. The value of timeEnd depends on {code}time_step{code} variable that is passed on from function to function. In the rcmed_test the value of {code}time_step='daily'{code} and hence the value of {code}timeEnd{code} should be {code}20021001T2359Z{code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)