UNPKG

hardhat-scilla-plugin

Version:
31 lines 1.56 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.scillaChaiEventMatcher = void 0; const chai_1 = __importDefault(require("chai")); const chai_subset_1 = __importDefault(require("chai-subset")); const LogsSimplifier_1 = require("./LogsSimplifier"); chai_1.default.use(chai_subset_1.default); const scillaChaiEventMatcher = function (static_chai, _utils) { const Assertion = static_chai.Assertion; Assertion.addMethod("eventLog", function (eventName) { const tx = this._obj; const receipt = tx.getReceipt(); // eslint-disable-next-line @typescript-eslint/no-unused-expressions new Assertion(receipt.event_logs).not.to.be.null; const event_logs = receipt.event_logs; new Assertion(event_logs.map(({ _eventname }) => _eventname)).to.contain(eventName); }); Assertion.addMethod("eventLogWithParams", async function (eventName, ...params) { const tx = this._obj; const receipt = tx.getReceipt(); await new Assertion(this._obj).to.eventLog(eventName); const event_logs = (0, LogsSimplifier_1.simplifyLogs)(receipt.event_logs); const desiredLog = event_logs.filter((log) => log._eventname === eventName); new Assertion(desiredLog[0].params).to.containSubset(params); }); }; exports.scillaChaiEventMatcher = scillaChaiEventMatcher; //# sourceMappingURL=ScillaChaiMatchers.js.map