Truffle は ethereum スマートコントラクトのコンパイル、マイグレーション、テストを行うためのフレームワークです。
Truffle は npm を使ってインストールしますので、事前に npm をインストールしてください。
また、ethereum ブロックチェーンも使用しますので ethereumブロックチェーンの構築(Ganache編) を参考に Ganache をインストールしてください。
生成されたファイルを確認してみます。
各ファイルとディレクトリの説明。
truffle-config.js を開いて、コメントを削除し以下のように変更してください。
Ganache を起動し「NEW WORKSPACE」をクリックします。
「ADD PROJECT」をクリックし、先ほど作成した「truffle-config.js」を選択します。
これで Ganache と Truffle の連携設定は完了です。「SAVE WORKSPACE」をクリックしてください。
上記のコマンドで constracts ディレクトリの中に Counter.sol ファイルが生成されます。
エディタで Counter.sol を開き、以下のように編集してください。
Counter コントラクトをデプロイするためのマイグレーションファイルを作成します。
上記のコマンドで migrations ディレクトリの中に nnnnnnnn_counter.js ファイルが生成されます。
ファイルの以下のように書き換えて、Counter コントラクトをデプロイするように設定します。
Counter コントラクトを呼び出すためのインスタンスを取得する。
Counter コントラクトの get を呼び出す。
「BN」は「BigNumber」という意味です。後々、テスト等で値の比較をするときに int とは扱いが変わってきますので、覚えておいてください。
Counter コントラクトの inc を呼び出す。
もう一度、Counter コントラクトの get を呼び出す。(値が0から1になっている)
上記のコマンドで test ディレクトリの中に simple_counter_test.js ファイルが生成されます。
エディタで simple_counter_test.js を開き、以下のように編集してください。