Ticker.py: parse_asset_id(): unify call signature
This commit is contained in:
parent
c1f42fc25b
commit
3f921d333c
1 changed files with 7 additions and 7 deletions
|
|
@ -233,7 +233,7 @@ class DataSource:
|
|||
return [data] if cfg.btc_only else data
|
||||
|
||||
@staticmethod
|
||||
def parse_asset_id(s, require_label):
|
||||
def parse_asset_id(s, require_label=True):
|
||||
sym, label = (*s.split('-', 1), None)[:2]
|
||||
if require_label and not label:
|
||||
die(1, f'{s!r}: asset label is missing')
|
||||
|
|
@ -314,7 +314,7 @@ class DataSource:
|
|||
return ticker.price
|
||||
|
||||
@staticmethod
|
||||
def parse_asset_id(s, require_label):
|
||||
def parse_asset_id(s, require_label=True):
|
||||
return asset_tuple(
|
||||
symbol = s.upper(),
|
||||
id = s.lower(),
|
||||
|
|
@ -604,7 +604,7 @@ def make_cfg(gcfg_arg):
|
|||
query_tuple = namedtuple('query', ['asset', 'to_asset'])
|
||||
asset_data = namedtuple('asset_data', ['symbol', 'id', 'amount', 'rate', 'rate_asset', 'source'])
|
||||
|
||||
def parse_asset_id(s, require_label=False):
|
||||
def parse_asset_id(s, require_label=True):
|
||||
return src_cls['fi' if re.match(fi_pat, s) else 'cc'].parse_asset_id(s, require_label)
|
||||
|
||||
def get_rows_from_cfg():
|
||||
|
|
@ -634,7 +634,7 @@ def make_cfg(gcfg_arg):
|
|||
ss = s.split(':')
|
||||
assert len(ss) in (1, 2, 3), f'{s}: malformed argument'
|
||||
asset_id, rate, rate_asset = (*ss, None, None)[:3]
|
||||
parsed_id = parse_asset_id(asset_id)
|
||||
parsed_id = parse_asset_id(asset_id, require_label=False)
|
||||
|
||||
return asset_data(
|
||||
symbol = parsed_id.symbol,
|
||||
|
|
@ -644,7 +644,7 @@ def make_cfg(gcfg_arg):
|
|||
None if rate is None else
|
||||
1 / Decimal(rate[:-1]) if rate.lower().endswith('r') else
|
||||
Decimal(rate)),
|
||||
rate_asset = parse_asset_id(rate_asset) if rate_asset else None,
|
||||
rate_asset = parse_asset_id(rate_asset, require_label=False) if rate_asset else None,
|
||||
source = parsed_id.source)
|
||||
|
||||
cl_opt = getattr(gcfg, key)
|
||||
|
|
@ -673,7 +673,7 @@ def make_cfg(gcfg_arg):
|
|||
asset_id:amount[:to_asset_id[:to_amount]]
|
||||
"""
|
||||
def parse_query_asset(asset_id, amount):
|
||||
parsed_id = parse_asset_id(asset_id)
|
||||
parsed_id = parse_asset_id(asset_id, require_label=False)
|
||||
return asset_data(
|
||||
symbol = parsed_id.symbol,
|
||||
id = parsed_id.id,
|
||||
|
|
@ -706,7 +706,7 @@ def make_cfg(gcfg_arg):
|
|||
|
||||
def get_portfolio_assets():
|
||||
if cfg_in.portfolio and gcfg.portfolio:
|
||||
ret = (parse_asset_id(e, require_label=True) for e in cfg_in.portfolio)
|
||||
ret = (parse_asset_id(e) for e in cfg_in.portfolio)
|
||||
return tuple(e for e in ret if (not gcfg.btc) or e.symbol == 'BTC')
|
||||
else:
|
||||
return ()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue