Skip to content

Commit 40f6cf7

Browse files
authored
[coro_rpc] fix server constructor (#837)
1 parent 1cb2da9 commit 40f6cf7

File tree

2 files changed

+13
-10
lines changed

2 files changed

+13
-10
lines changed

include/ylt/coro_rpc/impl/coro_rpc_server.hpp

+2-3
Original file line numberDiff line numberDiff line change
@@ -89,8 +89,7 @@ class coro_rpc_server_base {
8989
init_address(std::move(address));
9090
}
9191

92-
coro_rpc_server_base(size_t thread_num = std::thread::hardware_concurrency(),
93-
std::string address = "0.0.0.0:9001",
92+
coro_rpc_server_base(size_t thread_num, std::string address,
9493
std::chrono::steady_clock::duration
9594
conn_timeout_duration = std::chrono::seconds(0),
9695
bool is_enable_tcp_no_delay = true)
@@ -102,7 +101,7 @@ class coro_rpc_server_base {
102101
init_address(std::move(address));
103102
}
104103

105-
coro_rpc_server_base(const server_config &config = server_config{})
104+
coro_rpc_server_base(const server_config &config)
106105
: pool_(config.thread_num),
107106
acceptor_(pool_.get_executor()->get_asio_executor()),
108107
port_(config.port),

src/coro_io/tests/test_channel.cpp

+11-7
Original file line numberDiff line numberDiff line change
@@ -198,22 +198,26 @@ void hello() {}
198198

199199
TEST_CASE("test server down") {
200200
async_simple::coro::syncAwait([]() -> async_simple::coro::Lazy<void> {
201-
coro_rpc::coro_rpc_server server1(1, 58801);
201+
coro_rpc::coro_rpc_server server1(1, 0);
202202
server1.register_handler<hello>();
203203
auto res = server1.async_start();
204204
REQUIRE_MESSAGE(!res.hasResult(), "server start failed");
205-
coro_rpc::coro_rpc_server server2(1, 58802);
205+
auto port1 = server1.port();
206+
coro_rpc::coro_rpc_server server2(1, 0);
206207
server2.register_handler<hello>();
207208
auto res2 = server2.async_start();
208209
REQUIRE_MESSAGE(!res2.hasResult(), "server start failed");
209-
auto hosts =
210-
std::vector<std::string_view>{"127.0.0.1:58801", "127.0.0.1:58802"};
210+
211+
auto port2 = server2.port();
212+
auto hosts = std::vector<std::string>{"127.0.0.1:" + std::to_string(port1),
213+
"127.0.0.1:" + std::to_string(port2)};
214+
auto host_view = std::vector<std::string_view>{hosts[0], hosts[1]};
211215
auto config = coro_io::client_pool<coro_rpc::coro_rpc_client>::pool_config{
212216
.connect_retry_count = 0,
213217
.reconnect_wait_time = std::chrono::milliseconds{0},
214218
.host_alive_detect_duration = std::chrono::milliseconds{500}};
215219
auto load_blancer =
216-
coro_io::load_blancer<coro_rpc::coro_rpc_client>::create(hosts,
220+
coro_io::load_blancer<coro_rpc::coro_rpc_client>::create(host_view,
217221
{config});
218222

219223
for (int i = 0; i < 100; ++i) {
@@ -259,7 +263,7 @@ TEST_CASE("test server down") {
259263
}
260264
}
261265

262-
coro_rpc::coro_rpc_server server3(1, 58801);
266+
coro_rpc::coro_rpc_server server3(1, port1);
263267
server3.register_handler<hello>();
264268
auto res3 = server3.async_start();
265269
REQUIRE_MESSAGE(!res3.hasResult(), "server start failed");
@@ -276,7 +280,7 @@ TEST_CASE("test server down") {
276280
CHECK(res.has_value());
277281
}
278282
}
279-
coro_rpc::coro_rpc_server server4(1, 58802);
283+
coro_rpc::coro_rpc_server server4(1, port2);
280284
server4.register_handler<hello>();
281285
auto res4 = server4.async_start();
282286
REQUIRE_MESSAGE(!res4.hasResult(), "server start failed");

0 commit comments

Comments
 (0)