Ich teste gerade einige Smart Contracts mit truffle(mocha/chai/chai-as-promised) und habe folgendes Problem:
Ich habe einen Getter, und dieser Getter liefert einen UINT-Wert. Wenn ich dann versuche, den Wert mit zu testen, instance.getMemberCount().should.eventually.equal(4)
lautet das Ergebnis: expected { Object (s, e, ...) } to equal 4
.
Interessant ist, dass es kein Problem gibt, wenn ich versuche, die Werte direkt mit '==' zu vergleichen. (zum Beispiel: assert.equal(instance.getMemberCount() == 4)
)
Hat Mocha/Chai Probleme beim Umwandeln der uint-Werte?
Sie können .valueOf() verwenden, um den Rückgabewert von der Getter-Funktion zu erhalten.
Ich habe dies in einem der Testfälle verwendet, die ich vor einiger Zeit geschrieben habe.
Sie können sich dies als Referenz ansehen .
Hoffe das hilft.
Vitalii Schwezow
val3ri
ABCD.ca
BigNumber
Objekt mit einertoNumber
. ethereumbuilders.gitbooks.io/guide/content/en/… siehe "web3.toBigNumber"