Skip to content

ConsenSys-Academy/simple-bank-exercise

Repository files navigation

Simple Bank Exercise

SimpleBank is a Truffle project that contains a starter contract, migration and Truffle JavaScript test files. In this exercise you are going to implement the SimpleBank.sol contract.

Setting The Stage

We want to create a depository institution on the Ethereum blockchain, and we need your help!
The bank should be able to enroll new users and allow them to make deposits / widthdrawals!

Files

  • contracts/SimpleBank.sol : the partial implementation of a Solidity Contract you will complete.
  • test/simpleBank.test.js : the Truffle test file that describes the behavior of a correct SimpleBank contract.

Requirements

  1. Latest truffle version.
    npm -g uninstall truffle && npm -g install truffle
  2. Install dependencies.
    npm install
  3. Your preferred code editor.
  4. Familiarity with terminals.

Instructions

Follow the comments outlined in SimpleBank.sol to implement its functionality. The test are there to determine correct contract behavior as well as guide you through the implementation.

The general workflow is to use Test Drive Development's red green process:

  1. Run truffle test from a terminal.
  2. Use the failed test output along with the hints in contracts/SimpleBank.sol to make the test pass.

Note: Truffle will default to use a Solidity 0.5.x compiler with this contract as-is. To use the latest 0.8.x compiler, please comment out lines 9-14 in truffle-config.js.

Note on testing

Check out the testing files to see how tests are implemented in JavaScript. We will go over the details of implementing tests later in the curriculum. Of course, if you have questions, do reach out in Discord, or schedule an Office Hour session with one of our mentors.

About

Implement a simple bank contract in Solidity

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •