Refactor the session manager using session transformation 2D array & Update test case

This commit is contained in:
luwenpeng
2024-03-14 10:56:09 +08:00
parent 639614622b
commit ce00122557
47 changed files with 3403 additions and 3563 deletions

View File

@@ -18,8 +18,8 @@ TEST(SESSION_TIMER, ADD_DEL)
session_set_id(&sess, 1);
session_set_expirecb(&sess, session_expire, NULL, 1000);
session_timer_add_session(timer, &sess);
session_timer_del_session(timer, &sess);
session_timer_add(timer, &sess);
session_timer_del(timer, &sess);
session_timer_free(timer);
}
@@ -43,16 +43,16 @@ TEST(SESSION_TIMER, EXPIRE)
session_set_expirecb(&sess2, session_expire, NULL, 5);
session_set_expirecb(&sess3, session_expire, NULL, 10);
session_timer_add_session(timer, &sess1);
session_timer_add_session(timer, &sess2);
session_timer_add_session(timer, &sess3);
session_timer_add(timer, &sess1);
session_timer_add(timer, &sess2);
session_timer_add(timer, &sess3);
for (uint64_t abs_current_ts = 0; abs_current_ts < 15; abs_current_ts++)
{
printf("current timestamp %lu\n", abs_current_ts);
do
{
sess = session_timer_expire_session(timer, abs_current_ts);
sess = session_timer_expire(timer, abs_current_ts);
if (sess != NULL)
{
session_run_expirecb(sess);
@@ -82,9 +82,9 @@ TEST(SESSION_TIMER, BEFORE_EXPIRE_DEL)
session_set_expirecb(&sess2, session_expire, NULL, 5);
session_set_expirecb(&sess3, session_expire, NULL, 10);
session_timer_add_session(timer, &sess1);
session_timer_add_session(timer, &sess2);
session_timer_add_session(timer, &sess3);
session_timer_add(timer, &sess1);
session_timer_add(timer, &sess2);
session_timer_add(timer, &sess3);
for (uint64_t abs_current_ts = 0; abs_current_ts < 15; abs_current_ts++)
{
@@ -92,11 +92,11 @@ TEST(SESSION_TIMER, BEFORE_EXPIRE_DEL)
if (abs_current_ts == 2)
{
printf("delete timer 2\n");
session_timer_del_session(timer, &sess2);
session_timer_del(timer, &sess2);
}
do
{
sess = session_timer_expire_session(timer, abs_current_ts);
sess = session_timer_expire(timer, abs_current_ts);
if (sess != NULL)
{
session_run_expirecb(sess);
@@ -126,9 +126,9 @@ TEST(SESSION_TIMER, BEFORE_EXPIRE_UPDATE)
session_set_expirecb(&sess2, session_expire, NULL, 5);
session_set_expirecb(&sess3, session_expire, NULL, 10);
session_timer_add_session(timer, &sess1);
session_timer_add_session(timer, &sess2);
session_timer_add_session(timer, &sess3);
session_timer_add(timer, &sess1);
session_timer_add(timer, &sess2);
session_timer_add(timer, &sess3);
for (uint64_t abs_current_ts = 0; abs_current_ts < 15; abs_current_ts++)
{
@@ -136,13 +136,13 @@ TEST(SESSION_TIMER, BEFORE_EXPIRE_UPDATE)
if (abs_current_ts == 2)
{
printf("update timer 2\n");
session_timer_del_session(timer, &sess2);
session_timer_del(timer, &sess2);
session_set_expirecb(&sess2, session_expire, NULL, 8);
session_timer_add_session(timer, &sess2);
session_timer_add(timer, &sess2);
}
do
{
sess = session_timer_expire_session(timer, abs_current_ts);
sess = session_timer_expire(timer, abs_current_ts);
if (sess != NULL)
{
session_run_expirecb(sess);
@@ -169,26 +169,26 @@ TEST(SESSION_TIMER, NEXT_EXPIRE_INTERVAL)
EXPECT_TRUE(session_timer_next_expire_interval(timer) == UINT64_MAX);
session_timer_add_session(timer, &sess1);
session_timer_add_session(timer, &sess2);
session_timer_add(timer, &sess1);
session_timer_add(timer, &sess2);
EXPECT_TRUE(session_timer_next_expire_interval(timer) < UINT64_MAX);
EXPECT_TRUE(session_timer_expire_session(timer, 900) == NULL);
EXPECT_TRUE(session_timer_expire(timer, 900) == NULL);
EXPECT_TRUE(session_timer_next_expire_interval(timer) <= 1000 - 900);
EXPECT_TRUE(session_timer_expire_session(timer, 950) == NULL);
EXPECT_TRUE(session_timer_expire(timer, 950) == NULL);
EXPECT_TRUE(session_timer_next_expire_interval(timer) <= 1000 - 950);
EXPECT_TRUE(session_timer_expire_session(timer, 980) == NULL);
EXPECT_TRUE(session_timer_expire(timer, 980) == NULL);
EXPECT_TRUE(session_timer_next_expire_interval(timer) <= 1000 - 980);
EXPECT_TRUE(session_timer_expire_session(timer, 990) == NULL);
EXPECT_TRUE(session_timer_expire(timer, 990) == NULL);
EXPECT_TRUE(session_timer_next_expire_interval(timer) <= 1000 - 990);
EXPECT_TRUE(session_timer_expire_session(timer, 1010));
EXPECT_TRUE(session_timer_expire(timer, 1010));
EXPECT_TRUE(session_timer_next_expire_interval(timer) == 0);
EXPECT_TRUE(session_timer_expire_session(timer, 1010));
EXPECT_TRUE(session_timer_expire(timer, 1010));
EXPECT_TRUE(session_timer_next_expire_interval(timer) == UINT64_MAX);
session_timer_free(timer);