/***************************************************
 ** @author   STF 521
 ** @version  0.0.1
 ** @purpose  1:16.1.2, Ensure that the IUT recognizes predefined functions and correctly evaluates them (as specified by Annex C)
 ** @verdict  pass reject
 ***************************************************/

// The following requirement is tested:
// Ensure that integer value of an enum handled correctly

module NegSem_160102_predefined_functions_040 {

    type component GeneralComp {
	}

    type enumerated EDays {
        Monday(-1), Tuesday(1), Wednesday(2), Thursday(3), Friday(3..5) // error
    };

    testcase TC_NegSem_160102_predefined_functions_040() runs on GeneralComp {
        var EDays v_enum := Wednesday;
        int2enum(3,v_enum);  // value already occupied

        if (match(enum2int(v_enum),2)) {
		    setverdict(pass);
        } else {
            setverdict(fail);
        }
	}

	control {
		execute(TC_NegSem_160102_predefined_functions_040());
	}
}