/***************************************************
 ** @author   STF 451
 ** @version  0.0.1
 ** @purpose  1:6.2.13.2, ensure that list subtyping check for record types is properly handled
 ** @verdict  pass accept, ttcn3verdict:pass
 ***************************************************/
module Sem_06021302_ListSubtyping_002 {

 type component GeneralComp {
 }

 type record MyRecord {
  integer f1 optional,
  charstring f2,
  charstring f3
 }

 type MyRecord MyRecordSub1 (
  { f1 := *, f2 := "user", f3 := "password" },
  { f1 := *, f2 := "User", f3 := "Password" }
  ); // a valid subtype, f1 may contain any values


testcase TC_Sem_06021302_ListSubtyping_002() runs on GeneralComp {
 var MyRecordSub1 v_record := { f1 := 8, f2 := "User", f3 := "Password" };

      if ( match(v_record,{ 8, "User", "Password" }) ) {
	    setverdict(pass);
      }
      else {
	    setverdict(fail);
	  }

}

control {
    execute(TC_Sem_06021302_ListSubtyping_002());
}

}
