Commit fdf5cae4 authored by Matthias Simon's avatar Matthias Simon
Browse files

Add tests for expressions

parent 029a4bd5
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
// @author   TTF23
// @purpose  1:6.5, Ensure qualified enumerated values.
// @verdict  pass reject
module NegSem_0605_expressions_001 {

type component GeneralComp {}

type enumerated E { A(1), B(2) }

testcase TC_NegSem_0605_expressions_001() runs on GeneralComp {
	var e := A;
}

control {
    execute(TC_NegSem_0605_expressions_001());
}

}
+21 −0
Original line number Diff line number Diff line
// @author   TTF23
// @purpose  1:6.5, Ensure automatic type for expressions.
// @verdict  pass accept, ttcn3verdict:pass
module Sem_0605_expressions_001 {

type component GeneralComp {}

testcase TC_Sem_0605_expressions_001() runs on GeneralComp {
	var cond := 1 + 2 <= 3;
	if (cond == true) {
		setverdict(pass);
	} else {
		setverdict(fail);
	}
}

control {
    execute(TC_Sem_0605_expressions_001());
}

}
+24 −0
Original line number Diff line number Diff line
// @author   TTF23
// @purpose  1:6.5, Ensure qualified enumerated values.
// @verdict  pass accept, ttcn3verdict:pass
module Sem_0605_expressions_002 {

type component GeneralComp {}

type enumerated E { A(1), B(2) }
type enumerated F { B(3), C(4) }

testcase TC_Sem_0605_expressions_002() runs on GeneralComp {
	var v := F.B;
	if (enum2int(v) == 3) {
		setverdict(pass);
	} else {
		setverdict(fail);
	}
}

control {
    execute(TC_Sem_0605_expressions_002());
}

}
+21 −0
Original line number Diff line number Diff line
// @author   TTF23
// @purpose  1:6.5, Ensure automatic type for value ranges.
// @verdict  pass accept, ttcn3verdict:pass
module Sem_0605_expressions_003 {

type component GeneralComp {}

testcase TC_Sem_0605_expressions_003() runs on GeneralComp {
	var v := (0.1..!0.2);
	if (match(0.11, v)) {
		setverdict(pass);
	} else {
		setverdict(fail);
	}
}

control {
    execute(TC_Sem_0605_expressions_003());
}

}
+21 −0
Original line number Diff line number Diff line
// @author   TTF23
// @purpose  1:6.5, Ensure infinity bounds are inferred to integer.
// @verdict  pass accept, ttcn3verdict:pass
module Sem_0605_expressions_004 {

type component GeneralComp {}

testcase TC_Sem_0605_expressions_004() runs on GeneralComp {
	var v := (-infinity..infinity);
	if (match(7, v)) {
		setverdict(pass);
	} else {
		setverdict(fail);
	}
}

control {
    execute(TC_Sem_0605_expressions_004());
}

}