scripts: Set offer min_bid_amount from offer template min_swap_amount value.

This commit is contained in:
tecnovert 2024-06-04 13:45:52 +02:00
parent 80852fd0ea
commit 3e4c3f10cf
4 changed files with 12 additions and 5 deletions

View file

@ -228,6 +228,7 @@ def js_offers(self, url_split, post_string, is_json, sent=False) -> bytes:
'amount_from': ci_from.format_amount(o.amount_from), 'amount_from': ci_from.format_amount(o.amount_from),
'amount_to': ci_to.format_amount((o.amount_from * o.rate) // ci_from.COIN()), 'amount_to': ci_to.format_amount((o.amount_from * o.rate) // ci_from.COIN()),
'rate': ci_to.format_amount(o.rate), 'rate': ci_to.format_amount(o.rate),
'min_bid_amount': ci_from.format_amount(o.min_bid_amount),
} }
if with_extra_info: if with_extra_info:
offer_data['amount_negotiable'] = o.amount_negotiable offer_data['amount_negotiable'] = o.amount_negotiable

View file

@ -115,7 +115,7 @@ def parseOfferFormData(swap_client, form_data, page_data, options={}):
errors.append('Amount From') errors.append('Amount From')
try: try:
if 'amt_bid_min' not in page_data: if have_data_entry(form_data, 'amt_bid_min') is False:
if options.get('add_min_bid_amt', False) is True: if options.get('add_min_bid_amt', False) is True:
parsed_data['amt_bid_min'] = ci_from.chainparams_network()['min_amount'] parsed_data['amt_bid_min'] = ci_from.chainparams_network()['min_amount']
else: else:

View file

@ -1,7 +1,7 @@
#!/usr/bin/env python #!/usr/bin/env python
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright (c) 2023 tecnovert # Copyright (c) 2023-2024 tecnovert
# Distributed under the MIT software license, see the accompanying # Distributed under the MIT software license, see the accompanying
# file LICENSE or http://www.opensource.org/licenses/mit-license.php. # file LICENSE or http://www.opensource.org/licenses/mit-license.php.
@ -323,6 +323,8 @@ def main():
'swap_type': offer_template.get('swap_type', 'adaptor_sig'), 'swap_type': offer_template.get('swap_type', 'adaptor_sig'),
'lockhrs': '24', 'lockhrs': '24',
'automation_strat_id': 1} 'automation_strat_id': 1}
if 'min_swap_amount' in offer_template:
offer_data['amt_bid_min'] = offer_template['min_swap_amount']
if args.debug: if args.debug:
print('offer data {}'.format(offer_data)) print('offer data {}'.format(offer_data))
new_offer = read_json_api('offers/new', offer_data) new_offer = read_json_api('offers/new', offer_data)

View file

@ -1,7 +1,7 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright (c) 2023 tecnovert # Copyright (c) 2023-2024 tecnovert
# Distributed under the MIT software license, see the accompanying # Distributed under the MIT software license, see the accompanying
# file LICENSE or http://www.opensource.org/licenses/mit-license.php. # file LICENSE or http://www.opensource.org/licenses/mit-license.php.
@ -304,7 +304,8 @@ class Test(unittest.TestCase):
'amount_variable': True, 'amount_variable': True,
'address': -1, 'address': -1,
'min_coin_from_amt': 20, 'min_coin_from_amt': 20,
'max_coin_to_amt': -1 'max_coin_to_amt': -1,
'min_swap_amount': 0.11,
}, },
{ {
'name': 'offer example 1_2', 'name': 'offer example 1_2',
@ -316,7 +317,8 @@ class Test(unittest.TestCase):
'amount_variable': True, 'amount_variable': True,
'address': -1, 'address': -1,
'min_coin_from_amt': 21, 'min_coin_from_amt': 21,
'max_coin_to_amt': -1 'max_coin_to_amt': -1,
'min_swap_amount': 0.12,
} }
], ],
} }
@ -330,6 +332,8 @@ class Test(unittest.TestCase):
offers = read_json_api(UI_PORT, 'offers') offers = read_json_api(UI_PORT, 'offers')
assert (len(offers) == 1) assert (len(offers) == 1)
offer_min_bid_amount = float(offers[0]['min_bid_amount'])
assert (offer_min_bid_amount == 0.11 or offer_min_bid_amount == 0.12)
logging.info('Test that an offer is not created while delaying') logging.info('Test that an offer is not created while delaying')
result = subprocess.run(self.node0_args, stdout=subprocess.PIPE) result = subprocess.run(self.node0_args, stdout=subprocess.PIPE)