gochain / gofs

GoFS - GoChain FileSystem tools and documentation.
https://gofs.io
11 stars 3 forks source link

Tests and Wallets #12

Closed jmank88 closed 5 years ago

jmank88 commented 5 years ago

The PR adds deposit wallets (#8) and truffle tests (#2), and does a bunch of general cleanup. By bundling the wallet contract management in to the main contract, we can simplify deploying for users (just call a func instead of deploying manually) and keep a central map of one wallet contract per cid. The current gas used create a new wallet is 226935.

The gofs command can fetch a wallet address, and create a new one if none exists:

> gofs wallet zb2rhe5P4gXftAwvA4eXQ5HJwsER2owDyS9sKaQRRVQPn93bA
Deposit wallet: 0x9D5137f8C7561901700EE446bf11B54C5aC1aE9F

> gofs wallet bafkreiffxev2yj33bjsmu3p3jvhnvyxnroqkyp6v3bs6hkuef4bjq6evlm
No deposit wallet exists for this CID. Create one? Y/N
> y
Created new wallet - Tx: 0x6b15dbea293d6ca9b094f8b2df5f8bb6944f853d8f77e4aac5e01f94a8947835
Deposit wallet: 0x9bA1FE833C349E8DEf46506bDf11a1A16815360a