Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
YottaChain
YTBP
提交
6805904a
Y
YTBP
项目概览
YottaChain
/
YTBP
通知
0
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Y
YTBP
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
6805904a
编写于
5月 03, 2018
作者:
K
Kevin Heifner
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Update tests for new asset checks
上级
6f4e9a0f
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
37 addition
and
23 deletion
+37
-23
unittests/currency_tests.cpp
unittests/currency_tests.cpp
+2
-4
unittests/eosio.token_tests.cpp
unittests/eosio.token_tests.cpp
+35
-19
未找到文件。
unittests/currency_tests.cpp
浏览文件 @
6805904a
...
...
@@ -294,10 +294,8 @@ BOOST_FIXTURE_TEST_CASE(test_symbol, TESTER) try {
// invalid - contains lower case characters, no validation
{
symbol
malformed
(
SY
(
6
,
EoS
));
BOOST_REQUIRE_EQUAL
(
false
,
malformed
.
valid
());
BOOST_REQUIRE_EQUAL
(
"EoS"
,
malformed
.
name
());
BOOST_REQUIRE_EQUAL
(
6
,
malformed
.
decimals
());
BOOST_CHECK_EXCEPTION
(
symbol
malformed
(
SY
(
6
,
EoS
)),
fc
::
assert_exception
,
assert_message_contains
(
"invalid symbol"
));
}
// invalid - contains lower case characters, exception thrown
...
...
unittests/eosio.token_tests.cpp
浏览文件 @
6805904a
...
...
@@ -131,6 +131,28 @@ BOOST_FIXTURE_TEST_CASE( create_negative_max_supply, eosio_token_tester ) try {
}
FC_LOG_AND_RETHROW
()
BOOST_FIXTURE_TEST_CASE
(
symbol_already_exists
,
eosio_token_tester
)
try
{
auto
token
=
create
(
N
(
alice
),
asset
::
from_string
(
"100 TKN"
),
true
,
false
,
false
);
auto
stats
=
get_stats
(
"0,TKN"
);
REQUIRE_MATCHING_OBJECT
(
stats
,
mvo
()
(
"supply"
,
"0 TKN"
)
(
"max_supply"
,
"100 TKN"
)
(
"issuer"
,
"alice"
)
(
"can_freeze"
,
1
)
(
"can_recall"
,
0
)
(
"can_whitelist"
,
0
)
(
"is_frozen"
,
false
)
(
"enforce_whitelist"
,
false
)
);
produce_blocks
(
1
);
BOOST_REQUIRE_EQUAL
(
error
(
"condition: assertion failed: token with symbol already exists"
),
create
(
N
(
alice
),
asset
::
from_string
(
"100 TKN"
),
true
,
false
,
false
)
);
}
FC_LOG_AND_RETHROW
()
BOOST_FIXTURE_TEST_CASE
(
create_max_supply
,
eosio_token_tester
)
try
{
auto
token
=
create
(
N
(
alice
),
asset
::
from_string
(
"4611686018427387903 TKN"
),
true
,
false
,
false
);
...
...
@@ -147,9 +169,13 @@ BOOST_FIXTURE_TEST_CASE( create_max_supply, eosio_token_tester ) try {
);
produce_blocks
(
1
);
BOOST_REQUIRE_EQUAL
(
error
(
"condition: assertion failed: invalid supply"
),
create
(
N
(
alice
),
asset
::
from_string
(
"4611686018427387904 TKN"
),
true
,
false
,
false
)
);
asset
max
(
10
,
symbol
(
SY
(
0
,
NKT
)));
max
.
amount
=
4611686018427387904
;
BOOST_CHECK_EXCEPTION
(
create
(
N
(
alice
),
max
,
true
,
false
,
false
)
,
asset_type_exception
,
[](
const
asset_type_exception
&
e
)
{
return
expect_assert_message
(
e
,
"magnitude of asset amount must be less than 2^62"
);
});
}
FC_LOG_AND_RETHROW
()
...
...
@@ -169,15 +195,13 @@ BOOST_FIXTURE_TEST_CASE( create_max_decimals, eosio_token_tester ) try {
);
produce_blocks
(
1
);
BOOST_REQUIRE_EQUAL
(
error
(
"condition: assertion failed: invalid supply"
),
create
(
N
(
alice
),
asset
::
from_string
(
"4.611686018427387904 TKN"
),
true
,
false
,
false
)
);
asset
max
(
10
,
symbol
(
SY
(
0
,
NKT
)));
//1.0000000000000000000 => 0x8ac7230489e80000L
//TODO: Better error message
BOOST_REQUIRE_EQUAL
(
error
(
"condition: assertion failed: max-supply must be positive"
),
create
(
N
(
alice
),
asset
::
from_string
(
"1.0000000000000000000 TKN"
),
true
,
false
,
false
)
);
max
.
amount
=
0x8ac7230489e80000L
;
BOOST_CHECK_EXCEPTION
(
create
(
N
(
alice
),
max
,
true
,
false
,
false
)
,
asset_type_exception
,
[](
const
asset_type_exception
&
e
)
{
return
expect_assert_message
(
e
,
"magnitude of asset amount must be less than 2^62"
);
});
}
FC_LOG_AND_RETHROW
()
...
...
@@ -211,10 +235,6 @@ BOOST_FIXTURE_TEST_CASE( issue_tests, eosio_token_tester ) try {
issue
(
N
(
alice
),
N
(
alice
),
asset
::
from_string
(
"500.001 TKN"
),
"hola"
)
);
BOOST_REQUIRE_EQUAL
(
error
(
"condition: assertion failed: invalid quantity"
),
issue
(
N
(
alice
),
N
(
alice
),
asset
::
from_string
(
"4611686018427387.904 TKN"
),
"hola"
)
);
BOOST_REQUIRE_EQUAL
(
error
(
"condition: assertion failed: must issue positive quantity"
),
issue
(
N
(
alice
),
N
(
alice
),
asset
::
from_string
(
"-1.000 TKN"
),
"hola"
)
);
...
...
@@ -275,10 +295,6 @@ BOOST_FIXTURE_TEST_CASE( transfer_tests, eosio_token_tester ) try {
transfer
(
N
(
alice
),
N
(
bob
),
asset
::
from_string
(
"701 CERO"
),
"hola"
)
);
BOOST_REQUIRE_EQUAL
(
error
(
"condition: assertion failed: invalid quantity"
),
transfer
(
N
(
alice
),
N
(
bob
),
asset
::
from_string
(
"4611686018427387904 CERO"
),
"hola"
)
);
BOOST_REQUIRE_EQUAL
(
error
(
"condition: assertion failed: must transfer positive quantity"
),
transfer
(
N
(
alice
),
N
(
bob
),
asset
::
from_string
(
"-1000 CERO"
),
"hola"
)
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录