November 2018
Intermediate to advanced
528 pages
13h 21m
English
As you know, events are very useful for the functioning of DApps. Thus, we need to test whether our contract emits them properly. Here's an example of testing the NewActivePlayerEv event:
it(".. should emit 'NewActivePlayerEv' event when a player joins the game", async function() { let NewActivePlayerEvtListener = Ct.NewActivePlayerEv(); await Ct.join({ from: firstAccount, value:1 * Ether }); let proposalAddedLog = await new Promise((resolve, reject) => NewActivePlayerEvtListener.get((error, log) => error ? reject(error) : resolve(log))); assert.equal(proposalAddedLog.length, 1, " event not emitted"); let eventArgs = proposalAddedLog[0].args; assert.equal(eventArgs._address, firstAccount); let time = await Ct.ping_time.call(firstAccount); ...Read now
Unlock full access