В настоящее время я тестирую некоторые смарт-контракты с трюфелем (мокко/чай/чай-как-обещано) и имею следующую проблему:
У меня есть геттер, и этот геттер выдает значение UINT, а затем, когда я пытаюсь проверить значение с помощью instance.getMemberCount().should.eventually.equal(4)
, результат: expected { Object (s, e, ...) } to equal 4
.
Интересным фактом является то, что когда я пытаюсь сравнить значения напрямую с '==', проблем нет.. (например assert.equal(instance.getMemberCount() == 4)
:)
Есть ли у Mocha/Chai проблемы с преобразованием значений uint?
Вы можете использовать .valueOf(), чтобы получить возвращаемое значение из функции получения.
Я использовал это в одном из тестовых случаев, которые я написал когда-то назад.
Вы можете взглянуть на это для справки.
Надеюсь это поможет.
Виталий Швецов
val3ri
ABCD.ca
BigNumber
объект с расширениемtoNumber
. ethereumbuilders.gitbooks.io/guide/content/en/… см. «web3.toBigNumber»