Я проверяю баланс счета после транзакции payable
в тесте Truffle. Ниже мой код:
// amount is the value supplied to the txn
assert.equal(Number(String(currentBalance)),
Number(String(previousBalance)) + amount - (gasUsed * 100000000000),
'Account balance for ' + String(acct) + ' incorrect after txn.');
// previous account bal: 99965457999999999000
// current account bal: 99954881999999998000
// gasUsed: 105760
// amount: 1000
Как видите, мне нужно умножить gasUsed
значение на 10^11
, иначе мой тест провалится... Я не очень понимаю, почему это 10^11
? GWEI ( 10^9
) имеет гораздо больше смысла. Хотя бы кратное трем? Этого вообще нет в документации web3 .
РЕДАКТИРОВАТЬ: чтобы уточнить, я пытаюсь выяснить, что это gasUsed
такое, и перезаписывают ли web3 или Truffle цену на газ по умолчанию. Цена газа согласно моему интерфейсу Ganache составляет 20000000000, что не соответствует моим расчетам. Вот почему я пришел к выводу, gasUsed
что общая плата за транзакцию в Wei.
Газ не эфир. Газ используется для оценки работы, выполненной EVM. Это не имеет ничего общего с вайсом/эфиром и т.д...
Если вы хотите узнать, сколько эфира стоит этот газ, умножьте его на значение gasPrice.
Итерация 122442
никджм