From da693d15a98090098ed86f9979e6e33f5c210642 Mon Sep 17 00:00:00 2001 From: fa2a5qj3 <174058787+fa2a5qj3@users.noreply.github.com> Date: Mon, 15 Jul 2024 19:13:43 -0400 Subject: [PATCH] Test the role field of Trades --- src/HavenoClient.test.ts | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/HavenoClient.test.ts b/src/HavenoClient.test.ts index b016351a..4fe98c77 100644 --- a/src/HavenoClient.test.ts +++ b/src/HavenoClient.test.ts @@ -2217,6 +2217,29 @@ test("Selects arbitrators which are online, registered, and least used", async ( } }); +test("Do all trades contain role property", async () => { + if ((await user1.getTrades()).length === 0) { // ensure there is at least one trade available + await executeTrade({ + price: 150, + offerAmount: HavenoUtils.xmrToAtomicUnits(1.0 + (Math.random() * 1.0)), + offerMinAmount: HavenoUtils.xmrToAtomicUnits(.15), + tradeAmount: HavenoUtils.xmrToAtomicUnits(.92), + reserveExactAmount: true, + testBalanceChangeEndToEnd: false + }); + } + const trades = (await user1.getTrades()).concat(await user2.getTrades()); + HavenoUtils.log(0, "Trades size: " + trades.length); + assert(trades.length > 0); + let anyRolesEmpty = false; + for (const trade of trades) { + const role = trade.getRole(); + HavenoUtils.log(0, "Trade: " + trade.getShortId() + " role: " + role); + if (role.length === 0) anyRolesEmpty = true; + } + assert(!anyRolesEmpty); +}); + // ----------------------------- TEST HELPERS --------------------------------- function getTradeContexts(numConfigs: number): TradeContext[] {