liulinzhu 2007-6-14 10:13
testcase请教
下面是被测函数:uchar fl_evt_alz(struct [color=darkgreen]TASK_IF_MSG[/color] *[color=blue]rcvmsg[/color])
{
struct [color=darkgreen]SL_IPT_MSG[/color] *[color=blue]slmsg[/color];
uchar ret;
struct [color=darkgreen]CALL_PARA[/color] *[color=blue]rcvmsg2[/color];
[color=blue]slmsg[/color] = (struct [color=darkgreen]SL_IPT_MSG[/color] *)[color=blue]rcvmsg[/color];
ful_port = 0;
ret = 0;
switch([color=blue]rcvmsg[/color]->ifcode){
case [color=red]IF_START_INDC[/color]:
ul_port =[color=blue] slmsg[/color]->port;
以下略
}
针对这个函数如何写呢?主要是请教初始化的部分。对于结构化的部分我还是不太懂。
以下是我写的初始化部分,请大侠修正。
extern uchar uchar fl_evt_alz(struct TASK_IF_MSG *rcvmsg);/* return(ret) */
extern struct ALIAS_PARA ful_my_als[OUT_LINE_CNT+1];
extern uchar ful_port;
void test_fl_evt_alz()
{
struct TASK_IF_MSG *rcvmsg;
struct [color=darkgreen]SL_IPT_MSG[/color] *[color=blue]slmsg;[/color]
rcvmsg=(struct [color=darkgreen]SL_IPT_MSG[/color] * ) malloc(sizeof(struct [color=darkgreen]SL_IPT_MSG[/color] ));
slmsg=rcvmsg;
rcvmsg->ifcode=[color=red]IF_START_INDC[/color];
slmsg->port=1;
以下省略
}
vsfire 2007-8-4 20:24
你先要确定消息的结构,也就是TASK_IF_MSG的成员
然后要知道这些成员可以取哪些值
如果TASK_IF_MSG是系统产生的消息,成员取值的范围就更小。