比特帝国

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫描二维码登录本站

比特帝国 首页 比特股 比特股资讯 查看内容

测试网硬分叉版本发布: test-2.0.180510

2018-5-20 09:48| 发布者: admin| 查看: 147| 评论: 0|原作者: abit

关于功能测试。

具体功能参见以前的几个帖子。
https://bitsharestalk.org/index.php?topic=25926.msg315666#msg315666
https://bitsharestalk.org/index.php?topic=26011.msg316139#msg316139
https://bitsharestalk.org/index.php?topic=26158.msg317036#msg317036

【BSIP26】下单手续费用非BTS,撤单返还原始手续费币种而不是返还BTS
测试方法(注意用其他资产付手续费):
* 分叉前,下单+撤单:分为主动撤单,过期自动撤单,金额太小被动撤单几种;还要测部分成交后的撤单;
* 分叉前下单,分叉后撤单;
* 分叉后,下单撤单。

【BSIP27】资产发行人可以直接取出资产手续费池中的BTS
GUI 实现这个功能之前,可以用 cli_wallet 也就是命令行钱包测试。有个新命令,格式是:
claim_asset_fee_pool [资产名] [金额] [是否广播]
比如
claim_asset_fee_pool XIANHUA 1000 true
表示从 XIANHUA 的手续费池中取 1000 BTS 。

测试方法:
* 分叉前,这个命令应该会报错
* 分叉后,资产发行人可以用这个命令,需要测试:发行人正常取钱成功、非发行人取钱失败、取负数失败、超额取钱失败等等。

【BSIP29】修改资产发行人需要 Owner key
GUI 实现这个功能之前,可以用 cli_wallet 也就是命令行钱包测试。有个新命令,格式是:
update_asset_issuer [资产名] [新发行人] [是否广播]
比如
update_asset_issuer XIANHUA niufen true
表示把 XIANHUA 资产转给 niufen 。

测试方法:
* 分叉前,这个命令应该报错
* 分叉前,可以用 update_asset 命令,或者通过 GUI 修改资产发行人,需要 active key
* 分叉后,update_asset 命令不能用来修改发行人,命令里指定新发行人会报错
* 分叉后,update_asset_issuer 命令应该可以使用,需要测试:用 owner key 正常转让成功、active key转让失败、转让他人资产失败等等。

【BSIP30】在爆仓状态可以上调抵押率,但抵押率不足最低要求时不能增加借款
测试方法:
* 分叉前,爆仓状态,比如抵押率 150% 时,调仓时必须保证调整后抵押率在 175% 以上
* 分叉后,只要上调抵押率、同时保证借款不增加,就可以成功,比如,可以调整到 151% 。需要测试:正常调整成功、增加借款失败、降低抵押率失败等等。

【BSIP31】爆仓单部分成交后爆仓价自动更新
测试方法(注意:自建资产可以指定喂价人,不一定要见证人喂价):
* 分叉前,喂高价,借款,喂低价造爆仓,吃爆仓单、强清造成实际抵押率排序与按爆仓价排序不同,甚至排名第2的已经资不抵债但不触发黑天鹅
* 分叉瞬间,爆仓价自动更新,排序与抵押率一致,触发成交甚至黑天鹅
* 分叉后,继续吃爆仓单、以及强清,爆仓价自动更新,与实际抵押率排序相同

【BSIP32】挂单撮合以 Maker 价成交
测试方法:
* 分叉前,主动吃爆仓单成交价是买单价
* 分叉后,主动吃爆仓单成交价是喂价/1.1

【BSIP33】挂单撮合时价格优先
测试方法:
* 分叉前,如果有爆仓单,并且有低于爆仓单的卖单,挂买单价格高于喂价/1.1时,会和爆仓单成交
* 分叉后,上述买单会先和低价卖单成交

【BSIP34】爆仓单不成交问题
* 分叉前,挂高价买单,然后喂价造爆仓导致挂出来不成交
* 分叉瞬间,由于规则变化,不成交的单会成交
* 分叉后,挂高价买单,会直接成交

【BSIP35】整除问题
整除问题包含5种情况:匹配两个限价单、限价单与爆仓单、强清单与爆仓单、全局清算/黑天鹅、黑天鹅之后的强清。
每种情况里还包含 0 金额和非0金额两类。
测试方法举例(限价单)(例子中数值单位为1聪,或者说资产都是0位小数):

* 分叉前,账户A挂卖单卖 100 BTS 换 2000 卢布,账户B挂买单以 30 卢布换 1 BTS,成交结果是B花 30 卢布买 1 BTS
* 分叉后,重复上述测试案例,成交结果是B花 20 卢布买 1 BTS

* 分叉前,两个账户A和B先后都挂卖单卖 1 BTS 换 20 卢布,另一个账户 C 挂买单以 30 卢布换 1 BTS,成交结果是 A 得 20 卢布 付 1 BTS、B 白得 10 卢布、C 得 1 BTS 付 30 卢布
* 分叉后,重复上述测试案例,成交结果是A和C完成1BTS换20卢布的交易,B的单子不成交

上面的测试,因为一方是 1 ,可以单向整除,所以还不完全。可以测试类似 101 BTS 卖 2017 卢布这种情况。

其他4种情况类似。


【BSIP36】删除过期喂价
这个只影响见证人和理事会喂价的资产,需要见证人或者理事会成员来测。
测试方法:
* 分叉前,投上去一批见证人,喂价,然后换一批人,再喂价,原来那批人喂价过期后还是残留在系统里,可以查到
* 分叉瞬间,过期喂价会被清除(不影响当前喂价,所以不触发爆仓撮合成交)
* 分叉后,重复上述测试,过期喂价会在定期维护时被清除(测试网是每5分钟维护一次,正式网是整点维护)

这个功能不影响自定义喂价人的资产,也可以验证测试一下,是否影响。


【BSIP37】资产名称可以以数字结尾
测试方法:
* 分叉前,创建资产,名称可以包含英文和数字,但必须英文开头和结尾
* 分叉后,创建资产,名称可以包含英文和数字,只要求英文开头,可以用数字结尾


【BSIP38】设定爆仓后卖多少的功能
GUI 实现这个功能之前,可以用 cli_wallet 也就是命令行钱包测试。有个新命令,格式是:
borrow_asset_ext [账号] [借款金额] [借款币种] [抵押金额] [扩展字段] [是否广播]
比如
borrow_asset_ext niufen 1000 XIANHUA 100 {"target_collateral_ratio":1750} true
表示抵押 100 抵押物,借出 1000 XIANHUA ,如果爆仓,只卖出部分抵押物,到抵押率 175% 为止(可少量超过)
borrow_asset_ext niufen 1000 XIANHUA 100 null true
表示爆仓时,不限制卖多少抵押物
borrow_asset_ext niufen -500 XIANHUA 100 {"target_collateral_ratio":2000} true
表示增加 100 抵押,归还 500 XIANHUA,如果爆仓,只卖出部分抵押物,到抵押率 200% 为止(可少量超过)

注意:
* 每次调仓,必须重新指定扩展字段,新的会覆盖旧的。如果调仓时用 null ,表示不再限制爆仓时卖多少。
* 如果用老的 borrow_asset 命令,或者用没升级的 GUI 钱包调仓,则不会指定扩展字段,也就是不限制卖多少(和现在一样)。

测试方法:
* 分叉前,用大买单吃爆仓单,可以一次吃完
* 分叉前,上述命令的 [扩展字段] 参数如果不用为 null 会报错
* 分叉后,可以用非 null 。数值必须 0 - 65535 ,表示 0% - 6553.5% 。但是,如果最低抵押率是 175%,那么低于1750时会以1750为准。
* 分叉后,用大单吃爆仓单,如果爆仓单设置了扩展字段,会吃不完,这时,检查剩余仓位的抵押率和爆仓价


【Bugfix #184】这个就是 BSIP35 里的金额为 0 的情况

【Bugfix #214】用提案来批准提案
测试方法:
* 分叉前,不能把“批准提案”这个操作放到提案里。GUI里可以试,批准提案时,弹出签名确认框,选择提案再确认,会报个错。
* 分叉后,可以。

【Bugfix #453】多个大爆仓单同时砸盘时可能会和低价买单成交
测试方法:
* 分叉前,造若干个大小不一、抵押率一样的债仓,以及若干个大小不一、价格不一的买单,然后喂低价让所有债仓爆仓,会发现高价买单没成交完,低价买单有成交。
* 分叉后,重复测试,价格高的买单成交、低价的不成交

【Bugfix #588】可以签虚拟交易上链的问题
测试方法:
* 分叉前,可以把“取消清算单”操作(本应该是虚拟操作)放在一个提案中上链,虽然不会有实际效果。
* 分叉后,不行。

【Bugfix #868】修改智能资产的背书资产后,清除现有喂价
背景:发行量为 0 时,智能资产的背书资产是可以修改的。
测试方法:
* 分叉前,先喂价,然后修改背书,老的喂价数据不清除
* 分叉瞬间,错误的喂价会被清除,喂价会更新,同时重新检查爆仓单并撮合成交
* 分叉后,修改背书时,老的喂价数据会清除

【Bugfix #890】修改智能资产的喂价有效时间时,更新喂价并检查爆仓单
测试方法:
* 分叉前,先喂价,然后修改资产的喂价有效时间,不会更新当前喂价。比如改短了,该过期,但是还可以借款;或者改长,本来过期的变成不过期,该爆仓不爆。
* 分叉瞬间,喂价会更新,同时重新检查爆仓单并撮合成交
* 分叉后,修改资产的喂价有效时间时,会更新当前喂价
收藏 分享 邀请
比特帝国区块链交易所

最新评论

返回顶部