conformance_test/positive_tests added
[deliverable/titan.core.git] / conformance_test / positive_tests / 21_configuration_operations / 2101_connection_operations / 210102_disconnect_and_unmap_operations / NegSem_210102_disconnect_and_unmap_operations_008.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, violation of strong typing rules for local ports in disconnect operations
13 ** @verdict pass reject
14 ***************************************************/
15
16 // The following requirements are tested:
17 // If the type of the component referenced in a connection operation is known (either
18 // when the component reference is a variable or value returned from a function or the
19 // type is defined the runs on, mtc or system clause of the calling function), the
20 // referenced port declaration shall be present in this component type.
21
22 module NegSem_210102_disconnect_and_unmap_operations_008 {
23
24 type port P message {
25 inout integer;
26 } with {extension "internal"}
27
28 type component GeneralComp {
29 port P p;
30 }
31
32 type component GeneralCompEx extends GeneralComp {
33 port P p2;
34 }
35
36 function f_disconnect() runs on GeneralComp {
37 disconnect(self:p, self:p2); // although the actual instance of self contains the p2 port,
38 // it cannot be referenced as the "runs on" clause contains the GeneralComp type and
39 // not GeneralCompEx
40 }
41
42 testcase TC_NegSem_210102_disconnect_and_unmap_operations_008() runs on GeneralCompEx system GeneralComp {
43 connect(self:p, self:p2);
44 f_disconnect();
45 setverdict(pass);
46 }
47
48 control{
49 execute(TC_NegSem_210102_disconnect_and_unmap_operations_008());
50 }
51 }
This page took 0.033044 seconds and 5 git commands to generate.