code: def test_call_with_direction_down(
      mock_order_class, mock_exchange_class
  ):
      exchange = mock_exchange_class.return_value
  
      order = mock_order_class.return_value
      order.pair = USD / BTC
      order.price = 7000.00
  
      criteria = Stop(direction=StopDirection.DOWN, percent=0.03)
  
      # Greater than 3.00% below order price
      exchange.quote_price.return_value = 0.95 * order.price
      assert criteria(order, exchange)
  
      # Equal to 3.00% below order price
      exchange.quote_price.return_value = 0.969 * order.price
      assert criteria(order, exchange)
  
      # Less than 3.00% below order price
      exchange.quote_price.return_value = 0.98 * order.price
      assert not criteria(order, exchange)
  
imports: import unittest.mock
  from tensortrade.oms.orders.criteria import Stop, StopDirection
  from tensortrade.oms.instruments import USD, BTC
label_desc: Use image node_id 2 for calling a global function with example usage: test_call_with_direction_down(mock_order_class, mock_exchange_class) without return types