tests: Add non xmr swap failure states to tests.

This commit is contained in:
tecnovert 2022-07-18 22:56:28 +02:00
parent 3ad87df844
commit 2c49d13aa0
No known key found for this signature in database
GPG key ID: 8ED6D8750C4E3F93
5 changed files with 223 additions and 193 deletions

View file

@ -3199,8 +3199,8 @@ class BasicSwap(BaseApp):
if state > BidStates.BID_ACCEPTED:
# Wait for spend of all known swap txns
if (bid.getITxState() is None or bid.getITxState() >= TxStates.TX_REDEEMED) \
and (bid.getPTxState() is None or bid.getPTxState() >= TxStates.TX_REDEEMED):
if (bid.getITxState() is None or bid.getITxState() >= TxStates.TX_REDEEMED) and \
(bid.getPTxState() is None or bid.getPTxState() >= TxStates.TX_REDEEMED):
self.log.info('Swap completed for bid %s', bid_id.hex())
if bid.getITxState() == TxStates.TX_REDEEMED:

View file

@ -1,4 +1,4 @@
<svg version="1.1" id="mscgenjsreplaceme" class="mscgenjsreplaceme" xmlns="http://www.w3.org/2000/svg" width="1272" height="2063.3" style="font-family:Helvetica,sans-serif;font-size:12px;font-weight:400;font-style:normal;text-decoration:none;background-color:#fff;stroke:#000;stroke-width:2">
<svg version="1.1" id="mscgenjsreplaceme" class="mscgenjsreplaceme" xmlns="http://www.w3.org/2000/svg" width="1272" height="2025.3" style="font-family:Helvetica,sans-serif;font-size:12px;font-weight:400;font-style:normal;text-decoration:none;background-color:#fff;stroke:#000;stroke-width:2">
<defs>
<marker orient="auto" id="mscgenjsreplacemecallback-#0000FF" class="arrow-marker" viewBox="0 0 10 10" refX="9" refY="3" markerUnits="strokeWidth" markerWidth="10" markerHeight="10">
<path d="m1 1 8 2-8 2" class="arrow-style" style="stroke-dasharray:100,1;stroke:#00f"/>
@ -35,10 +35,10 @@
</style>
</defs>
<g id="mscgenjsreplaceme_body" transform="translate(51 3)">
<path class="bglayer" style="fill:#fff;stroke:#fff;stroke-width:0" d="M-51-3h1272v2063.3H-51z" id="mscgenjsreplaceme_background"/>
<path class="bglayer" style="fill:#fff;stroke:#fff;stroke-width:0" d="M-51-3h1272v2025.3H-51z" id="mscgenjsreplaceme_background"/>
<g id="mscgenjsreplaceme_arcspans">
<path class="box inline_expression alt" d="M-41 718.06h1044V2038.3H-41z"/>
<path class="box inline_expression alt" d="M-37 1410.18H999v590.12H-37z"/>
<path class="box inline_expression alt" d="M-41 680.06h1044V2000.3H-41z"/>
<path class="box inline_expression alt" d="M-37 1372.18H999v590.12H-37z"/>
</g>
<g id="mscgenjsreplaceme_lifelines">
<path class="arcrow" style="stroke:transparent" d="M65 38v38"/>
@ -93,15 +93,15 @@
<path class="arcrow" style="stroke:#080" d="M273 510v38"/>
<path class="arcrow" style="stroke:red" d="M481 510v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 510v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 510v38M1105 510v38M65 548v38"/>
<path class="arcrow" style="stroke:#080" d="M273 548v38"/>
<path class="arcrow" style="stroke:red" d="M481 548v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 548v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 548v38M1105 548v38M65 586v75.06"/>
<path class="arcrow" style="stroke:#080" d="M273 586v75.06"/>
<path class="arcrow" style="stroke:red" d="M481 586v75.06"/>
<path class="arcrow" style="stroke:#00f" d="M689 586v75.06"/>
<path class="arcrow" style="stroke:transparent" d="M897 586v75.06M1105 586v75.06M65 661.06v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 510v38M1105 510v38M65 548v75.06"/>
<path class="arcrow" style="stroke:#080" d="M273 548v75.06"/>
<path class="arcrow" style="stroke:red" d="M481 548v75.06"/>
<path class="arcrow" style="stroke:#00f" d="M689 548v75.06"/>
<path class="arcrow" style="stroke:transparent" d="M897 548v75.06M1105 548v75.06M65 623.06v38"/>
<path class="arcrow" style="stroke:#080" d="M273 623.06v38"/>
<path class="arcrow" style="stroke:red" d="M481 623.06v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 623.06v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 623.06v38M1105 623.06v38M65 661.06v38"/>
<path class="arcrow" style="stroke:#080" d="M273 661.06v38"/>
<path class="arcrow" style="stroke:red" d="M481 661.06v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 661.06v38"/>
@ -109,23 +109,23 @@
<path class="arcrow" style="stroke:#080" d="M273 699.06v38"/>
<path class="arcrow" style="stroke:red" d="M481 699.06v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 699.06v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 699.06v38M1105 699.06v38M65 737.06v38"/>
<path class="arcrow" style="stroke:#080" d="M273 737.06v38"/>
<path class="arcrow" style="stroke:red" d="M481 737.06v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 737.06v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 737.06v38M1105 737.06v38M65 775.06v75.06"/>
<path class="arcrow" style="stroke:#080" d="M273 775.06v75.06"/>
<path class="arcrow" style="stroke:red" d="M481 775.06v75.06"/>
<path class="arcrow" style="stroke:#00f" d="M689 775.06v75.06"/>
<path class="arcrow" style="stroke:transparent" d="M897 775.06v75.06M1105 775.06v75.06M65 850.12v38"/>
<path class="arcrow" style="stroke:#080" d="M273 850.12v38"/>
<path class="arcrow" style="stroke:red" d="M481 850.12v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 850.12v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 850.12v38M1105 850.12v38M65 888.12v86"/>
<path class="arcrow" style="stroke:#080" d="M273 888.12v86"/>
<path class="arcrow" style="stroke:red" d="M481 888.12v86"/>
<path class="arcrow" style="stroke:#00f" d="M689 888.12v86"/>
<path class="arcrow" style="stroke:transparent" d="M897 888.12v86M1105 888.12v86M65 974.12v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 699.06v38M1105 699.06v38M65 737.06v75.06"/>
<path class="arcrow" style="stroke:#080" d="M273 737.06v75.06"/>
<path class="arcrow" style="stroke:red" d="M481 737.06v75.06"/>
<path class="arcrow" style="stroke:#00f" d="M689 737.06v75.06"/>
<path class="arcrow" style="stroke:transparent" d="M897 737.06v75.06M1105 737.06v75.06M65 812.12v38"/>
<path class="arcrow" style="stroke:#080" d="M273 812.12v38"/>
<path class="arcrow" style="stroke:red" d="M481 812.12v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 812.12v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 812.12v38M1105 812.12v38M65 850.12v86"/>
<path class="arcrow" style="stroke:#080" d="M273 850.12v86"/>
<path class="arcrow" style="stroke:red" d="M481 850.12v86"/>
<path class="arcrow" style="stroke:#00f" d="M689 850.12v86"/>
<path class="arcrow" style="stroke:transparent" d="M897 850.12v86M1105 850.12v86M65 936.12v38"/>
<path class="arcrow" style="stroke:#080" d="M273 936.12v38"/>
<path class="arcrow" style="stroke:red" d="M481 936.12v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 936.12v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 936.12v38M1105 936.12v38M65 974.12v38"/>
<path class="arcrow" style="stroke:#080" d="M273 974.12v38"/>
<path class="arcrow" style="stroke:red" d="M481 974.12v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 974.12v38"/>
@ -145,15 +145,15 @@
<path class="arcrow" style="stroke:#080" d="M273 1126.12v38"/>
<path class="arcrow" style="stroke:red" d="M481 1126.12v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 1126.12v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 1126.12v38M1105 1126.12v38M65 1164.12v38"/>
<path class="arcrow" style="stroke:#080" d="M273 1164.12v38"/>
<path class="arcrow" style="stroke:red" d="M481 1164.12v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 1164.12v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 1164.12v38M1105 1164.12v38M65 1202.12v75.06"/>
<path class="arcrow" style="stroke:#080" d="M273 1202.12v75.06"/>
<path class="arcrow" style="stroke:red" d="M481 1202.12v75.06"/>
<path class="arcrow" style="stroke:#00f" d="M689 1202.12v75.06"/>
<path class="arcrow" style="stroke:transparent" d="M897 1202.12v75.06M1105 1202.12v75.06M65 1277.18v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 1126.12v38M1105 1126.12v38M65 1164.12v75.06"/>
<path class="arcrow" style="stroke:#080" d="M273 1164.12v75.06"/>
<path class="arcrow" style="stroke:red" d="M481 1164.12v75.06"/>
<path class="arcrow" style="stroke:#00f" d="M689 1164.12v75.06"/>
<path class="arcrow" style="stroke:transparent" d="M897 1164.12v75.06M1105 1164.12v75.06M65 1239.18v38"/>
<path class="arcrow" style="stroke:#080" d="M273 1239.18v38"/>
<path class="arcrow" style="stroke:red" d="M481 1239.18v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 1239.18v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 1239.18v38M1105 1239.18v38M65 1277.18v38"/>
<path class="arcrow" style="stroke:#080" d="M273 1277.18v38"/>
<path class="arcrow" style="stroke:red" d="M481 1277.18v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 1277.18v38"/>
@ -169,19 +169,19 @@
<path class="arcrow" style="stroke:#080" d="M273 1391.18v38"/>
<path class="arcrow" style="stroke:red" d="M481 1391.18v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 1391.18v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 1391.18v38M1105 1391.18v38M65 1429.18v38"/>
<path class="arcrow" style="stroke:#080" d="M273 1429.18v38"/>
<path class="arcrow" style="stroke:red" d="M481 1429.18v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 1429.18v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 1429.18v38M1105 1429.18v38M65 1467.18v59.06"/>
<path class="arcrow" style="stroke:#080" d="M273 1467.18v59.06"/>
<path class="arcrow" style="stroke:red" d="M481 1467.18v59.06"/>
<path class="arcrow" style="stroke:#00f" d="M689 1467.18v59.06"/>
<path class="arcrow" style="stroke:transparent" d="M897 1467.18v59.06M1105 1467.18v59.06M65 1526.24v54"/>
<path class="arcrow" style="stroke:#080" d="M273 1526.24v54"/>
<path class="arcrow" style="stroke:red" d="M481 1526.24v54"/>
<path class="arcrow" style="stroke:#00f" d="M689 1526.24v54"/>
<path class="arcrow" style="stroke:transparent" d="M897 1526.24v54M1105 1526.24v54M65 1580.24v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 1391.18v38M1105 1391.18v38M65 1429.18v59.06"/>
<path class="arcrow" style="stroke:#080" d="M273 1429.18v59.06"/>
<path class="arcrow" style="stroke:red" d="M481 1429.18v59.06"/>
<path class="arcrow" style="stroke:#00f" d="M689 1429.18v59.06"/>
<path class="arcrow" style="stroke:transparent" d="M897 1429.18v59.06M1105 1429.18v59.06M65 1488.24v54"/>
<path class="arcrow" style="stroke:#080" d="M273 1488.24v54"/>
<path class="arcrow" style="stroke:red" d="M481 1488.24v54"/>
<path class="arcrow" style="stroke:#00f" d="M689 1488.24v54"/>
<path class="arcrow" style="stroke:transparent" d="M897 1488.24v54M1105 1488.24v54M65 1542.24v38"/>
<path class="arcrow" style="stroke:#080" d="M273 1542.24v38"/>
<path class="arcrow" style="stroke:red" d="M481 1542.24v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 1542.24v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 1542.24v38M1105 1542.24v38M65 1580.24v38"/>
<path class="arcrow" style="stroke:#080" d="M273 1580.24v38"/>
<path class="arcrow" style="stroke:red" d="M481 1580.24v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 1580.24v38"/>
@ -205,15 +205,15 @@
<path class="arcrow" style="stroke:#080" d="M273 1770.24v38"/>
<path class="arcrow" style="stroke:red" d="M481 1770.24v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 1770.24v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 1770.24v38M1105 1770.24v38M65 1808.24v38"/>
<path class="arcrow" style="stroke:#080" d="M273 1808.24v38"/>
<path class="arcrow" style="stroke:red" d="M481 1808.24v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 1808.24v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 1808.24v38M1105 1808.24v38M65 1846.24v59.06"/>
<path class="arcrow" style="stroke:#080" d="M273 1846.24v59.06"/>
<path class="arcrow" style="stroke:red" d="M481 1846.24v59.06"/>
<path class="arcrow" style="stroke:#00f" d="M689 1846.24v59.06"/>
<path class="arcrow" style="stroke:transparent" d="M897 1846.24v59.06M1105 1846.24v59.06M65 1905.3v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 1770.24v38M1105 1770.24v38M65 1808.24v59.06"/>
<path class="arcrow" style="stroke:#080" d="M273 1808.24v59.06"/>
<path class="arcrow" style="stroke:red" d="M481 1808.24v59.06"/>
<path class="arcrow" style="stroke:#00f" d="M689 1808.24v59.06"/>
<path class="arcrow" style="stroke:transparent" d="M897 1808.24v59.06M1105 1808.24v59.06M65 1867.3v38"/>
<path class="arcrow" style="stroke:#080" d="M273 1867.3v38"/>
<path class="arcrow" style="stroke:red" d="M481 1867.3v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 1867.3v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 1867.3v38M1105 1867.3v38M65 1905.3v38"/>
<path class="arcrow" style="stroke:#080" d="M273 1905.3v38"/>
<path class="arcrow" style="stroke:red" d="M481 1905.3v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 1905.3v38"/>
@ -225,11 +225,7 @@
<path class="arcrow" style="stroke:#080" d="M273 1981.3v38"/>
<path class="arcrow" style="stroke:red" d="M481 1981.3v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 1981.3v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 1981.3v38M1105 1981.3v38M65 2019.3v38"/>
<path class="arcrow" style="stroke:#080" d="M273 2019.3v38"/>
<path class="arcrow" style="stroke:red" d="M481 2019.3v38"/>
<path class="arcrow" style="stroke:#00f" d="M689 2019.3v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 2019.3v38M1105 2019.3v38"/>
<path class="arcrow" style="stroke:transparent" d="M897 1981.3v38M1105 1981.3v38"/>
</g>
<g id="mscgenjsreplaceme_sequence">
<path class="entity" style="stroke:transparent" d="M0 0h130v38H0z"/>
@ -265,83 +261,83 @@
<path class="arc directional callback" style="stroke:red" marker-end="url(#mscgenjsreplacemecallback-#FF0000)" d="M481 529H273"/>
<path class="label-text-background" d="M311.64 513.25h130.72v14H311.64z"/>
<text x="377" y="524.25" class="directional-text callback-text"><tspan>Sends script-coin-lock-tx</tspan></text>
<path d="M689 615.93c104 .1 104 22.8 0 22.8" class="arc directional method" style="stroke:#00f" marker-end="url(#mscgenjsreplacememethod-#0000FF)"/>
<path class="label-text-background" d="M692 567.67h40.91v14.02H692z"/>
<text x="692" y="578.68" class="directional-text method-text anchor-start"><tspan>Wait for</tspan></text>
<path class="label-text-background" d="M692 583.67h107.02v14.02H692z"/>
<text x="692" y="594.68" class="directional-text method-text anchor-start"><tspan>script-coin-lock-tx to</tspan></text>
<path class="label-text-background" d="M692 599.67h39.34v14.02H692z"/>
<text x="692" y="610.68" class="directional-text method-text anchor-start"><tspan>confirm</tspan></text>
<path class="arc directional callback" style="stroke:#00f" marker-end="url(#mscgenjsreplacemecallback-#0000FF)" d="M689 756.06H273"/>
<path class="label-text-background" d="M408.97 740.3h144.06v14.02H408.97z"/>
<text x="481" y="751.31" class="directional-text callback-text"><tspan>Sends noscript-coin-lock-tx</tspan></text>
<path d="M689 804.99c104 .1 104 22.8 0 22.8" class="arc directional method" style="stroke:#00f" marker-end="url(#mscgenjsreplacememethod-#0000FF)"/>
<path class="label-text-background" d="M692 756.73h40.91v14.02H692z"/>
<text x="692" y="767.74" class="directional-text method-text anchor-start"><tspan>Wait for</tspan></text>
<path class="label-text-background" d="M692 772.73h120.38v14.02H692z"/>
<text x="692" y="783.74" class="directional-text method-text anchor-start"><tspan>noscript-coin-lock-tx to</tspan></text>
<path class="label-text-background" d="M692 788.73h39.34v14.02H692z"/>
<text x="692" y="799.74" class="directional-text method-text anchor-start"><tspan>confirm</tspan></text>
<path d="M481 804.99c104 .1 104 22.8 0 22.8" class="arc directional method" style="stroke:red" marker-end="url(#mscgenjsreplacememethod-#FF0000)"/>
<path class="label-text-background" d="M484 756.73h40.91v14.02H484z"/>
<text x="484" y="767.74" class="directional-text method-text anchor-start"><tspan>Wait for</tspan></text>
<path class="label-text-background" d="M484 772.73h120.38v14.02H484z"/>
<text x="484" y="783.74" class="directional-text method-text anchor-start"><tspan>noscript-coin-lock-tx to</tspan></text>
<path class="label-text-background" d="M484 788.73h39.34v14.02H484z"/>
<text x="484" y="799.74" class="directional-text method-text anchor-start"><tspan>confirm</tspan></text>
<path class="arc directional method" style="stroke:red" marker-end="url(#mscgenjsreplacememethod-#FF0000)" d="M481 931.12h208"/>
<path class="label-text-background" d="M519.64 915.36h130.72v14.02H519.64z"/>
<text x="585" y="926.37" class="directional-text method-text"><tspan>Sends script-coin-lock-tx</tspan></text>
<path class="label-text-background" d="M539.3 933.36h91.73v14.02H539.3z"/>
<text x="585" y="944.37" class="directional-text method-text"><tspan>release message</tspan></text>
<path class="arc directional callback" style="stroke:#00f" marker-end="url(#mscgenjsreplacemecallback-#0000FF)" d="M689 1031.12H273"/>
<path class="label-text-background" d="M397.3 1015.36h167.41v14.02H397.3z"/>
<text x="481" y="1026.37" class="directional-text callback-text"><tspan>Sends script-coin-lock-spend-tx</tspan></text>
<path class="inline_expression_divider" d="M-41 1145.12h1044"/>
<path class="label-text-background" d="M459.98 1137.86h42.03v14.02h-42.03z"/>
<text x="481" y="1148.87" class="empty-text comment-row-text"><tspan>fail path</tspan></text>
<path d="M689 1232.05c104 .1 104 22.8 0 22.8" class="arc directional method" style="stroke:#00f" marker-end="url(#mscgenjsreplacememethod-#0000FF)"/>
<path class="label-text-background" d="M692 1183.8h40.91v14.02H692z"/>
<text x="692" y="1194.8" class="directional-text method-text anchor-start"><tspan>Wait for</tspan></text>
<path class="label-text-background" d="M692 1199.8h131.69v14.02H692z"/>
<text x="692" y="1210.8" class="directional-text method-text anchor-start"><tspan>script-coin-lock-tx lock to</tspan></text>
<path class="label-text-background" d="M692 1215.8h33.02v14.02H692z"/>
<text x="692" y="1226.8" class="directional-text method-text anchor-start"><tspan>expire</tspan></text>
<path class="arc directional callback" style="stroke:red" marker-end="url(#mscgenjsreplacemecallback-#FF0000)" d="M481 1296.18H273"/>
<path class="label-text-background" d="M359.98 1280.42h34.03v14.02h-34.03z"/>
<text x="377" y="1291.43" class="directional-text callback-text"><tspan>Sends</tspan></text>
<path class="label-text-background" d="M300.64 1298.42h152.72v14.02H300.64z"/>
<text x="377" y="1309.43" class="directional-text callback-text"><tspan>script-coin-lock-pre-refund-tx</tspan></text>
<path class="arc directional return" style="stroke:#080" marker-end="url(#mscgenjsreplacemecallback-#008800)" d="M273 1334.18h208"/>
<path class="label-text-background" d="M300.64 1318.42h152.72v14.02H300.64z"/>
<text x="377" y="1329.43" class="directional-text return-text"><tspan>script-coin-lock-pre-refund-tx</tspan></text>
<path d="M481 1489.11c104 .1 104 22.8 0 22.8" class="arc directional method" style="stroke:red" marker-end="url(#mscgenjsreplacememethod-#FF0000)"/>
<path class="label-text-background" d="M484 1456.86h40.91v14.02H484z"/>
<text x="484" y="1467.86" class="directional-text method-text anchor-start"><tspan>Wait for</tspan></text>
<path class="label-text-background" d="M484 1472.86h124.06v14.02H484z"/>
<text x="484" y="1483.86" class="directional-text method-text anchor-start"><tspan>pre-refund tx to confirm</tspan></text>
<path class="arc directional callback" style="stroke:red" marker-end="url(#mscgenjsreplacemecallback-#FF0000)" d="M481 1553.24H273"/>
<path class="label-text-background" d="M359.98 1537.48h34.03v14.02h-34.03z"/>
<text x="377" y="1548.49" class="directional-text callback-text"><tspan>Sends</tspan></text>
<path class="label-text-background" d="M282.3 1555.48h189.41v14.02H282.3z"/>
<text x="377" y="1566.49" class="directional-text callback-text"><tspan>script-coin-lock-pre-refund-spend-tx</tspan></text>
<path class="arc directional return" style="stroke:#080" marker-end="url(#mscgenjsreplacemecallback-#008800)" d="M273 1637.24h416"/>
<path class="label-text-background" d="M364.28 1621.48h233.44v14.02H364.28z"/>
<text x="481" y="1632.49" class="directional-text return-text"><tspan>Detects script-coin-lock-pre-refund-spend-tx</tspan></text>
<path class="arc directional callback" style="stroke:#00f" marker-end="url(#mscgenjsreplacemecallback-#0000FF)" d="M689 1675.24H273"/>
<path class="label-text-background" d="M382.97 1659.48h196.06v14.02H382.97z"/>
<text x="481" y="1670.49" class="directional-text callback-text"><tspan>Sends scriptless-coin-lock-recover-tx</tspan></text>
<path class="inline_expression_divider" d="M-37 1789.24H999"/>
<path class="label-text-background" d="M396.95 1781.98h168.09V1796H396.95z"/>
<text x="481" y="1792.99" class="empty-text comment-row-text"><tspan>bidder swipes script coin lock tx</tspan></text>
<path d="M689 1868.17c104 .1 104 22.8 0 22.8" class="arc directional method" style="stroke:#00f" marker-end="url(#mscgenjsreplacememethod-#0000FF)"/>
<path class="label-text-background" d="M692 1835.91h40.91v14.02H692z"/>
<text x="692" y="1846.92" class="directional-text method-text anchor-start"><tspan>Wait for</tspan></text>
<path class="label-text-background" d="M692 1851.91h142.41v14.02H692z"/>
<text x="692" y="1862.92" class="directional-text method-text anchor-start"><tspan>pre-refund tx lock to expire</tspan></text>
<path class="arc directional callback" style="stroke:#00f" marker-end="url(#mscgenjsreplacemecallback-#0000FF)" d="M689 1924.3H273"/>
<path class="label-text-background" d="M368.63 1908.55h224.75v14.02H368.63z"/>
<text x="481" y="1919.55" class="directional-text callback-text"><tspan>Sends script-coin-lock-pre-refund-swipe-tx</tspan></text>
<path d="M689 577.93c104 .1 104 22.8 0 22.8" class="arc directional method" style="stroke:#00f" marker-end="url(#mscgenjsreplacememethod-#0000FF)"/>
<path class="label-text-background" d="M692 529.67h40.91v14.02H692z"/>
<text x="692" y="540.68" class="directional-text method-text anchor-start"><tspan>Wait for</tspan></text>
<path class="label-text-background" d="M692 545.67h107.02v14.02H692z"/>
<text x="692" y="556.68" class="directional-text method-text anchor-start"><tspan>script-coin-lock-tx to</tspan></text>
<path class="label-text-background" d="M692 561.67h39.34v14.02H692z"/>
<text x="692" y="572.68" class="directional-text method-text anchor-start"><tspan>confirm</tspan></text>
<path class="arc directional callback" style="stroke:#00f" marker-end="url(#mscgenjsreplacemecallback-#0000FF)" d="M689 718.06H273"/>
<path class="label-text-background" d="M408.97 702.3h144.06v14.02H408.97z"/>
<text x="481" y="713.31" class="directional-text callback-text"><tspan>Sends noscript-coin-lock-tx</tspan></text>
<path d="M689 766.99c104 .1 104 22.8 0 22.8" class="arc directional method" style="stroke:#00f" marker-end="url(#mscgenjsreplacememethod-#0000FF)"/>
<path class="label-text-background" d="M692 718.73h40.91v14.02H692z"/>
<text x="692" y="729.74" class="directional-text method-text anchor-start"><tspan>Wait for</tspan></text>
<path class="label-text-background" d="M692 734.73h120.38v14.02H692z"/>
<text x="692" y="745.74" class="directional-text method-text anchor-start"><tspan>noscript-coin-lock-tx to</tspan></text>
<path class="label-text-background" d="M692 750.73h39.34v14.02H692z"/>
<text x="692" y="761.74" class="directional-text method-text anchor-start"><tspan>confirm</tspan></text>
<path d="M481 766.99c104 .1 104 22.8 0 22.8" class="arc directional method" style="stroke:red" marker-end="url(#mscgenjsreplacememethod-#FF0000)"/>
<path class="label-text-background" d="M484 718.73h40.91v14.02H484z"/>
<text x="484" y="729.74" class="directional-text method-text anchor-start"><tspan>Wait for</tspan></text>
<path class="label-text-background" d="M484 734.73h120.38v14.02H484z"/>
<text x="484" y="745.74" class="directional-text method-text anchor-start"><tspan>noscript-coin-lock-tx to</tspan></text>
<path class="label-text-background" d="M484 750.73h39.34v14.02H484z"/>
<text x="484" y="761.74" class="directional-text method-text anchor-start"><tspan>confirm</tspan></text>
<path class="arc directional method" style="stroke:red" marker-end="url(#mscgenjsreplacememethod-#FF0000)" d="M481 893.12h208"/>
<path class="label-text-background" d="M519.64 877.36h130.72v14.02H519.64z"/>
<text x="585" y="888.37" class="directional-text method-text"><tspan>Sends script-coin-lock-tx</tspan></text>
<path class="label-text-background" d="M539.3 895.36h91.73v14.02H539.3z"/>
<text x="585" y="906.37" class="directional-text method-text"><tspan>release message</tspan></text>
<path class="arc directional callback" style="stroke:#00f" marker-end="url(#mscgenjsreplacemecallback-#0000FF)" d="M689 993.12H273"/>
<path class="label-text-background" d="M397.3 977.36h167.41v14.02H397.3z"/>
<text x="481" y="988.37" class="directional-text callback-text"><tspan>Sends script-coin-lock-spend-tx</tspan></text>
<path class="inline_expression_divider" d="M-41 1107.12h1044"/>
<path class="label-text-background" d="M459.98 1099.86h42.03v14.02h-42.03z"/>
<text x="481" y="1110.87" class="empty-text comment-row-text"><tspan>fail path</tspan></text>
<path d="M689 1194.05c104 .1 104 22.8 0 22.8" class="arc directional method" style="stroke:#00f" marker-end="url(#mscgenjsreplacememethod-#0000FF)"/>
<path class="label-text-background" d="M692 1145.8h40.91v14.02H692z"/>
<text x="692" y="1156.8" class="directional-text method-text anchor-start"><tspan>Wait for</tspan></text>
<path class="label-text-background" d="M692 1161.8h131.69v14.02H692z"/>
<text x="692" y="1172.8" class="directional-text method-text anchor-start"><tspan>script-coin-lock-tx lock to</tspan></text>
<path class="label-text-background" d="M692 1177.8h33.02v14.02H692z"/>
<text x="692" y="1188.8" class="directional-text method-text anchor-start"><tspan>expire</tspan></text>
<path class="arc directional callback" style="stroke:red" marker-end="url(#mscgenjsreplacemecallback-#FF0000)" d="M481 1258.18H273"/>
<path class="label-text-background" d="M359.98 1242.42h34.03v14.02h-34.03z"/>
<text x="377" y="1253.43" class="directional-text callback-text"><tspan>Sends</tspan></text>
<path class="label-text-background" d="M300.64 1260.42h152.72v14.02H300.64z"/>
<text x="377" y="1271.43" class="directional-text callback-text"><tspan>script-coin-lock-pre-refund-tx</tspan></text>
<path class="arc directional return" style="stroke:#080" marker-end="url(#mscgenjsreplacemecallback-#008800)" d="M273 1296.18h208"/>
<path class="label-text-background" d="M300.64 1280.42h152.72v14.02H300.64z"/>
<text x="377" y="1291.43" class="directional-text return-text"><tspan>script-coin-lock-pre-refund-tx</tspan></text>
<path d="M481 1451.11c104 .1 104 22.8 0 22.8" class="arc directional method" style="stroke:red" marker-end="url(#mscgenjsreplacememethod-#FF0000)"/>
<path class="label-text-background" d="M484 1418.86h40.91v14.02H484z"/>
<text x="484" y="1429.86" class="directional-text method-text anchor-start"><tspan>Wait for</tspan></text>
<path class="label-text-background" d="M484 1434.86h124.06v14.02H484z"/>
<text x="484" y="1445.86" class="directional-text method-text anchor-start"><tspan>pre-refund tx to confirm</tspan></text>
<path class="arc directional callback" style="stroke:red" marker-end="url(#mscgenjsreplacemecallback-#FF0000)" d="M481 1515.24H273"/>
<path class="label-text-background" d="M359.98 1499.48h34.03v14.02h-34.03z"/>
<text x="377" y="1510.49" class="directional-text callback-text"><tspan>Sends</tspan></text>
<path class="label-text-background" d="M282.3 1517.48h189.41v14.02H282.3z"/>
<text x="377" y="1528.49" class="directional-text callback-text"><tspan>script-coin-lock-pre-refund-spend-tx</tspan></text>
<path class="arc directional return" style="stroke:#080" marker-end="url(#mscgenjsreplacemecallback-#008800)" d="M273 1599.24h416"/>
<path class="label-text-background" d="M364.28 1583.48h233.44v14.02H364.28z"/>
<text x="481" y="1594.49" class="directional-text return-text"><tspan>Detects script-coin-lock-pre-refund-spend-tx</tspan></text>
<path class="arc directional callback" style="stroke:#00f" marker-end="url(#mscgenjsreplacemecallback-#0000FF)" d="M689 1637.24H273"/>
<path class="label-text-background" d="M382.97 1621.48h196.06v14.02H382.97z"/>
<text x="481" y="1632.49" class="directional-text callback-text"><tspan>Sends scriptless-coin-lock-recover-tx</tspan></text>
<path class="inline_expression_divider" d="M-37 1751.24H999"/>
<path class="label-text-background" d="M396.95 1743.98h168.09V1758H396.95z"/>
<text x="481" y="1754.99" class="empty-text comment-row-text"><tspan>bidder swipes script coin lock tx</tspan></text>
<path d="M689 1830.17c104 .1 104 22.8 0 22.8" class="arc directional method" style="stroke:#00f" marker-end="url(#mscgenjsreplacememethod-#0000FF)"/>
<path class="label-text-background" d="M692 1797.91h40.91v14.02H692z"/>
<text x="692" y="1808.92" class="directional-text method-text anchor-start"><tspan>Wait for</tspan></text>
<path class="label-text-background" d="M692 1813.91h142.41v14.02H692z"/>
<text x="692" y="1824.92" class="directional-text method-text anchor-start"><tspan>pre-refund tx lock to expire</tspan></text>
<path class="arc directional callback" style="stroke:#00f" marker-end="url(#mscgenjsreplacemecallback-#0000FF)" d="M689 1886.3H273"/>
<path class="label-text-background" d="M368.63 1870.55h224.75v14.02H368.63z"/>
<text x="481" y="1881.55" class="directional-text callback-text"><tspan>Sends script-coin-lock-pre-refund-swipe-tx</tspan></text>
</g>
<g id="mscgenjsreplaceme_notes">
<path d="m591 209 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
@ -367,48 +363,45 @@
<text x="1001" y="502.75" class="box-text note-text"><tspan>the offerer&apos;s signature for it.</tspan></text>
<path d="m591 529 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="532.75" class="box-text abox-text"><tspan>Bid Script coin spend tx valid</tspan></text>
<path d="m591 567 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="562.75" class="box-text abox-text"><tspan>Exchanged script lock spend tx</tspan></text>
<text x="689" y="578.75" class="box-text abox-text"><tspan>msg</tspan></text>
<path d="m591 680.06 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="683.81" class="box-text abox-text"><tspan>Bid Script coin locked</tspan></text>
<path d="M-40 718.06h98.39v11.02l-7 7H-40" class="box inline_expression_label"/>
<text x="-38" y="731.31" class="inline_expression-text alt-text anchor-start"><tspan>alt: success path</tspan></text>
<path d="m591 869.12 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="872.87" class="box-text abox-text"><tspan>Bid Scriptless coin locked</tspan></text>
<path d="M799 890.11h395v9h9m-9-9 9 9v73.02H799v-82.02z" class="box note" style="fill:#ffc"/>
<text x="1001" y="902.87" class="box-text note-text"><tspan>The XmrBidLockReleaseMessage contains the offerer&apos;s OTVES for it. </tspan></text>
<text x="1001" y="918.87" class="box-text note-text"><tspan> The bidder decodes the offerer&apos;s signature</tspan></text>
<text x="1001" y="934.87" class="box-text note-text"><tspan>from the OTVES. When the offerer has the</tspan></text>
<text x="1001" y="950.87" class="box-text note-text"><tspan>plaintext signature, they can decode the bidder&apos;s noscript-coin-lock-tx</tspan></text>
<text x="1001" y="966.87" class="box-text note-text"><tspan>signature.</tspan></text>
<path d="m591 993.12 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="996.87" class="box-text abox-text"><tspan>Script coin lock released</tspan></text>
<path d="m591 642.06 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="645.81" class="box-text abox-text"><tspan>Bid Script coin locked</tspan></text>
<path d="M-40 680.06h98.39v11.02l-7 7H-40" class="box inline_expression_label"/>
<text x="-38" y="693.31" class="inline_expression-text alt-text anchor-start"><tspan>alt: success path</tspan></text>
<path d="m591 831.12 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="834.87" class="box-text abox-text"><tspan>Bid Scriptless coin locked</tspan></text>
<path d="M799 852.11h395v9h9m-9-9 9 9v73.02H799v-82.02z" class="box note" style="fill:#ffc"/>
<text x="1001" y="864.87" class="box-text note-text"><tspan>The XmrBidLockReleaseMessage contains the offerer&apos;s OTVES for it. </tspan></text>
<text x="1001" y="880.87" class="box-text note-text"><tspan> The bidder decodes the offerer&apos;s signature</tspan></text>
<text x="1001" y="896.87" class="box-text note-text"><tspan>from the OTVES. When the offerer has the</tspan></text>
<text x="1001" y="912.87" class="box-text note-text"><tspan>plaintext signature, they can decode the bidder&apos;s noscript-coin-lock-tx</tspan></text>
<text x="1001" y="928.87" class="box-text note-text"><tspan>signature.</tspan></text>
<path d="m591 955.12 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="958.87" class="box-text abox-text"><tspan>Script coin lock released</tspan></text>
<path d="m591 1031.12 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="1034.87" class="box-text abox-text"><tspan>Script tx redeemed</tspan></text>
<path d="m591 1069.12 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="1072.87" class="box-text abox-text"><tspan>Script tx redeemed</tspan></text>
<path d="m591 1107.12 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="1110.87" class="box-text abox-text"><tspan>Bid Completed</tspan></text>
<path d="M799 1279.18h395v9h9m-9-9 9 9v25H799v-34z" class="box note" style="fill:#ffc"/>
<text x="1001" y="1299.93" class="box-text note-text"><tspan>tx can be sent by either party.</tspan></text>
<path d="m591 1372.18 3-17.01h190l3 17.01-3 17.01H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="1367.93" class="box-text abox-text"><tspan>Bid Script pre-refund tx in</tspan></text>
<text x="689" y="1383.93" class="box-text abox-text"><tspan>chain</tspan></text>
<path d="M-36 1410.18h200.86v11.02l-7 7H-36" class="box inline_expression_label"/>
<text x="-34" y="1423.43" class="inline_expression-text alt-text anchor-start"><tspan>alt: offerer refunds script coin lock tx</tspan></text>
<path d="M799 1528.23h395v9h9m-9-9 9 9v41.02H799v-50.02z" class="box note" style="fill:#ffc"/>
<text x="1001" y="1540.99" class="box-text note-text"><tspan>Refunds the script lock tx, with the offerer&apos;s cleartext signature</tspan></text>
<text x="1001" y="1556.99" class="box-text note-text"><tspan>the bidder can refund the noscript lock tx. </tspan></text>
<text x="1001" y="1572.99" class="box-text note-text"><tspan>Once the lock expires the pre-refund tx can be spent by the bidder.</tspan></text>
<path d="m383 1599.24 3-17h190l3 17-3 17H386z" class="box abox" style="stroke:red"/>
<text x="481" y="1602.99" class="box-text abox-text"><tspan>Bid Failed, refunded</tspan></text>
<path d="M799 1620.24h395v9h9m-9-9 9 9v25H799v-34z" class="box note" style="fill:#ffc"/>
<text x="1001" y="1640.99" class="box-text note-text"><tspan>Bidder recovers the offerer&apos;s scriptless chain key-shard.</tspan></text>
<text x="689" y="1072.87" class="box-text abox-text"><tspan>Bid Completed</tspan></text>
<path d="M799 1241.18h395v9h9m-9-9 9 9v25H799v-34z" class="box note" style="fill:#ffc"/>
<text x="1001" y="1261.93" class="box-text note-text"><tspan>tx can be sent by either party.</tspan></text>
<path d="m591 1334.18 3-17.01h190l3 17.01-3 17.01H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="1329.93" class="box-text abox-text"><tspan>Bid Script pre-refund tx in</tspan></text>
<text x="689" y="1345.93" class="box-text abox-text"><tspan>chain</tspan></text>
<path d="M-36 1372.18h200.86v11.02l-7 7H-36" class="box inline_expression_label"/>
<text x="-34" y="1385.43" class="inline_expression-text alt-text anchor-start"><tspan>alt: offerer refunds script coin lock tx</tspan></text>
<path d="M799 1490.23h395v9h9m-9-9 9 9v41.02H799v-50.02z" class="box note" style="fill:#ffc"/>
<text x="1001" y="1502.99" class="box-text note-text"><tspan>Refunds the script lock tx, with the offerer&apos;s cleartext signature</tspan></text>
<text x="1001" y="1518.99" class="box-text note-text"><tspan>the bidder can refund the noscript lock tx. </tspan></text>
<text x="1001" y="1534.99" class="box-text note-text"><tspan>Once the lock expires the pre-refund tx can be spent by the bidder.</tspan></text>
<path d="m383 1561.24 3-17h190l3 17-3 17H386z" class="box abox" style="stroke:red"/>
<text x="481" y="1564.99" class="box-text abox-text"><tspan>Bid Failed, refunded</tspan></text>
<path d="M799 1582.24h395v9h9m-9-9 9 9v25H799v-34z" class="box note" style="fill:#ffc"/>
<text x="1001" y="1602.99" class="box-text note-text"><tspan>Bidder recovers the offerer&apos;s scriptless chain key-shard.</tspan></text>
<path d="m591 1675.24 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="1678.99" class="box-text abox-text"><tspan>Bid Scriptless tx recovered</tspan></text>
<path d="m591 1713.24 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="1716.99" class="box-text abox-text"><tspan>Bid Scriptless tx recovered</tspan></text>
<path d="m591 1751.24 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="1754.99" class="box-text abox-text"><tspan>Bid Failed, refunded</tspan></text>
<path d="m591 1962.3 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="1966.05" class="box-text abox-text"><tspan>Bid Failed, swiped</tspan></text>
<text x="689" y="1716.99" class="box-text abox-text"><tspan>Bid Failed, refunded</tspan></text>
<path d="m591 1924.3 3-17h190l3 17-3 17H594z" class="box abox" style="stroke:#00f"/>
<text x="689" y="1928.05" class="box-text abox-text"><tspan>Bid Failed, swiped</tspan></text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View file

@ -39,11 +39,11 @@ xu {
B => B [label="Wait for PTX to confirm"], O => O [label="Wait for PTX to confirm"];
B abox B [label="PTX Confirmed", textbgcolor="#f1db4b"];
B abox B [label="Bid Participating"];
O =>> N [label="Sends Participate Redeem Tx"],
C note C2
[label="Reveals secret_value",
textbgcolor="#FFFFCC"];
CB alt C [label="success path"] {
O =>> N [label="Sends Participate Redeem Tx"],
C note C2
[label="Reveals secret_value",
textbgcolor="#FFFFCC"];
N >> B [label="Detects Participate Redeem Tx"];
B abox B [label="PTX Redeemed", textbgcolor="#f1db4b"];
B =>> N [label="Sends Initiate Redeem Tx"];
@ -51,10 +51,17 @@ xu {
B abox B [label="ITX Redeemed", textbgcolor="#4bdbf1"];
B abox B [label="Bid Completed"];
--- [label="fail path"];
CB alt C [label="offerer may reclaim ITX"] {
O => O [label="Wait for ITX locktime to expire"];
O =>> N [label="ITX Refund Tx"];
N >> B [label="Detects Initiate Tx refund Tx"];
B abox B [label="ITX Refunded", textbgcolor="#4bdbf1"];
};
B => B [label="Wait for PTX locktime to expire"];
B =>> N [label="PTX Refund Tx"];
B => B [label="Wait for PTX Refund to confirm"];
B abox B [label="PTX Refunded", textbgcolor="#f1db4b"];
B abox B [label="Bid Completed"];
};
}

View file

@ -363,15 +363,19 @@ def extract_states_from_xu_file(file_path):
return states
def compare_bid_states(states, expect_states):
def compare_bid_states(states, expect_states, exact_match=True):
for i in range(len(states) - 1, -1, -1):
if states[i][1] == 'Bid Delaying':
del states[i]
assert(len(states) == len(expect_states))
if exact_match:
assert(len(states) == len(expect_states))
else:
assert(len(states) >= len(expect_states))
for i, s in enumerate(states):
for i in range(len(expect_states)):
s = states[i]
if s[1] != expect_states[i]:
if 'Bid ' + expect_states[i] == s[1]:
logging.warning(f'Expected state {expect_states[i]} not an exact match to {s[1]}.')

View file

@ -228,6 +228,14 @@ class Test(BaseTest):
assert(js_0['num_swapping'] == 0 and js_0['num_watched_outputs'] == 0)
assert(js_1['num_swapping'] == 0 and js_1['num_watched_outputs'] == 0)
bid_id_hex = bid_id.hex()
path = f'bids/{bid_id_hex}/states'
offerer_states = read_json_api(1800, path)
bidder_states = read_json_api(1801, path)
assert(compare_bid_states(offerer_states, self.states_offerer[1]) is True)
assert(bidder_states[-1][1] == 'Bid Abandoned')
def test_06_self_bid(self):
logging.info('---------- Test same client, BTC to LTC')
swap_clients = self.swap_clients
@ -329,6 +337,14 @@ class Test(BaseTest):
assert(js_0['num_swapping'] == 0 and js_0['num_watched_outputs'] == 0)
assert(js_1['num_swapping'] == 0 and js_1['num_watched_outputs'] == 0)
bid_id_hex = bid_id.hex()
path = f'bids/{bid_id_hex}/states'
offerer_states = read_json_api(1800, path)
bidder_states = read_json_api(1801, path)
assert(compare_bid_states(offerer_states, self.states_offerer[1]) is True)
assert(compare_bid_states(bidder_states, self.states_bidder[1]) is True)
'''
def test_11_refund(self):
# Seller submits initiate txn, buyer doesn't respond, repeat of test 5 using debug_ind
@ -389,7 +405,7 @@ class Test(BaseTest):
swap_value = make_int(random.uniform(2.0, 20.0), scale=8, r=1)
logging.info('swap_value {}'.format(format_amount(swap_value, 8)))
offer_id = swap_clients[0].postOffer(Coins.LTC, Coins.BTC, swap_value, 0.5 * COIN, swap_value, SwapTypes.SELLER_FIRST,
TxLockTypes.SEQUENCE_LOCK_BLOCKS, 10)
TxLockTypes.SEQUENCE_LOCK_BLOCKS, 16)
wait_for_offer(test_delay_event, swap_clients[1], offer_id)
offer = swap_clients[1].getOffer(offer_id)
@ -425,6 +441,16 @@ class Test(BaseTest):
assert(node1_btc_after < node1_btc_before - btc_swap_value)
assert(node1_ltc_before == node1_ltc_after)
wait_for_bid(test_delay_event, swap_clients[0], bid_id, BidStates.SWAP_COMPLETED, wait_for=60)
bid_id_hex = bid_id.hex()
path = f'bids/{bid_id_hex}/states'
offerer_states = read_json_api(1800, path)
bidder_states = read_json_api(1801, path)
assert(compare_bid_states(offerer_states, self.states_offerer[2]) is True)
assert(compare_bid_states(bidder_states, self.states_bidder[2], exact_match=False) is True)
def pass_99_delay(self):
logging.info('Delay')
for i in range(60 * 10):