При выполнении тестовых случаев для смарт-контракта я бы хотел либо уничтожить смарт-контракт и повторно развернуть его, либо сбросить его состояние после каждого запуска тестового примера.Тестовые случаи написаны на JavaScript.Идея состоит в том, чтобы запустить код внутри структуры AfterEach.
contract("Contract", accounts => {
let contract;
let owner = accounts[0];
let admin = accounts[1];
let user = accounts[2];
describe("function1 tests", () => {
before("Setup contract for each test", async () => {
contract = await Contract.deployed();
});
afterEach("", async () => {
//code to selfdestruct or reset the state of the contract after
//each test
});
it("test1", () => {
//test1 code
});
it("test2", () => {
//test2 code
});
});
});