Study
Hardhat

Tugas Akhir

Penjelasan

Saatnya menggabungkan seluruh materi Hardhat yang sudah dipelajari — dari inisialisasi project, penulisan contract, test dengan Mocha/Chai dan loadFixture, penggunaan console.log untuk debugging, hingga deployment lewat script atau Ignition dan verifikasi di block explorer. Tugas ini mensimulasikan alur kerja nyata pengembangan smart contract memakai ekosistem Node.js dan Hardhat dari nol sampai live di testnet. Kerjakan bertahap: mulai dari `npx hardhat init`, tulis contract, tulis test lengkap dengan fixture dan chai matchers, jalankan gas reporter, lalu deploy ke Hardhat Network lokal sebelum mencoba deploy dan verifikasi ke testnet publik dengan konfigurasi environment variable yang aman.

Tugas

Buat project Hardhat baru bernama 'simple_bank_hh'. Tulis contract SimpleBank dengan fungsi deposit() (payable), withdraw(uint256 amount) yang hanya bisa ditarik oleh depositor sendiri, dan getBalance(address) view. Tulis test dengan Mocha/Chai yang mencakup: (1) test deposit dan withdraw normal memakai loadFixture, (2) test .to.be.revertedWith saat withdraw melebihi saldo, (3) test bahwa user lain tidak bisa menguras saldo user lain. Aktifkan gas reporter dan jalankan test. Terakhir, buat script deploy.js atau Ignition module, lalu deploy ke Hardhat Network lokal (npx hardhat node) dan verifikasi alurnya bekerja lewat hardhat console.

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Jalankan `npx hardhat test --network hardhat` dulu sampai semua hijau sebelum mencoba deploy ke testnet — testnet punya latensi dan biaya gas nyata yang membuat iterasi jauh lebih lambat.