Fix public ad related LBTC calls and tests
This commit is contained in:
@@ -1,3 +1,6 @@
|
||||
expected_to_update_lbtc = [["1452045", "btc_in_usd*1.1", "BTC", "GBP", False]]
|
||||
|
||||
|
||||
expected_to_update = [
|
||||
[
|
||||
"2caa4afa-a1c7-4683-aa4a-faa1c7a683dc",
|
||||
@@ -224,6 +227,29 @@ cg_prices = {
|
||||
"sek": 1620.26,
|
||||
},
|
||||
}
|
||||
|
||||
fake_public_ads_lbtc = {
|
||||
"GBP": [
|
||||
["1452045", "Harrey", "30800.00", "NATIONAL_BANK", "BTC", "GBP", 0.95],
|
||||
["1359267", "Angelchira", "32201.41", "NATIONAL_BANK", "BTC", "GBP", 1.0],
|
||||
["1434612", "Bittylicious.com-James", "32308.88", "NATIONAL_BANK", "BTC", "GBP", 1.0],
|
||||
["1451964", "tutsidelopez", "32308.88", "NATIONAL_BANK", "BTC", "GBP", 1.0],
|
||||
["1354377", "DeltaTip", "32328.19", "NATIONAL_BANK", "BTC", "GBP", 1.0],
|
||||
["1330431", "starclicks_co", "33603.21", "NATIONAL_BANK", "BTC", "GBP", 1.04],
|
||||
["1431277", "bitotal", "34712.75", "NATIONAL_BANK", "BTC", "GBP", 1.08],
|
||||
["1382819", "Bitcoinmarketprice", "34871.26", "NATIONAL_BANK", "BTC", "GBP", 1.08],
|
||||
["1068826", "JDRbitcoins", "36454.75", "NATIONAL_BANK", "BTC", "GBP", 1.13],
|
||||
["1170564", "mommabear007", "36456.32", "NATIONAL_BANK", "BTC", "GBP", 1.13],
|
||||
["1331232", "ParadoxHD", "36765.39", "NATIONAL_BANK", "BTC", "GBP", 1.14],
|
||||
["1445019", "demoric102", "37090.34", "NATIONAL_BANK", "BTC", "GBP", 1.15],
|
||||
["1379791", "eenitan161", "37850.00", "NATIONAL_BANK", "BTC", "GBP", 1.17],
|
||||
["1435762", "btcladybd", "41202.59", "NATIONAL_BANK", "BTC", "GBP", 1.28],
|
||||
["1445674", "CarloMazzillo", "41202.59", "NATIONAL_BANK", "BTC", "GBP", 1.28],
|
||||
["1428769", "miguelnicotra", "44807.39", "NATIONAL_BANK", "BTC", "GBP", 1.39],
|
||||
["326809", "Ceres", "50710.88", "NATIONAL_BANK", "BTC", "GBP", 1.57],
|
||||
]
|
||||
}
|
||||
|
||||
fake_public_ads = {
|
||||
"AUD": [
|
||||
[
|
||||
|
||||
@@ -3,12 +3,13 @@ from unittest.mock import MagicMock, patch
|
||||
from json import loads
|
||||
from copy import deepcopy
|
||||
|
||||
from tests.common import fake_public_ads, cg_prices, expected_to_update
|
||||
from tests.common import fake_public_ads_lbtc, cg_prices, expected_to_update_lbtc
|
||||
from sources.localbitcoins import LBTC
|
||||
from markets import Markets
|
||||
from money import Money
|
||||
import util
|
||||
import settings
|
||||
import sources
|
||||
|
||||
|
||||
class TestLBTC(TestCase):
|
||||
@@ -25,6 +26,8 @@ class TestLBTC(TestCase):
|
||||
self.markets = Markets()
|
||||
self.lbtc = LBTC()
|
||||
self.money = Money()
|
||||
self.sources = sources.Sources()
|
||||
setattr(self.markets, "sources", self.sources)
|
||||
setattr(self.lbtc, "markets", self.markets)
|
||||
setattr(self.money, "markets", self.markets)
|
||||
setattr(self.lbtc, "money", self.money)
|
||||
@@ -63,7 +66,9 @@ class TestLBTC(TestCase):
|
||||
self.lbtc.markets.get_all_providers.return_value = self.all_providers
|
||||
|
||||
public_ads = self.lbtc.get_all_public_ads()
|
||||
self.assertDictEqual(public_ads, fake_public_ads)
|
||||
print("public_ads", public_ads)
|
||||
# print("fake_public_ads", fake_public_ads)
|
||||
self.assertDictEqual(public_ads, fake_public_ads_lbtc)
|
||||
|
||||
for currency, ads in public_ads.items():
|
||||
ad_ids = [ad[0] for ad in ads]
|
||||
@@ -91,7 +96,7 @@ class TestLBTC(TestCase):
|
||||
def test_update_prices(self):
|
||||
settings.settings.LocalBitcoins.Username = "Harrey"
|
||||
# Override the providers
|
||||
settings.settings.LocalBitcoins.ProviderList = '["REVOLUT", "NATIONAL_BANK"]'
|
||||
settings.settings.LocalBitcoins.ProviderList = '["national-bank-transfer"]'
|
||||
|
||||
# Override enum_public_ads
|
||||
self.lbtc.lbtc._api_call = self.mock_enum_public_ads_api_call
|
||||
@@ -104,10 +109,8 @@ class TestLBTC(TestCase):
|
||||
|
||||
self.lbtc.slow_ad_update = MagicMock()
|
||||
self.lbtc.update_prices()
|
||||
print("CALL ARGS", self.lbtc.slow_ad_update.call_args_list)
|
||||
call_args = self.lbtc.slow_ad_update.call_args_list[0][0][0]
|
||||
print("EXPECTED", expected_to_update)
|
||||
self.assertCountEqual(call_args, expected_to_update)
|
||||
self.assertCountEqual(call_args, expected_to_update_lbtc)
|
||||
|
||||
def test_enum_public_ads(self):
|
||||
# Override enum_public_ads
|
||||
@@ -169,7 +172,7 @@ class TestLBTC(TestCase):
|
||||
|
||||
expected_return = []
|
||||
# Let's manually calculate what it's supposed to look like
|
||||
price_btc = cg_prices["bitcoin"]["usd"]
|
||||
price_btc = cg_prices["bitcoin"]["gbp"]
|
||||
for ad in deepcopy(enum_ads_return):
|
||||
price = float(ad[2])
|
||||
margin = round(price / price_btc, 2)
|
||||
|
||||
Reference in New Issue
Block a user