self.assertTrue(trade.is_fullfiled)
- order1.filled_amount.assert_called_with(in_base_currency=True)
- order2.filled_amount.assert_called_with(in_base_currency=True)
- order3.filled_amount.assert_called_with(in_base_currency=True)
+ order1.filled_amount.assert_called_with(in_base_currency=True, refetch=True)
+ order2.filled_amount.assert_called_with(in_base_currency=True, refetch=True)
+ order3.filled_amount.assert_called_with(in_base_currency=True, refetch=True)
with self.subTest(inverted=True):
value_from = portfolio.Amount("BTC", "0.5")
self.assertTrue(trade.is_fullfiled)
- order1.filled_amount.assert_called_with(in_base_currency=False)
- order2.filled_amount.assert_called_with(in_base_currency=False)
- order3.filled_amount.assert_called_with(in_base_currency=False)
+ order1.filled_amount.assert_called_with(in_base_currency=False, refetch=True)
+ order2.filled_amount.assert_called_with(in_base_currency=False, refetch=True)
+ order3.filled_amount.assert_called_with(in_base_currency=False, refetch=True)
def test_filled_amount(self):
trade.orders.append(order2)
self.assertEqual(portfolio.Amount("ETH", "0.31"), trade.filled_amount())
- order1.filled_amount.assert_called_with(in_base_currency=False)
- order2.filled_amount.assert_called_with(in_base_currency=False)
+ order1.filled_amount.assert_called_with(in_base_currency=False, refetch=False)
+ order2.filled_amount.assert_called_with(in_base_currency=False, refetch=False)
self.assertEqual(portfolio.Amount("ETH", "0.31"), trade.filled_amount(in_base_currency=False))
- order1.filled_amount.assert_called_with(in_base_currency=False)
- order2.filled_amount.assert_called_with(in_base_currency=False)
+ order1.filled_amount.assert_called_with(in_base_currency=False, refetch=False)
+ order2.filled_amount.assert_called_with(in_base_currency=False, refetch=False)
self.assertEqual(portfolio.Amount("ETH", "0.31"), trade.filled_amount(in_base_currency=True))
- order1.filled_amount.assert_called_with(in_base_currency=True)
- order2.filled_amount.assert_called_with(in_base_currency=True)
+ order1.filled_amount.assert_called_with(in_base_currency=True, refetch=False)
+ order2.filled_amount.assert_called_with(in_base_currency=True, refetch=False)
@mock.patch.object(portfolio.Computation, "compute_value")
@mock.patch.object(portfolio.Trade, "filled_amount")
order.cancel()
self.m.ccxt.cancel_order.assert_not_called()
- def test_dust_amount_remaining(self):
+ def test_mark_dust_amount_remaining(self):
order = portfolio.Order("buy", portfolio.Amount("ETH", 10),
D("0.1"), "BTC", "long", self.m, "trade")
- order.remaining_amount = mock.Mock(return_value=portfolio.Amount("ETH", 1))
- self.assertFalse(order.dust_amount_remaining())
+ self.m.ccxt.is_dust_trade.return_value = False
+ order.mark_dust_amount_remaining_order()
+ self.assertEqual("pending", order.status)
- order.remaining_amount = mock.Mock(return_value=portfolio.Amount("ETH", D("0.0001")))
- self.assertTrue(order.dust_amount_remaining())
+ self.m.ccxt.is_dust_trade.return_value = True
+ order.mark_dust_amount_remaining_order()
+ self.assertEqual("closed_dust_remaining", order.status)
@mock.patch.object(portfolio.Order, "fetch")
@mock.patch.object(portfolio.Order, "filled_amount", return_value=portfolio.Amount("ETH", 1))
fetch.assert_not_called()
order.status = "open"
self.assertEqual(portfolio.Amount("ETH", 5), order.filled_amount(in_base_currency=False))
+ fetch.assert_not_called()
+ self.assertEqual(portfolio.Amount("ETH", 5), order.filled_amount(in_base_currency=False, refetch=True))
fetch.assert_called_once()
self.assertEqual(portfolio.Amount("BTC", "0.7"), order.filled_amount(in_base_currency=True))
"status": "foo",
"datetime": "timestamp"
}
+ self.m.ccxt.is_dust_trade.return_value = False
order.fetch()
self.m.ccxt.fetch_order.assert_called_once_with(45)