Closed msaltnet closed 3 years ago
test
import unittest
from smtm import SimulatorTrader
from unittest.mock import *
import requests
class SimulatorTraderTests(unittest.TestCase):
def setUp(self):
pass
def tearDown(self):
pass
def test_handle_request_call_callback_with_result_of_market_handle_quest(self):
trader = SimulatorTrader()
class DummyRequest():
pass
dummy_request = DummyRequest()
dummy_request.id = "mango"
dummy_request.type = "orange"
callback = MagicMock()
trader.market.handle_request = MagicMock(return_value="banana")
trader.handle_request(dummy_request, callback)
trader.market.handle_request.assert_called_once_with(dummy_request)
callback.assert_called_once_with("banana")
def test_initialize_initialize_virtual_market(self):
trader = SimulatorTrader()
class DummyHttp():
pass
http = DummyHttp()
trader.market.initialize = MagicMock()
trader.market.deposit = MagicMock()
trader.initialize(http, "mango", 500, 5000)
trader.market.initialize.assert_called_once_with(http, "mango", 500)
trader.market.deposit.assert_called_once_with(5000)
공통
SimulatorDataProvider
StrategyBuyAndHold VirtualMarket
class SimulatorDataProvider(DataProvider): ''' 거래소로부터 과거 데이터를 수집해서 순차적으로 제공하는 클래스 '''