/***************************************************
 ** @author   STF 487 (updated by STF 521)
 ** @version  0.0.2
 ** @purpose  1:B.1.2.6, Ensure that the IUT correctly handles template matching of superset definition
 ** @verdict  pass accept, ttcn3verdict:fail
 ***************************************************/

module NegSem_B010206_superset_003 {
	type set of integer SoI;

	type SoI MessageType;

	type port loopbackPort message {
		inout MessageType;
	}


	type component GeneralComp {
		port loopbackPort messagePort;
	}

	testcase TC_NegSem_B010206_superset_003() runs on GeneralComp {

		var MessageType v_testMessage;

		template MessageType mw_matchingTemplate := superset(1,10,3);

		v_testMessage := {1};

 messagePort.send(v_testMessage);

    alt {
     [] messagePort.receive(mw_matchingTemplate) { // mismatch
        setverdict(pass);
     }
     [] messagePort.receive {
        setverdict(fail);
     }
    }

	}
	control {
		execute(TC_NegSem_B010206_superset_003());
	}
}
