module testcases { //sample test case with full body, multiple parameters, with modifiers, runs on and system clauses testcase tc_sample2 ( template R3Msg p_radiusAccntReq, out template R3Msg p_radiusAccntRsp ) runs on R3Comp system R3System { var FncRetCode v_ret := e_success; alt { [] r3Port.receive ( m_r3MonitorInd ( p_radiusAccntReq ) ) { v_ret := e_success; } [] r3Port.receive ( m_r3MonitorInd ( e_RadiusAccountingRequest, p_radiusAccntReq ) ) { v_ret := e_success; } [] r3Port.receive ( m_r3MonitorInd ( e_RadiusAccountingRequest, m_radiusAccntReq_any ) ) { } [] a_sample2 (m_r3MonitorInd,m_r3MonitorInd); [] a_sample1 (m_r3MonitorInd); [] a_sample0 (); } } //sample test case skeleton with a single parameter, including a passing mode, with a runs on clause testcase tc_sample1 (in template R3Msg p_radiusAccntReq) runs on R3Comp { } //test tcase skeleton with a single parameter, with a runs on clause and a system clause testcase tc_sample11 (template R3Msg p_radiusAccntReq) runs on R3Comp system R3System { f_sample(); f_sample1(p_radiusAccntReq); f_sample2(p_radiusAccntReq,p_radiusAccntRsp) } //test case skeleton without parameters, with a runs on clause testcase tc_sample () runs on R3Comp { } testcase tc_sample_procedurebased() runs on sampleComponent system systemComponent{ port1.call(s_lookup:{x}) { []port1.getreply(s_accept:{y}) { } } } control{ execute(tc_sample1(template_sample1 := template_sample2)); execute(tc_sample2(template_sample1,template_sample2)); execute(tc_sample()); } }