conformance_test/positive_tests added
[deliverable/titan.core.git] / conformance_test / positive_tests / 19_basic_program_statements / 1907_label_statement / NegSyn_1907_label_statement_002.ttcn
1 /******************************************************************************
2 * Copyright (c) 2000-2016 Ericsson Telecom AB
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/epl-v10.html
7 *
8 * Contributors:
9 * Adrien Kirjak – initial implementation
10 *
11 ** @version 0.0.1
12 ** @purpose 1:19.7, Ensure that the IUT correctly handles label syntax.
13 ** @verdict pass reject
14 *****************************************************************/
15
16 module NegSyn_1907_label_statement_002 {
17
18
19 type record MessageType {
20 integer field1,
21 charstring field2
22 }
23
24 type port loopbackPort message {
25 inout MessageType
26 } with {extension "internal"}
27
28 type component GeneralComp {
29 port loopbackPort messagePort
30 }
31
32 function f_test ( integer p_integer := 0 ) runs on GeneralComp return integer {
33 label L1;
34 return p_integer+1;
35 }
36
37
38 altstep AltSet1() runs on GeneralComp {
39 var integer v_LocalVar := f_test(); // local variable
40
41 label L_wrong; //wrong label on the altstep toplevel
42
43 [] messagePort.receive {
44 label L_A;
45 setverdict(pass);
46 label L_B;
47 }
48
49 }
50
51 testcase TC_NegSyn_1907_label_statement_002 () runs on GeneralComp {
52 var MessageType v_testMessage;
53 timer t_timer;
54
55 v_testMessage:= {
56 field1 := 1,
57 field2 := "test string"
58 }
59
60 connect(self:messagePort,self:messagePort);
61
62 messagePort.send(v_testMessage);
63 t_timer.start( 1.0 );
64 label L1;
65
66 alt {
67 [] AltSet1();
68 [] messagePort.receive {
69 label L2;
70 setverdict(pass);
71 }
72 [] t_timer.timeout {
73 label L3;
74 }
75 }
76
77 label L4;
78 }
79
80 control{
81 execute(TC_NegSyn_1907_label_statement_002());
82 }
83
84 }
This page took 0.033366 seconds and 5 git commands to generate.