lesson-4_完成したスマートコントラクトをテストしてみよう
💻 NEAR testnet で動作確認をしてみよう
完成したスマートコントラクトをNEAR testnetにデプロイをして、動作確認をしたいと思います。
NEAR CLI
を使って、ターミナルからメソッドを呼び出してみましょう!
まずは、スマートコントラクトを再度コンパイルしてWasm
のファイルを更新します。
以下のコマンドをターミナルで実行しましょう。
cargo build --target wasm32-unknown-unknown --release
次に、前回のテストで使用したサブアカウントにデプロイを行いたいのですが、ここでサブアカウントを作り直すという作業を挟みます。
👥 サブアカウントを作り直す
作り直す理由としては、予期せぬエラーを防ぐためです。 そのままデプロイをして、何かしらのメソッドを呼び出した際におそらく以下のようなパニックエラーが起こるでしょう。
Cannot deserialize the contract state.
詳しい説明はこちらを確認してください。予期せぬエラーに何時間も時間を割くよりも一度デプロイするアカウントをリセットする方が良いこともあります。
ここで、開発中はデプロイするアカウントにサブアカウントを採用するメリットがあります。ターミナルから簡単に削除・再作成ができるためです!
では、以下のコマンドを実行し、サブアカウントを削除します。この時、サブアカウントに残っているトークンは全て${ACCOUNT_ID}
に戻ります。
near delete ${SUBACCOUNT_ID}.${ACCOUNT_ID} ${ACCOUNT_ID}
以下のコマンドを実行し、サブアカウントを再作 成します。これで、更新されたスマートコントラクトを安心してデプロイできます!
near create-account ${SUBACCOUNT_ID}.${ACCOUNT_ID} --masterAccount ${ACCOUNT_ID} --initialBalance 5
✅ デプロイをしてテストする
では、デプロイをしてメソッドを呼び出してみましょう。
まずは、section-1 Lesson 3 - スマートコントラクトをテストしてみよう
で実行したように部屋を1つ登録しておきます。続いて、予約機能をテストしていきます。