code: def testFeedWithQuandl(self):
      class RowFilter(csvfeed.RowFilter):
          def includeRow(self, dateTime, values):
              return dateTime.year == 2013
  
      feed = csvfeed.Feed(
          "Date",
          "%Y-%m-%d",
          maxLen=40,
          timezone=marketsession.USEquities.timezone,
      )
      feed.setRowFilter(RowFilter())
      feed.setTimeDelta(
          datetime.timedelta(hours=23, minutes=59, seconds=59)
      )
      feed.addValuesFromCSV(
          os.path.join("samples", "data", "quandl_gold_2.csv")
      )
  
      for col in ["USD", "GBP", "EUR"]:
          self.assertEqual(len(feed[col]), 0)
  
      disp = dispatcher.Dispatcher()
      disp.addSubject(feed)
      disp.run()
  
      for col in ["USD", "GBP", "EUR"]:
          self.assertEqual(len(feed[col]), 39)
  
      self.assertEqual(feed["USD"][-1], 1333.0)
      self.assertEqual(feed["GBP"][-1], 831.203)
      self.assertEqual(feed["EUR"][-1], 986.75)
      self.assertFalse(
          dt.datetime_is_naive(feed["USD"].getDateTimes()[-1])
      )
      self.assertEqual(
          feed["USD"].getDateTimes()[-1],
          dt.localize(
              datetime.datetime(2013, 9, 29, 23, 59, 59),
              marketsession.USEquities.timezone,
          ),
      )
  
file_path: pyalgotrade/testcases/csvfeed_test.py
imports: import datetime
  import os
  from .None import common
  from .None import feed_test
  from pyalgotrade.feed import csvfeed
  from pyalgotrade import dispatcher
  from pyalgotrade import marketsession
  from pyalgotrade.utils import dt
label_desc: Use image node_id 3 for calling the TestCase obj's underlying member method code with example usage: obj.testFeedWithQuandl() and returns: unknown