Ejemplo n.º 1
0
def test_set_sandbox_exception(default_conf, mocker):
    """
    Test Fail scenario
    """
    api_mock = MagicMock()
    api_mock.load_markets = MagicMock(return_value={
        'ETH/BTC': '',
        'LTC/BTC': '',
        'XRP/BTC': '',
        'NEO/BTC': ''
    })
    url_mock = PropertyMock(return_value={'api': 'https://api.gdax.com'})
    type(api_mock).urls = url_mock

    mocker.patch('freqtrade.exchange.Exchange._init_ccxt',
                 MagicMock(return_value=api_mock))
    mocker.patch('freqtrade.exchange.Exchange.validate_timeframes',
                 MagicMock())

    with pytest.raises(OperationalException,
                       match=r'does not provide a sandbox api'):
        exchange = Exchange(default_conf)
        default_conf['exchange']['sandbox'] = True
        exchange.set_sandbox(exchange._api, default_conf['exchange'],
                             'Logname')
Ejemplo n.º 2
0
def test_set_sandbox(default_conf, mocker):
    """
    Test working scenario
    """
    api_mock = MagicMock()
    api_mock.load_markets = MagicMock(return_value={
        'ETH/BTC': '',
        'LTC/BTC': '',
        'XRP/BTC': '',
        'NEO/BTC': ''
    })
    url_mock = PropertyMock(return_value={
        'test': "api-public.sandbox.gdax.com",
        'api': 'https://api.gdax.com'
    })
    type(api_mock).urls = url_mock
    mocker.patch('freqtrade.exchange.Exchange._init_ccxt',
                 MagicMock(return_value=api_mock))
    mocker.patch('freqtrade.exchange.Exchange.validate_timeframes',
                 MagicMock())

    exchange = Exchange(default_conf)
    liveurl = exchange._api.urls['api']
    default_conf['exchange']['sandbox'] = True
    exchange.set_sandbox(exchange._api, default_conf['exchange'], 'Logname')
    assert exchange._api.urls['api'] != liveurl