code: def test_properties(mock_exchange_class):
      exchange = mock_exchange_class.return_value
      exchange.options = ExchangeOptions()
      exchange.id = "fake_exchange_id"
      exchange.name = "bitfinex"
  
      wallets = [
          Wallet(exchange, 10000 * USD),
          Wallet(exchange, 0 * BTC),
      ]
      portfolio = Portfolio(USD, wallets)
  
      order = Order(
          step=0,
          exchange_pair=ExchangePair(exchange, USD / BTC),
          side=TradeSide.BUY,
          trade_type=TradeType.LIMIT,
          quantity=5000.00 * USD,
          portfolio=portfolio,
          price=7000.00,
      )
  
      assert order
      assert order.step == 0
      assert order.base_instrument == USD
      assert order.quote_instrument == BTC
      assert order.size == 5000.00 * USD
      assert order.price == 7000.00
      assert order.trades == []
      assert order.is_buy
      assert not order.is_sell
      assert not order.is_market_order
      assert order.is_limit_order
  
imports: import re
  import unittest.mock
  from decimal import Decimal
  from tensortrade.oms.instruments import *
  from tensortrade.oms.orders import Order, OrderStatus, OrderSpec, TradeSide, TradeType
  from tensortrade.oms.orders.criteria import Stop
  from tensortrade.oms.exchanges import ExchangeOptions
  from tensortrade.oms.wallets import Wallet, Portfolio
label_desc: Use image node_id 2 for calling a global function with example usage: test_properties(mock_exchange_class) without return types