testi za sol
unknown
javascript
2 years ago
2.0 kB
8
Indexable
const assert = require("assert"); // Import the 'assert' module for making assertions in the test const truffleAssert = require("truffle-assertions"); // Import the 'truffle-assertions' module for making event-related assertions const MySmartContract = artifacts.require("MySmartContract"); // Import the compiled smart contract artifact contract("MySmartContract", accounts => { // Define the test suite for the smart contract let contractInstance; // Declare a variable to store the instance of the contract beforeEach(async () => { // This function runs before each test contractInstance = await MySmartContract.new(); // Create a new instance of the contract }); it("should set the value correctly", async () => { // Define the first test await contractInstance.set(5, { from: accounts[0] }); // Call the 'set' function with the value of 5 const result = await contractInstance.get(); // Call the 'get' function to retrieve the value assert.equal(result.toNumber(), 5, "The value was not set correctly"); // Use 'assert.equal' to check that the returned value is equal to 5 }); it("should emit an event when the value is set", async () => { // Define the second test const transaction = await contractInstance.set(5, { from: accounts[0] }); // Call the 'set' function with the value of 5 truffleAssert.eventEmitted(transaction, "ValueSet", event => { // Use 'truffleAssert.eventEmitted' to check if the 'ValueSet' event is emitted return event.newValue.toNumber() === 5; // Check that the 'newValue' property of the event is equal to 5 }); }); });
Editor is loading...