Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
YottaChain
YTBP
提交
f7e050de
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,发现更多精彩内容 >>
提交
f7e050de
编写于
3月 15, 2018
作者:
P
Paul Calabrese
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fix bug in message buffer class. Add new unit test for this case. Re-enable unit tests.
上级
f2bcd951
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
19 addition
and
17 deletion
+19
-17
plugins/net_plugin/include/eosio/net_plugin/message_buffer.hpp
...ns/net_plugin/include/eosio/net_plugin/message_buffer.hpp
+2
-2
tests/CMakeLists.txt
tests/CMakeLists.txt
+2
-1
tests/tests/message_buffer_tests.cpp
tests/tests/message_buffer_tests.cpp
+15
-14
未找到文件。
plugins/net_plugin/include/eosio/net_plugin/message_buffer.hpp
浏览文件 @
f7e050de
...
...
@@ -214,9 +214,9 @@ namespace eosio {
/*
* Reads size bytes from the buffer chain starting at the supplied index.
* The
read pointer is not advanc
ed.
* The
supplied index is advanced, but the read pointer is unaffect
ed.
*/
bool
peek
(
void
*
s
,
uint32_t
size
,
index_t
index
)
{
bool
peek
(
void
*
s
,
uint32_t
size
,
index_t
&
index
)
{
if
(
bytes_to_read
()
<
size
)
{
return
false
;
}
...
...
tests/CMakeLists.txt
浏览文件 @
f7e050de
...
...
@@ -18,13 +18,14 @@ include_directories("${CMAKE_SOURCE_DIR}/contracts")
configure_file
(
${
CMAKE_CURRENT_SOURCE_DIR
}
/tests/config.hpp.in
${
CMAKE_CURRENT_SOURCE_DIR
}
/tests/config.hpp ESCAPE_QUOTES
)
file
(
GLOB UNIT_TESTS
"chain_tests/*.cpp"
"api_tests/*.cpp"
"tests/abi_tests.cpp"
"tests/database_tests.cpp"
"tests/misc_tests.cpp"
"wasm_tests/*.cpp"
)
file
(
GLOB UNIT_TESTS
"chain_tests/*.cpp"
"api_tests/*.cpp"
"tests/abi_tests.cpp"
"tests/database_tests.cpp"
"tests/misc_tests.cpp"
"wasm_tests/*.cpp"
"tests/message_buffer_tests.cpp"
)
add_executable
(
chain_test
${
UNIT_TESTS
}
${
WASM_UNIT_TESTS
}
common/main.cpp
)
target_link_libraries
(
chain_test eosio_testing eosio_chain chainbase eos_utilities eos_egenesis_none chain_plugin abi_generator fc
${
PLATFORM_SPECIFIC_LIBS
}
)
target_include_directories
(
chain_test PUBLIC
${
CMAKE_BINARY_DIR
}
/contracts
${
CMAKE_CURRENT_BINARY_DIR
}
/tests/contracts
)
target_include_directories
(
chain_test PUBLIC
${
CMAKE_CURRENT_SOURCE_DIR
}
/wasm_tests
)
target_include_directories
(
chain_test PUBLIC
${
CMAKE_SOURCE_DIR
}
/plugins/net_plugin/include
)
add_dependencies
(
chain_test asserter test_api currency proxy identity identity_test stltest infinite
)
...
...
tests/tests/message_buffer_tests.cpp
浏览文件 @
f7e050de
...
...
@@ -3,7 +3,7 @@
* @copyright defined in eos/LICENSE.txt
*/
#include <eos/net_plugin/message_buffer.hpp>
#include <eos
io
/net_plugin/message_buffer.hpp>
#include <boost/test/unit_test.hpp>
#include <iostream>
...
...
@@ -28,8 +28,8 @@ BOOST_AUTO_TEST_CASE(message_buffer_construction)
auto
mbs
=
mb
.
get_buffer_sequence_for_boost_async_read
();
auto
mbsi
=
mbs
.
begin
();
BOOST_CHECK_EQUAL
(
boost
::
asio
::
detail
::
buffer_size_helper
(
*
mbsi
),
def_buffer_size
);
BOOST_CHECK_EQUAL
(
boost
::
asio
::
detail
::
buffer_cast_helper
(
*
mbsi
),
mb
.
write_ptr
());
BOOST_CHECK_EQUAL
(
mbsi
->
size
(
),
def_buffer_size
);
BOOST_CHECK_EQUAL
(
mbsi
->
data
(
),
mb
.
write_ptr
());
mbsi
++
;
BOOST_CHECK
(
mbsi
==
mbs
.
end
());
}
...
...
@@ -50,12 +50,12 @@ BOOST_AUTO_TEST_CASE(message_buffer_growth)
{
auto
mbs
=
mb
.
get_buffer_sequence_for_boost_async_read
();
auto
mbsi
=
mbs
.
begin
();
BOOST_CHECK_EQUAL
(
boost
::
asio
::
detail
::
buffer_size_helper
(
*
mbsi
),
def_buffer_size
);
BOOST_CHECK_EQUAL
(
boost
::
asio
::
detail
::
buffer_cast_helper
(
*
mbsi
),
mb
.
write_ptr
());
BOOST_CHECK_EQUAL
(
mbsi
->
size
(
),
def_buffer_size
);
BOOST_CHECK_EQUAL
(
mbsi
->
data
(
),
mb
.
write_ptr
());
mbsi
++
;
BOOST_CHECK
(
mbsi
!=
mbs
.
end
());
BOOST_CHECK_EQUAL
(
boost
::
asio
::
detail
::
buffer_size_helper
(
*
mbsi
),
def_buffer_size
);
BOOST_CHECK_NE
(
boost
::
asio
::
detail
::
buffer_cast_helper
(
*
mbsi
),
nullptr
);
BOOST_CHECK_EQUAL
(
mbsi
->
size
(
),
def_buffer_size
);
BOOST_CHECK_NE
(
mbsi
->
data
(
),
nullptr
);
mbsi
++
;
BOOST_CHECK
(
mbsi
==
mbs
.
end
());
}
...
...
@@ -71,12 +71,12 @@ BOOST_AUTO_TEST_CASE(message_buffer_growth)
{
auto
mbs
=
mb
.
get_buffer_sequence_for_boost_async_read
();
auto
mbsi
=
mbs
.
begin
();
BOOST_CHECK_EQUAL
(
boost
::
asio
::
detail
::
buffer_size_helper
(
*
mbsi
),
def_buffer_size
-
100
);
BOOST_CHECK_EQUAL
(
boost
::
asio
::
detail
::
buffer_cast_helper
(
*
mbsi
),
mb
.
write_ptr
());
BOOST_CHECK_EQUAL
(
mbsi
->
size
(
),
def_buffer_size
-
100
);
BOOST_CHECK_EQUAL
(
mbsi
->
data
(
),
mb
.
write_ptr
());
mbsi
++
;
BOOST_CHECK
(
mbsi
!=
mbs
.
end
());
BOOST_CHECK_EQUAL
(
boost
::
asio
::
detail
::
buffer_size_helper
(
*
mbsi
),
def_buffer_size
);
BOOST_CHECK_NE
(
boost
::
asio
::
detail
::
buffer_cast_helper
(
*
mbsi
),
nullptr
);
BOOST_CHECK_EQUAL
(
mbsi
->
size
(
),
def_buffer_size
);
BOOST_CHECK_NE
(
mbsi
->
data
(
),
nullptr
);
mbsi
++
;
BOOST_CHECK
(
mbsi
==
mbs
.
end
());
}
...
...
@@ -168,7 +168,8 @@ BOOST_AUTO_TEST_CASE(message_buffer_peek_read)
char
buffer
[
100
];
auto
index
=
mb
.
read_index
();
mb
.
peek
(
buffer
,
100
,
index
);
mb
.
peek
(
buffer
,
50
,
index
);
mb
.
peek
(
buffer
+
50
,
50
,
index
);
for
(
int
i
=
0
;
i
<
100
;
i
++
)
{
BOOST_CHECK_EQUAL
(
i
,
buffer
[
i
]);
}
...
...
@@ -227,8 +228,8 @@ BOOST_AUTO_TEST_CASE(message_buffer_write_ptr_to_end)
auto
mbs
=
mb
.
get_buffer_sequence_for_boost_async_read
();
auto
mbsi
=
mbs
.
begin
();
BOOST_CHECK_EQUAL
(
boost
::
asio
::
detail
::
buffer_size_helper
(
*
mbsi
),
small
);
BOOST_CHECK_EQUAL
(
boost
::
asio
::
detail
::
buffer_cast_helper
(
*
mbsi
),
mb
.
write_ptr
());
BOOST_CHECK_EQUAL
(
mbsi
->
size
(
),
small
);
BOOST_CHECK_EQUAL
(
mbsi
->
data
(
),
mb
.
write_ptr
());
BOOST_CHECK_EQUAL
(
mb
.
read_ptr
()
+
small
,
mb
.
write_ptr
());
mbsi
++
;
BOOST_CHECK
(
mbsi
==
mbs
.
end
());
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录