Skip to content
This repository has been archived by the owner on Nov 30, 2023. It is now read-only.

Commit

Permalink
Merge pull request #394 from avilaton/write-feed-info-to-resulting-zi…
Browse files Browse the repository at this point in the history
…p-file

Write feed info to resulting file
  • Loading branch information
RachM authored Sep 17, 2017
2 parents 1d6425b + 40cf0f4 commit a51ba67
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 0 deletions.
13 changes: 13 additions & 0 deletions tests/transitfeed/testschedule_write.py
Original file line number Diff line number Diff line change
Expand Up @@ -437,6 +437,15 @@ def runTest(self):
destination_id=dest_id, contains_id=contains_id)
schedule.AddFareRuleObject(rule, problems)

feed_info = transitfeed.FeedInfo()
feed_info.feed_version = "0.0.1"
feed_info.feed_start_date = "20150101"
feed_info.feed_end_date = "20151212"
feed_info.feed_publisher_name = "Some Agency"
feed_info.feed_publisher_url = "http://www.aurl.com"
feed_info.feed_lang = "en"
schedule.AddFeedInfoObject(feed_info)

schedule.Validate(problems)
accumulator.AssertNoMoreExceptions()
schedule.WriteGoogleTransitFeed(self.tempfilepath)
Expand Down Expand Up @@ -514,3 +523,7 @@ def runTest(self):

self.assertEqual(1, len(read_schedule.GetShapeList()))
self.assertEqual(shape, read_schedule.GetShape(shape.shape_id))

self.assertEqual(feed_info, read_schedule.feed_info)
self.assertEqual(feed_info.feed_publisher_name, read_schedule.feed_info.feed_publisher_name)
self.assertEqual("http://www.aurl.com", read_schedule.feed_info.feed_publisher_url)
10 changes: 10 additions & 0 deletions transitfeed/schedule.py
Original file line number Diff line number Diff line change
Expand Up @@ -542,6 +542,7 @@ def AddFeedInfoObject(self, feed_info, problem_reporter=None, validate=False):

if validate:
feed_info.Validate(problem_reporter)
self.AddTableColumns('feed_info', feed_info._ColumnNames())
self.feed_info = feed_info

def AddTransferObject(self, transfer, problem_reporter=None):
Expand Down Expand Up @@ -637,6 +638,15 @@ def WriteGoogleTransitFeed(self, file):
writer.writerow([util.EncodeUnicode(a[c]) for c in columns])
self._WriteArchiveString(archive, 'agency.txt', agency_string)


if 'feed_info' in self._table_columns:
feed_info_string = StringIO.StringIO()
writer = util.CsvUnicodeWriter(feed_info_string)
columns = self.GetTableColumns('feed_info')
writer.writerow(columns)
writer.writerow([util.EncodeUnicode(self.feed_info[c]) for c in columns])
self._WriteArchiveString(archive, 'feed_info.txt', feed_info_string)

calendar_dates_string = StringIO.StringIO()
writer = util.CsvUnicodeWriter(calendar_dates_string)
writer.writerow(
Expand Down

0 comments on commit a51ba67

Please sign in to comment.