code: def _test_per_dollar(self):
      results = self.get_results(
          self.code.format(
              commission="set_commission(commission.PerDollar(0.01))",
              sid=133,
              amount=300,
          )
      )
  
      # should be 3 fills at 100 shares apiece, each fill is worth $1k, so
      # incremental commission of $1000 * 0.01 = $10
  
      # commissions should be $10, $20, $30
      for i, orders in enumerate(results.orders[1:4]):
          self.assertEqual((i + 1) * 10, orders[0]["commission"])
  
      self.verify_capital_used(results, [-1010, -1010, -1010])
  
imports: from datetime import timedelta
  from textwrap import dedent
  from nose_parameterized import parameterized
  from pandas import DataFrame
  from catalyst import TradingAlgorithm
  from catalyst.assets import Equity, Future
  from catalyst.errors import IncompatibleCommissionModel
  from catalyst.finance.commission import CommissionModel, EquityCommissionModel, FutureCommissionModel, PerContract, PerDollar, PerFutureTrade, PerShare, PerTrade
  from catalyst.finance.order import Order
  from catalyst.finance.transaction import Transaction
  from catalyst.testing import CatalystTestCase, trades_by_sid_to_dfs
  from catalyst.testing.fixtures import WithAssetFinder, WithSimParams, WithDataPortal
  from catalyst.utils import factory
label_desc: Use image node_id 9 for calling the CommissionAlgorithmTests obj's underlying member method code with example usage: obj._test_per_dollar() without return types