Skip to content

Commit 23900ba

Browse files
committed
Add tests [16] --filter=[core] --asan
1 parent f267047 commit 23900ba

File tree

2 files changed

+20
-7
lines changed

2 files changed

+20
-7
lines changed

core-tests/src/server/http_parser.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ static void swoole_http_destroy_context(swoole_http_parser *parser) {
9191
delete static_cast<HttpContext *>(parser->data);
9292
}
9393

94-
static int swoole_http_parser_method(const string& protocol) {
94+
static int swoole_http_parser_method(const string &protocol) {
9595
swoole_http_parser *parser = swoole_http_parser_create();
9696
swoole_http_parser_execute(parser, &http_parser_settings, protocol.c_str(), protocol.length());
9797

core-tests/src/server/server.cpp

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1196,12 +1196,11 @@ TEST(server, task_worker) {
11961196
ASSERT_EQ(serv.gs->task_count, 2);
11971197
}
11981198

1199-
// PHP_METHOD(swoole_server, task)
1200-
TEST(server, task_worker2) {
1201-
Server serv(Server::MODE_PROCESS);
1199+
static void test_task(Server::Mode mode, uint8_t task_ipc_mode = Server::TASK_IPC_UNIXSOCK) {
1200+
Server serv(mode);
12021201
serv.worker_num = 2;
1202+
serv.task_ipc_mode = task_ipc_mode;
12031203
serv.task_worker_num = 3;
1204-
serv.task_enable_coroutine = 1;
12051204

12061205
ListenPort *port = serv.add_port(SW_SOCK_TCP, TEST_HOST, 0);
12071206
if (!port) {
@@ -1225,6 +1224,7 @@ TEST(server, task_worker2) {
12251224
ASSERT_EQ(serv.create(), SW_OK);
12261225

12271226
serv.onWorkerStart = [&](Server *serv, Worker *worker) {
1227+
DEBUG() << "onWorkerStart: id=" << worker->id << "\n";
12281228
if (worker->id == 1) {
12291229
int _dst_worker_id = 0;
12301230

@@ -1234,15 +1234,28 @@ TEST(server, task_worker2) {
12341234
memcpy(buf.data, packet, strlen(packet));
12351235
buf.info.reactor_id = worker->id;
12361236
buf.info.ext_flags |= (SW_TASK_NONBLOCK | SW_TASK_CALLBACK);
1237-
ASSERT_EQ(serv->gs->task_workers.dispatch(&buf, &_dst_worker_id), SW_OK);
1237+
ASSERT_TRUE(serv->task(&buf, &_dst_worker_id));
12381238
sleep(1);
1239-
kill(serv->gs->master_pid, SIGTERM);
1239+
serv->shutdown();
12401240
}
12411241
};
12421242

12431243
ASSERT_EQ(serv.start(), 0);
12441244
}
12451245

1246+
// PHP_METHOD(swoole_server, task)
1247+
TEST(server, task_base) {
1248+
test_task(Server::MODE_BASE);
1249+
}
1250+
1251+
TEST(server, task_process) {
1252+
test_task(Server::MODE_PROCESS);
1253+
}
1254+
1255+
TEST(server, task_ipc_stream) {
1256+
test_task(Server::MODE_PROCESS, Server::TASK_IPC_STREAM);
1257+
}
1258+
12461259
// static PHP_METHOD(swoole_server, taskCo)
12471260
TEST(server, task_worker3) {
12481261
Server serv(Server::MODE_PROCESS);

0 commit comments

Comments
 (0)