January 2021
Intermediate to advanced
272 pages
4h 10m
Japanese
前章では、Fundraiserコントラクトを作成し、寄付や出金をサポートするための機能を実装した。Fundraiserコントラクトには多くの機能があるが、現時点では、このコントラクトを作成する手段がない。本章では、なじみがあると思われるFactoryパターンを使ってFundraiserの個々のインスタンスを作成するコントラクトを追加する。
本章では、GitHubリポジトリからUIを取得し、Ganacheにデプロイする手順も見ていく。UIがデプロイされたら、Webブラウザでアプリケーションを起動し、新しいFundraiserインスタンスを作成することで、寄付と資金の引き出しを行うことができる。
前章のFundraiserコントラクトは、別のコントラクト(FundraiserFactory)によって初期化されることを前提として設計されていたため、マイグレーションを必要としていなかった。しかし、ユーザーがファクトリを操作してFundraiserインスタンスを作成するには、FundraiserFactoryをデプロイする必要がある。
まず、次のコマンドを使ってtestディレクトリに新しいファイルを作成する。
$ cd fundraiser $ touch test/fundraiser_factory_test.js
この新しいファイルにデプロイのテストケースを追加する(リスト7-1)。
リスト7-1:デプロイのテストケースを追加する(fundraiser_factory_test.js)
const FundraiserFactoryContract = artifacts.require("FundraiserFactory"); ...Read now
Unlock full access