conformance_test/positive_tests added
[deliverable/titan.core.git] / conformance_test / positive_tests / 21_configuration_operations / 2101_connection_operations / 210102_disconnect_and_unmap_operations / Sem_210102_disconnect_and_unmap_operations_001.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:21.1.2, Ensure that disconnect operation with two parameters works correctly
13 ** @verdict pass accept, ttcn3verdict:pass
14 ***************************************************/
15
16 // The following requirements are tested:
17 // The disconnect ... operations perform the disconnection (of previously connected)
18 // ports of test components...
19
20 module Sem_210102_disconnect_and_unmap_operations_001{
21
22 type port P message {
23 inout integer
24 } with {extension "internal"}
25
26 type component GeneralComp
27 {
28 port P p;
29 }
30
31 function checkConnected(boolean p_stateActive) runs on GeneralComp
32 {
33 if(p.checkstate("Connected") xor not p_stateActive) {
34 setverdict(pass);
35 } else {
36 setverdict(fail);
37 }
38 }
39
40 testcase TC_Sem_210102_disconnect_and_unmap_operations_001() runs on GeneralComp system GeneralComp {
41 // components are created alive so that their connections are not destroyed when behaviour stops
42 var GeneralComp v_ptc1 := GeneralComp.create alive,
43 v_ptc2 := GeneralComp.create alive,
44 v_ptc3 := GeneralComp.create alive;
45
46 connect(v_ptc1:p, v_ptc2:p);
47 connect(v_ptc1:p, v_ptc3:p);
48
49 disconnect(v_ptc1:p, v_ptc2:p);
50
51 // verity that ports are really disconnected
52 v_ptc1.start(checkConnected(true)); // still connectected to v_ptc3:p
53 v_ptc2.start(checkConnected(false)); // no active connection
54 all component.done;
55 }
56 control{
57 execute(TC_Sem_210102_disconnect_and_unmap_operations_001());
58 }
59 }
60
This page took 0.055621 seconds and 5 git commands to generate.