11、基于Populus框架的智能合约开发与部署及投票应用搭建

基于Populus框架的智能合约开发与部署及投票应用搭建

1. Populus框架下智能合约的测试与部署
1.1 智能合约测试

在智能合约测试中,对于取款操作后的账户余额检查,由于取款时账户需支付费用,经理账户取款后的余额减去初始余额不会恰好是1以太币。我们采用粗略测量,只要差值低于10 gwei即可。可以使用以下代码进行断言:

assert abs((after_withdraw_balance - initial_balance) - web3.toWei('1', 'ether')) < web3.toWei('0.00000001', 'ether')

运行测试命令:

(populus-venv) $ py.test tests/test_donation.py

当智能合约的构造函数有参数时,以 Greeter2.vy 合约为例:

greeting: bytes[20]
@public
def __init__(greeting_param: bytes[20]):
    self.greeting = greeting_param
@public
def setGreeting(x: bytes[20]):
    self.greeting = x
@public
def greet() -> bytes[20]:
    re
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值