VOID getPingRTTCookieS(VOID *cookie) { PING_RTT_COOKIE_S *pingRTT = cookie; if(NULL == pingRTT) { return; } if((MIN_LIMIT_MSEC <= pingRTT->dwTimeVal_msec) || (INVALID_USEC == pingRTT->dwTimeVal_usec)) { pingRTT->dwTimeVal_usec = XOS_HtoN32(BASE_OF_USEC); pingRTT->dwTimeVal_msec = 0; } return; }给我写一个ut测试用例
时间: 2023-06-07 09:07:45 浏览: 105
rtt.rar_Jlink RTT_RTT_jlink_jlink 打印_segger rtt
针对上述代码段,我们可以编写以下 UT 测试用例:
1. 测试用例描述:传入非空的 cookie 指针和合法的 RTT 时间值,验证是否正确设置了 dwTimeVal_usec 和 dwTimeVal_msec 的值。
测试用例代码:
```
void test_getPingRTTCookieS_1() {
PING_RTT_COOKIE_S pingRTT;
pingRTT.dwTimeVal_msec = 50;
pingRTT.dwTimeVal_usec = 0;
void *cookie = &pingRTT;
snprintf(g_szXmsCoreTrace, sizeof(g_szXmsCoreTrace), "dwTimeVal_msec=%d, dwTimeVal_usec=%d", pingRTT.dwTimeVal_msec, pingRTT.dwTimeVal_usec);
getPingRTTCookieS(cookie);
ASSERT_EQ(pingRTT.dwTimeVal_usec, XOS_HtoN32(BASE_OF_USEC));
ASSERT_EQ(pingRTT.dwTimeVal_msec, 0);
}
```
2. 测试用例描述:传入空指针作为 cookie,验证是否返回了正确的值。
测试用例代码:
```
void test_getPingRTTCookieS_2() {
void *cookie = NULL;
getPingRTTCookieS(cookie);
ASSERT_TRUE(true);
}
```
以上是两个可行的 UT 测试用例,可以根据实际需求进一步添加。
阅读全文