Truffle

導入 openzeppelin-test-helpers

  • December 16, 2020

我需要 BN 庫來正確使用 1e18 位小數的 balanceOf 斷言,有時是 expectRevert。我看到不同的項目以不同的方式使用它:

const { constants, time, ether, expectRevert } = require('@openzeppelin/test-helpers');

或者

const { BN, constants, expectEvent, expectRevert } = require('openzeppelin-test-helpers');

有什麼區別嗎?

const { constants, time, ether, expectRevert } = require('@openzeppelin/test-helpers');

這是導入受信任的 NPM 包的現代方式。另一種方式必須是一些舊的遺留程式碼。

您應該在文件require中聲明任何內容。package.json

例如:

  • 如果"openzeppelin-test-helpers": "0.5.1",那麼require('openzeppelin-test-helpers')
  • 如果"@openzeppelin/test-helpers": "0.5.9",那麼require('@openzeppelin/test-helpers')

在這種特定情況下,由於‘openzeppelin-test-helpers’ 已重命名為 ‘@openzeppelin/test-helpers’,您可能希望選擇後者(即,在您的package.json文件中聲明它,並require在您的松露測試文件中聲明它) .

引用自:https://ethereum.stackexchange.com/questions/91181