code: def testExtraColumns(self):
      with common.TmpDir() as tmpPath:
          columnNames = {"open": "Last", "close": "Last"}
          bf = quandl.build_feed(
              "BITSTAMP",
              ["USD"],
              2014,
              2014,
              tmpPath,
              columnNames=columnNames,
              authToken=QUANDL_API_KEY,
          )
          bf.loadAll()
  
          self.assertEquals(len(bf["USD"][-1].getExtraColumns()), 3)
          self.assertEquals(
              bf["USD"][-1].getExtraColumns()["Bid"], 319.19
          )
          self.assertEquals(
              bf["USD"][-1].getExtraColumns()["Ask"], 319.63
          )
  
          bids = bf["USD"].getExtraDataSeries("Bid")
          self.assertEquals(bids[-1], 319.19)
  
imports: import os
  import datetime
  import tempfile
  import shutil
  import subprocess
  import six
  from .None import common
  from pyalgotrade.tools import quandl
  from pyalgotrade import bar
  from pyalgotrade.barfeed import quandlfeed
label_desc: Use image node_id 10 for calling the ToolsTestCase obj's underlying member method code with example usage: obj.testExtraColumns() without return types