From c835ac1cc4ed45496706acbb6b054440a71dc857 Mon Sep 17 00:00:00 2001 From: Mark Spanbroek Date: Mon, 21 Feb 2022 14:00:59 +0100 Subject: [PATCH] Emit event when offer is selected --- contracts/Marketplace.sol | 3 +++ test/Marketplace.test.js | 6 ++++++ 2 files changed, 9 insertions(+) diff --git a/contracts/Marketplace.sol b/contracts/Marketplace.sol index f8348ac..4f00c1c 100644 --- a/contracts/Marketplace.sol +++ b/contracts/Marketplace.sol @@ -81,6 +81,8 @@ contract Marketplace is Collateral { funds.sent += difference; funds.balance -= difference; token.transfer(request.client, difference); + + emit OfferSelected(id); } struct Request { @@ -108,6 +110,7 @@ contract Marketplace is Collateral { event StorageRequested(bytes32 id, Request request); event StorageOffered(bytes32 id, Offer offer); + event OfferSelected(bytes32 id); modifier marketplaceInvariant() { MarketplaceFunds memory oldFunds = funds; diff --git a/test/Marketplace.test.js b/test/Marketplace.test.js index a95c52c..ed5a41b 100644 --- a/test/Marketplace.test.js +++ b/test/Marketplace.test.js @@ -163,6 +163,12 @@ describe("Marketplace", function () { switchAccount(client) }) + it("emits event when offer is selected", async function () { + await expect(marketplace.selectOffer(offerId(offer))) + .to.emit(marketplace, "OfferSelected") + .withArgs(offerId(offer)) + }) + it("returns price difference to client", async function () { let difference = request.maxPrice - offer.price let before = await token.balanceOf(client.address)