2

テストのためにエクスプレスとモカを使用しています。Express Im から、rosten にデプロイされたスマート コントラクトから情報を取得します。そのため、アドレスは常に同じです。設定ファイルにそのアドレスがあります。

ローカル テストでは、testrpc を使用して、各テストの前にスマート コントラクトをデプロイしたいと考えています。そのため、展開のアドレスを高速アプリに渡す必要がある場合。

私のコードは次のとおりです。

Test.js

beforeEach(async function () {
    index = DeployContract() //this returns a random address 
    server = await app.listen(3000)
})

アプリ内

const CONFIG = require('../config.json')
const contex =  {
  indexAddress: CONFIG.indexAddress, // or .env
  gasMargin: CONFIG.gasMargin,
  web3: web3
}

router.get('/manager', (req, res, next) => {
  const manager = new Manager(contex) //this must be the address returned beforeEach
  // do something
  res.send(200)
})

に生成されたアドレスを使用する必要があるためindexAddress: CONFIG.indexAddress、コンストラクターでコンテキストを使用できます。

4

1 に答える 1