code: def _test_volume_share_slippage_with_future(self):
      slippage_model = VolumeShareSlippage(
          volume_limit=1, price_impact=0.3
      )
  
      open_orders = [
          Order(
              dt=datetime.datetime(2006, 1, 5, 14, 30, tzinfo=pytz.utc),
              amount=10,
              filled=0,
              asset=self.ASSET1000,
          ),
      ]
  
      bar_data = self.create_bardata(
          simulation_dt_func=lambda: self.minutes[0],
      )
  
      orders_txns = list(
          slippage_model.simulate(bar_data, self.ASSET1000, open_orders)
      )
  
      self.assertEquals(len(orders_txns), 1)
      _, txn = orders_txns[0]
  
      # We expect to fill the order for all 10 contracts. The volume for the
      # futures contract in this bar is 100, so our volume share is:
      #     10.0 / 100 = 0.1
      # The current price is 5.0 and the price impact is 0.3, so the expected
      # impacted price is:
      #     5.0 + (5.0 * (0.1 ** 2) * 0.3) = 5.015
      expected_txn = {
          "price": 5.015,
          "dt": datetime.datetime(2006, 1, 5, 14, 31, tzinfo=pytz.utc),
          "amount": 10,
          "asset": self.ASSET1000,
          "commission": None,
          "type": DATASOURCE_TYPE.TRANSACTION,
          "order_id": open_orders[0].id,
      }
  
      self.assertIsNotNone(txn)
      self.assertEquals(expected_txn, txn.__dict__)
  
imports: from collections import namedtuple
  import datetime
  from math import sqrt
  from nose_parameterized import parameterized
  from pandas.tslib import normalize_date
  import numpy
  import pandas
  import pytz
  from catalyst.assets import Equity, Future
  from catalyst.data.data_portal import DataPortal
  from catalyst.finance.asset_restrictions import NoRestrictions
  from catalyst.finance.order import Order
  from catalyst.finance.slippage import EquitySlippageModel, fill_price_worse_than_limit_price, FutureSlippageModel, SlippageModel, VolatilityVolumeShare, VolumeShareSlippage
  from catalyst.protocol import DATASOURCE_TYPE, BarData
  from catalyst.testing import create_minute_bar_data, tmp_bcolz_equity_minute_bar_reader
  from catalyst.testing.fixtures import WithCreateBarData, WithDataPortal, WithSimParams, WithTradingEnvironment, CatalystTestCase
  from catalyst.utils.classproperty import classproperty
label_desc: Use image node_id 7 for calling the VolumeShareSlippageTestCase obj's underlying member method code with example usage: obj._test_volume_share_slippage_with_future() without return types