diff --git a/merge.py b/merge.py index 0bb759f7..a22e56d0 100755 --- a/merge.py +++ b/merge.py @@ -1182,8 +1182,10 @@ def TruncatePeriod(service_period, start, end): start: The start date as a string in YYYYMMDD format. end: The end date as a string in YYYYMMDD format. """ - service_period.start_date = max(service_period.start_date, start) - service_period.end_date = min(service_period.end_date, end) + if service_period.start_date is not None: + service_period.start_date = max(service_period.start_date, start) + if service_period.end_date is not None: + service_period.end_date = min(service_period.end_date, end) dates_to_delete = [] for k in service_period.date_exceptions: if (k < start) or (k > end): @@ -1200,7 +1202,7 @@ def TruncatePeriod(service_period, start, end): before = (cutoff_date - one_day_delta).strftime('%Y%m%d') for a in self.feed_merger.a_schedule.GetServicePeriodList(): - TruncatePeriod(a, 0, before) + TruncatePeriod(a, '0'*8, before) for b in self.feed_merger.b_schedule.GetServicePeriodList(): TruncatePeriod(b, cutoff, '9'*8) diff --git a/tests/data/good_feed/calendar.txt b/tests/data/good_feed/calendar.txt index 0da4c8ff..cac4aea1 100644 --- a/tests/data/good_feed/calendar.txt +++ b/tests/data/good_feed/calendar.txt @@ -1,3 +1,3 @@ service_id,monday,tuesday,wednesday,thursday,friday,saturday,sunday,start_date,end_date -FULLW,1,1,1,1,1,1,1,20070101,20151231 -WE,0,0,0,0,0,1,1,20070101,20151231 +FULLW,1,1,1,1,1,1,1,20070101,20251231 +WE,0,0,0,0,0,1,1,20070101,20251231 diff --git a/tests/data/googletransit/good_feed/calendar.txt b/tests/data/googletransit/good_feed/calendar.txt index 0da4c8ff..cac4aea1 100644 --- a/tests/data/googletransit/good_feed/calendar.txt +++ b/tests/data/googletransit/good_feed/calendar.txt @@ -1,3 +1,3 @@ service_id,monday,tuesday,wednesday,thursday,friday,saturday,sunday,start_date,end_date -FULLW,1,1,1,1,1,1,1,20070101,20151231 -WE,0,0,0,0,0,1,1,20070101,20151231 +FULLW,1,1,1,1,1,1,1,20070101,20251231 +WE,0,0,0,0,0,1,1,20070101,20251231