Newer
Older
/***************************************************
** @author STF 521
** @version 0.0.1
** @purpose 1:19.3.2, verify that it is possible to use a select union statement with several branches
** @verdict pass reject
***************************************************/
// The following requirement is tested:
// c) No two cases in a select union statement shall have the same caseIdentifier or TypeIdentifier.
module NegSem_190302_select_union_statement_006 {
testcase TC_NegSem_190302_select_union_statement_006() runs on GeneralComp {
var anytype v_any;
v_any.integer := 2;
v_any.charstring := "abc";
v_any.float := 1.2;
select union (v_any) {
case (charstring) {
if(match(v_any.charstring,"abc"))
{setverdict(pass, v_any.charstring);}
} case (integer) {
if(match(v_any.integer,2))
{setverdict(pass, v_any.integer);}
} case (charstring) { // error
if(match(v_any.charstring,"abc"))
{setverdict(fail, v_any.charstring);}
}
case else {
setverdict(fail);
}
}
}
control {
execute(TC_NegSem_190302_select_union_statement_006());