Прочность превышает лимит газа блока во время испытаний Mocha с Ganache-cli

Как увеличить лимит газа в этом случае? Сообщение об ошибке: «n: Превышен лимит газа блока» или «Базовая плата превышает лимит газа».

Я думаю, что есть какой-то API, который мне нужен, чтобы установить лимит газа здесь .

Мои контракты слишком велики? Должен ли я вместо этого тестировать каждый контракт один за другим? Пожалуйста, порекомендуйте. Спасибо.

ганаш превышает лимит газа в блоке

Ответы (2)

Сообщение об ошибке

"n: Превышен лимит газа блока"

означает, что ваша транзакция объявила стоимость газа выше максимально допустимой в сети. Клиент отклонит такую ​​транзакцию.

С ganache-cli вы можете запускать с большим количеством газа, доступным с -lпараметром:

ganache-cli -l 8000000

Запустит ганаш с лимитом блочного газа 8M.


Из документации readme у него есть режим, в котором вы передаете дополнительные параметры в параметре при запуске ganache. Там можно поставить gasLimit.

const ganache = require("ganache-cli");
const options = { gasLimit: 8000000 };
const server = ganache.server(options);
server.listen(port, (err, blockchain) => {
    /* */
});
Привет, Исмаэль, как я могу добавить эту команду в свой файл Javascript, чтобы я мог запускать этот файл во время тестов Mocha с Ganache-cli? Спасибо
@user2965665 user2965665 Как запустить экземпляр ганаша? Вы можете передать дополнительные параметры в дополнительный параметр, который вы можете установить gasLimitоттуда.
Спасибо. Я понял это: const provider = ganache.provider(options);

Благодаря решению Исмаэля:

const ganache = require('ganache-cli');
const Web3 = require('web3');

const options = { gasLimit: 8000000 };
const provider = ganache.provider(options);
// quote from doc "Both .provider() and .server() take a single object
// which allows you to specify behavior of ganache-cli"
// https://github.com/trufflesuite/ganache-cli#using-ganache-cli
const web3 = new Web3(provider);